关于用户,用户组,角色和权限

来源:互联网 发布:开发者头条 mac 编辑:程序博客网 时间:2024/05/12 00:57

1 一个用户只属于一个用户组
2 一个角色包含多个权限,
3 一个用户自身(非继承)可以有多个角色,也可以有多个权限
4 一个用户组可以有多个角色,也可以有多个权限
5 一个权限也可以属于多个角色。

6 一个用户的角色和权限来自两部分,一部分继承于所有父用户组的角色和权限,另一部分来自特别为其分配的角色和权限
7 一个用户组可以排除(exclude)一个角色, 而一旦在其子用户组或者在某个用户身上加入(include)这个角色, 那这个用户或者用户组将重拾这个角色
8 一个用户或用户组可以拒绝(disallow)一个权限, 一旦拒绝以后, 不管在什么地方再允许(allow)这个权限都于事无补
9 管理员可以做任何事情, 不受任何约束

对应的例子:
1 比如张三(用户)唯一属于A办公室(子用户组),A办公室位于一楼(父用户组)

2 产品经理(角色) 可以 设定产品开发计划(权限), 跟踪产品生产(权限), 调配工作人员(权限), 控制装配质量(权限), 当然还可以开办公室的门(权限), 喝开水(权限)
   销售经理(角色) 可以 设定销售计划(权限), 跟踪产品售后服务(权限), 调配销售人员(权限), 当然也可以开办公室的门(权限), 喝开水(权限), 抽烟(权限)
   办公人员(角色) 可以使用打印机(权限), 使用电话(权限), 喝开水(权限)

3 张三在家是老爸(角色), 在公司是产品经理(角色), 在家可以看电视(权限, 不属于老爸角色的权限),在公司还可以抽烟(权限, 不属于产品经理角色的权限)

4 一楼(父用户组)被赋予办公人员的角色, 加上一个特别权限, 可以喝茶(权限)

5 喝开水的权限即可以属于产品经理,也可以属于销售经理(角色)和办公人员(角色)

6 张三的角色和权限来自两部分,
一部分继承自由所有父用户组的角色和权限,也就是一楼(父用户组)的办公人员的角色, 和喝茶(权限) 
另一部分来自特别为其分配的角色和权限, 比如说 在家可以看电视(权限, 不属于老爸角色的权限),在公司还可以抽烟(权限, 不属于产品经理角色的权限)

7 一楼(父用户组)被赋予办公人员的角色,但A办公室(子用户组)排除了(exclude)办公人员的角色, 这样在A办公室(子用户组)的张三就没有办公人员的角色了,现在单独给张三加入(include)办公人员的角色, 那张三将重拾这个角色

8 老总规定一楼(父用户组)不允许喝咖啡(disallow权限), 这样就算是张三或者A办公室原来有喝咖啡的权限的, 此时也不能喝了.

9 老总把办公室移到一楼去了, 天天喝咖啡(一楼disallow的权限), 还是当老大, 没人敢说他

原创粉丝点击