wadise

BlogJava 首页 新随笔 联系 聚合 管理
  22 Posts :: 0 Stories :: 6 Comments :: 0 Trackbacks

1.RBAC引入Role的概念是为了隔离UserPrivilege(Operation+Resource),因为业务中的User是经常变化的,例如当某公司的普通员工都具有查看,删除,编辑公司部门内部的资料时,那么有一天我想使普通员工不具备删除部门内部资料的权限,那么我们就要对每一个普通员工进行删除这个权限,使得管理起来非常不便,引入Role把员工Role指派给普通员工,那么只要在员工Role中删除“删除部门资料”的权限,就可以对所有普通员工生效。

 

2.角色继承用于解决复杂组织结构之间的权限关系。例如:
rbac.JPG

那么部门主管就具有了A,B权限,部门经理就具有了ABC权限,总经理有ABCD权限。

 

3.职责关系分离:避免两个角色间的冲突。

  A. SSD静态职责分离:当角色授给用户时判断是否将冲突的角色给了同一个用户。冲突的角色被定义为一个二元关系,即任何一个用户只能拥有其中的一个。

  B. DSD动态职责分离:角色授给用户时可以把冲突角色授于同一个人,但在一次行为中不能同时扮演两个冲突的角色。

posted on 2005-12-20 11:46 wadise 阅读(311) 评论(0)  编辑  收藏 所属分类: 权限授权验证

只有注册用户登录后才能发表评论。


网站导航: