zoukankan      html  css  js  c++  java
  • 对用户权限设计的思考

    1.权限表,专门保存权限编码,权限类别,权限名称,次序。
    编码是唯一标识
    权限类别,把权限归类,比如办公审批属于一大类,里面有小类,比如加班审批,请假审批。
    权限次序,多个权限归类到一个大类的时候,可能需要排序。

    2.权限模型表,专门保存权限对应的页面,图标,次序,目标
    对应的页面,比如点击二级菜单跳转到某个Default.aspx?PID=1页面
    图标,菜单对应的显示图片。
    次序,在一级菜单下显示二级菜单时,控制次序。
    目标,控制在哪个页面打开,比如_blank或者_top

    3.权限分配表,专门保存某个用户拥有哪些权限,用户编号,权限编号
    以此来判断用户是否拥有某种权限。
    当使用分组与角色的时候,权限分配到分组或者角色,再关联到用户。

    4.用户分组,保存某一分组拥有的权限值。用户组编码,用户组名称,对应权限值。
    比如
      group001     版主     role001
      group001     版主     role002
    为某一分组设置权限值,然后关联分组下的用户,该分组的用户就都拥有这一类权限。
    这里应该分开,一个分组表,专门保存分组编码,分组名称。
    一个分组与权限关联表,保存分组编码,权限值。一对多关系。

    5.角色表,专门用户保存建立的权限角色,角色编码,角色名称,次序。
    当需要单独为某个人,或者某几个人设置权限的时候,需要建立角色

    6.角色与用户关联表,用户ID,角色ID
    新建角色的时候,如果关联了某个用户,就在此表中增加一条记录。

    7.角色在操作上跟分组是一致的,分组是需要关联权限之外的,比如:
    市场部,开发部,人事部,这是分组,在部门管理的时候,可以设置某个员工属于哪个部门,即哪个分组。
    角色只是用来控制权限的,新建了角色,也是新建了一个分组,只是这里不涉及其他,只是来控制权限。

    8.判断某个用户是否拥有某个权限的时候,先判断属于哪个分组,再判断这个分组是否拥有些权限。
    再判断拥有哪种角色,或者拥有哪几种角色,再判断这几种角色是否拥有权限。

    今天先思考到这里,这是我的不成熟思考,谁有通用简明的方法请不吝赐教。

  • 相关阅读:
    Codeforces 220C
    Codeforces 697D
    HDU 4417
    Codeforces 396C
    Codeforces 246C
    HDU 6333
    HDU 3389
    总结:树上启发式合并
    HDU 6319
    Codeforces 1009G
  • 原文地址:https://www.cnblogs.com/greatverve/p/1620463.html
Copyright © 2011-2022 走看看