锁定老帖子 主题:RailsGACL手册(介绍)
该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2006-10-23
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-10-23
明天晚上 补全
多谢支持 |
|
返回顶楼 | |
发表时间:2006-10-23
不错,加油
|
|
返回顶楼 | |
发表时间:2006-10-24
看了你这个文档(为什么是个图片呢?)我现在理解那个GACL是什么了。
我个人一直使用ActiveRBAC插件管理权限。ActiveRBAC实现了role, role继承,role group, 静态permission。不过它的permission只是个抽象的名字,具体的权限检查逻辑得自己写,这恰恰是我喜欢的一个特点。因为我之前说了权限是非常多样的业务逻辑,需要定制。而另外一个比较流行的Rails权限插件User engine就把权限做死到只能检查action, 一般也够用,但是不够灵活。 这对应到文档中就是你说的权限控制对象,现在尚不清楚你打算如何创建和管理这个对象。希望对你有所启发。 |
|
返回顶楼 | |
发表时间:2006-10-24
这个GACL完全和windows 2000/xp/2003的本地帐户访问权限一样的处理逻辑.
windows的权限管理中,系统中的很多对象都具有这样的权限设置。比如文件,文件夹是最为常用的权限管理的地方。按你这个GACL的说法就是每一个受限访问对象都具有一个GACL对象(姑且这样叫吧)。这个GACL对象首先继承自系统的GACL,访问对象如果需要独立的受限访问权限,就需要单独设置GACL对象。 那么你的RailsGACL能够提供给使用RailsGACL的系统做这样的单独的GACL控制吗? 你例子中提到的是版面访问,那么比如这样的需求,我的博客上有篇草稿,需要几个好友帮助修改下.那么我首先需要对这篇草稿针对这几个好友,设置读权限,回复权限,甚至修改权限.这样的需求,怎么能够在尽量不破坏原先系统的结构上,加入RailsGACL的控制呢? |
|
返回顶楼 | |
发表时间:2006-10-24
说到权限控制,不是一般的复杂。想起来就头疼。
现在的权限管理框架,也仅能实现粗粒度的控制,控制到菜单、action一级。 举个例子,用户具有ListAction的访问权限,但列表中的数据对他来讲, 有一部分是只能查阅的,有一部分是只能查阅和修改的,有一部分是查阅、修改、删除都能做的。那么怎么来控制呢? 具体到一个UpdateAction中,对于某些ID的数据,当前用户是可以执行update操作的。但对于某些数据,是不可以执行update的。虽然用户具有updateaction的操作权限,但具体到某一条记录,另当别论了。 在政务/OA类系统中,还有一个常用的授权操作,这对权限管理也是一个很大的挑战。 另外,对权限控制的特殊要求还有,仅允许某个用户,使用某个IP,在某一个时间段内才能对某些数据进行操作。这样变态的需求,任什么权限管理框架,也无可奈何了吧? |
|
返回顶楼 | |
发表时间:2006-10-24
together 写道 说到权限控制,不是一般的复杂。想起来就头疼。
现在的权限管理框架,也仅能实现粗粒度的控制,控制到菜单、action一级。 举个例子,用户具有ListAction的访问权限,但列表中的数据对他来讲, 有一部分是只能查阅的,有一部分是只能查阅和修改的,有一部分是查阅、修改、删除都能做的。那么怎么来控制呢? 具体到一个UpdateAction中,对于某些ID的数据,当前用户是可以执行update操作的。但对于某些数据,是不可以执行update的。虽然用户具有updateaction的操作权限,但具体到某一条记录,另当别论了。 在政务/OA类系统中,还有一个常用的授权操作,这对权限管理也是一个很大的挑战。 另外,对权限控制的特殊要求还有,仅允许某个用户,使用某个IP,在某一个时间段内才能对某些数据进行操作。这样变态的需求,任什么权限管理框架,也无可奈何了吧? 普通的权限控制做到Action一级也足够了,复杂的权限控制无处不在,这是随着业务需求而变化,目前好像市面上还没有一款像样的且比较通用的权限管理系统 |
|
返回顶楼 | |
发表时间:2006-10-24
谢谢 cookoo , 图片是因为我 用 HTML 排的版,移到论坛里面 就需要再排版,所以 就用图片了,以后会加到 程序包里面的 :)
“如何创建和管理权限控制对象” 今天晚上回去我继续写完 大家就可以看到了 我自认技术还不纯属,也不是科班出身,所以关于一些理论的东西只是一知半解,还请各位高手谅解,多多指教 |
|
返回顶楼 | |
发表时间:2006-10-24
jack 写道 这个GACL完全和windows 2000/xp/2003的本地帐户访问权限一样的处理逻辑.
windows的权限管理中,系统中的很多对象都具有这样的权限设置。比如文件,文件夹是最为常用的权限管理的地方。按你这个GACL的说法就是每一个受限访问对象都具有一个GACL对象(姑且这样叫吧)。这个GACL对象首先继承自系统的GACL,访问对象如果需要独立的受限访问权限,就需要单独设置GACL对象。 那么你的RailsGACL能够提供给使用RailsGACL的系统做这样的单独的GACL控制吗? RailsGACL 能够提供给使用 RailsGACL 的系统做单独的 ACL(后文中将会提到)控制。 引用 你例子中提到的是版面访问,那么比如这样的需求,我的博客上有篇草稿,需要几个好友帮助修改下.那么我首先需要对这篇草稿针对这几个好友,设置读权限,回复权限,甚至修改权限.这样的需求,怎么能够在尽量不破坏原先系统的结构上,加入RailsGACL的控制呢?
不破坏原先系统的结构 我想是做不到吧? 有能做到的吗? 或者我不是很理解你的意思。 |
|
返回顶楼 | |
发表时间:2006-10-24
together 写道 另外,对权限控制的特殊要求还有,仅允许某个用户,使用某个IP,在某一个时间段内才能对某些数据进行操作。这样变态的需求,任什么权限管理框架,也无可奈何了吧?
这个需求刚好在 RailsGACL 中可以进行控制,而且还算完美。 具体用法后文会提到:) |
|
返回顶楼 | |