锁定老帖子 主题:关于权限模块设计的一点思考
精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (3)
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-28
已经建立了 user - role - permission 的关联规则,可以实现到url的控制; 问题产生,这样就要依赖url,而且可能会出现同一个url处理类中会包含处理多个业务的方法,这样就不能实现严格控制了,而且可能产生混乱,这是问题一; 问题二,如果我想权限控制粒度再细一点,比如能够控制到每个页面的每个按钮(操作),这样又该符合设计呢? 权限的控制问题应该在大部分的web程序中都会使用到的吧, 还请诸位不吝指点几句 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-10-28
url怎么就控制不了呢?DispatchACtion或multiController怎么不成呢?
|
|
返回顶楼 | |
发表时间:2008-10-28
问题2可以参考这里:
http://blog.csdn.net/snow_fox_yaya/archive/2007/07/29/1715869.aspx 基于webwork和过滤器实现无代码侵入的原子级界面权限 |
|
返回顶楼 | |
发表时间:2008-10-28
看看spring security, 它都给你解决了。
虽然有点繁琐。 |
|
返回顶楼 | |
发表时间:2008-10-28
将权限细分到对操作(method),资源上的控制,用单独的interceptor来处理。
|
|
返回顶楼 | |
发表时间:2008-10-29
如果没有使用第三方的MVC框架,则可以让每一个Action方法实现一个action或者validable的接口,实现接口中一个isPermission()的方法,然后再其中实现你的权限验证.如果controller不是简单的pojo,那只能考虑采用AOP将验证方法插到action方法代码之前进行验证了.
我们现在的做法是采用scope+type字段来判断一种Permission,其中scope代表URL,type可能为url也可能为action.这样同时也定义了权限的划分,方便权限分配时候的操作.其实更好的方法是将所有的permission都作为Action处理,这个等有时间在慢慢细说 |
|
返回顶楼 | |
发表时间:2008-10-29
shiren1118 写道 url怎么就控制不了呢?DispatchACtion或multiController怎么不成呢?
能具体说一下是怎样实现的么 |
|
返回顶楼 | |
发表时间:2008-10-29
ronghao 写道 问题2可以参考这里:
http://blog.csdn.net/snow_fox_yaya/archive/2007/07/29/1715869.aspx 基于webwork和过滤器实现无代码侵入的原子级界面权限 多谢,看了这个, 明白了一些东东。。。 |
|
返回顶楼 | |
发表时间:2008-10-29
jander 写道 看看spring security, 它都给你解决了。
虽然有点繁琐。 不是有点繁琐,是非常繁琐,感觉太庞大了; 其实在解决方法上,我在进行spring security / jsecurity 之间的抉择, 前者过于庞大繁琐,后者刚刚加入apache,好多东西都没完善呢,当前文档、demo相当缺乏; |
|
返回顶楼 | |
发表时间:2008-10-29
Fly_m 写道 将权限细分到对操作(method),资源上的控制,用单独的interceptor来处理。
多谢,可否说得细一点呢 |
|
返回顶楼 | |