论坛首页 Java企业应用论坛

系统权限设计

浏览 3281 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-09-05   最后修改:2012-09-05
主体对象:

1.用户

2.部门
3.分组
4.角色
5.权限
6.资源

对象之间的关系:
1.站在用户的角度出发:
    一个用户有一个或多个直接领导,也可以有一个或多个下属
    一个用户属于一个部门或者多个部门
    一个用户属于一个分组或多个分组
    一个用户属于一个角色或多个角色组
    一个用户也可以直接赋予一个或多个权限

2.站在部门的角度出发:
    一个部门可以有一个或多个直接上级部门,也可以有一个或多个下属部门
    一个部门可以拥有一个或多个员工(用户)
    一个部门只能拥有一个角色组

3.站在分组的角度出发:
    一个 分组 可以拥有一个或多个员工(用户)
    一个 分组 只能拥有一个角色组
    部门与 分组 之间没有直接关系

4.站在角色的角度出发:
    一个角色可以有1个或多个父角色,也可以有1个或多子角色
    一个角色可以属于1个或多个用户
    一个角色可以属于1个或多个分组
    一个角色可以属于1个或多个部门
    一个角色可以有1个或多个权限

5.站在权限的角度出发:
    一个权限可以有1个或多个父权限,也可以有1个或多子权限
    一个权限可以属于一个或多个用户
    一个权限可以属于一个或多个角色
    一个权限可以有一个或多个资源

6.站在资源的角度出发:
    一个资源可以属于1个或多个权限
    资源之间没有关系

权限冲突问题:
一个用户的权限可能来自于:
1.直接赋予的权限
2.所属角色的权限
3.所属部门的部门角色权限
4.所属分组的分组角色权限
带来的问题:
统一这些来自于不同渠道的的权限将是一个很大的技巧
   发表时间:2012-09-05  
搜索关键字:RBAC
0 请登录后投票
   发表时间:2012-09-14  
楼上正解,这么多文字不如看RBAC的UML图来得痛快
0 请登录后投票
   发表时间:2013-08-01  
权限系统开发资料,可以参考一下
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics