锁定老帖子 主题:使用AOP做权限控制
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (8)
|
|
---|---|
作者 | 正文 |
发表时间:2011-06-08
我的想法是在Struts2里用拦截器来实现,比如通过对需要权限验证的Action加验证拦截器,具体做法是做个default包的extend包,里面加权限验证拦截器,然后需要权限验证的Actionextend这个包。
对于基于Spring的,也可以通过AOP的方式,对需要验证的Action加特性描述,并通过关键字拦截做相应的处理。 对于一般的Action,还可以用父类继承的方式,在父类的初始化方法里进行验证并设置权限标识,在Action的执行方法里访问权限标识并做相应处理,这个方法对类的侵入性就比较强了。 |
|
返回顶楼 | |
发表时间:2011-06-08
虽然是植入,感觉还是没有用配置文件这样的方式来配置权限好。
|
|
返回顶楼 | |
发表时间:2011-06-09
做了个大概的介绍,但是类似于功能点权限和数据权限没有涉及,不够深入吧
|
|
返回顶楼 | |
发表时间:2011-06-09
白糖_ 写道 年初做的一个权限拦截大概是这样的:
页面请求-->spring aop-(没有权限抛出异常)->异常拦截器-->错误页面 上面这种方式最大的问题是抛出异常会消耗很大的开支,所以我感觉用拦截器已经足够了: 页面请求-->权限拦截器-(没有权限)->错误页面 哈哈 很像我当初的“实验室产品”的处理方法 |
|
返回顶楼 | |
发表时间:2011-06-18
之前使用filter对请求的url做权限检查,后来换作拦截器,功能大致上一样,但是觉得filter更灵活。
现在的问题是,如果在某一个功能/页面要对不同的用户做权限管理,比如用户A可以浏览该页面全部内容,而用户B只能浏览一部分,这个应该怎么解决? |
|
返回顶楼 | |
发表时间:2011-06-18
功能权限好处理,上面大部分说的都是功能权限, 业务权限不好抽象处理,差不多都是在具体代码中控制 |
|
返回顶楼 | |
发表时间:2011-06-20
wangyu1221 写道 之前使用filter对请求的url做权限检查,后来换作拦截器,功能大致上一样,但是觉得filter更灵活。
现在的问题是,如果在某一个功能/页面要对不同的用户做权限管理,比如用户A可以浏览该页面全部内容,而用户B只能浏览一部分,这个应该怎么解决? 可以给每一个需要控制部分定义一个权限code,用户具有这个权限code就显示(或禁用)。在用户登录的时候,默认读取用户所具有的权限code(可以是DIV的ID), 那么他无论进入哪个页面,咱们都知道哪些有权限哪些没有。 |
|
返回顶楼 | |