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.判断某个用户是否拥有某个权限的时候,先判断属于哪个分组,再判断这个分组是否拥有些权限。
    再判断拥有哪种角色,或者拥有哪几种角色,再判断这几种角色是否拥有权限。

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

  • 相关阅读:
    Java59道常见面试题,内附答案
    2020年一个月时间面试字节跳动,面试经历分享(已拿offer)
    阿里总结的《Java成神之路》 PDF 火了,完整版开放下载!
    Github14k堪称神级的Spring Boot手册,从基础入门到实战进阶
    三面阿里(支付宝)Java高开岗,复习两月有幸拿到offer
    Java 最常见的 200+ 面试题:面试必备
    【面试总结】终于拿到了美团offer了,没有辜负了这三个月的努力啊
    阿里P9都赞不绝口的面试宝典!半月看完25大专题,居然斩获阿里P7offer
    Integer是int
    抽象类和接口
  • 原文地址:https://www.cnblogs.com/greatverve/p/1620463.html
Copyright © 2011-2022 走看看