关于rbac权限系统的设计问题

09-02-22 edwarzero
请教大家一下,本人要实现rbac1中的角色的多重继承,现在碰到的问题时,如何维护角色继承中的偏序的关系

比如我创建了角色A,B,C,D,E

A继承B,C

D继承A,E

这时我要修改C的继承关系,在列出的角色列表中不能再出现B,A,D,E的角色了

我的想法是设计一张level表进行维护,不过就是level表该如何维护角色的等级了,没有头绪

望大家不惜赐教~~~谢谢~~

[该贴被admin于2009-02-22 19:57修改过]

    

1
edwarzero
2009-02-22 18:37
顶顶,问题补充:在角色继承的时候,我是考虑尽量不要递归更改角色的level,比如当根节点要继承一个新建的角色时,就要递归将从这个跟节点开始的角色level降一级,不知道大家有什么好办法!!谢谢

banq
2009-02-24 12:15
从树形结构数据这个角度去考虑,参考本站 树形结构 的标签

freebox
2009-02-24 19:00
这里的继承应该是并集的意思,不是对象继承。我感觉这不是树结构的问题,A继承B和C说明A拥有了B和C所拥有的权限,那更新A的时候把权限重新给一下就好了,我感觉您是直接把用户和权限(可能是您这里说的角色)对应起来了,如果独立出一个权限对象,让角色和权限对应,用户和角色对应,感觉更直观点,但不知是否适合您的系统。

猜你喜欢