• php后台权限管理


    今天新到一家公司,重新维护升级了之前的权限管理。

    权限管理思路:
    1.三张表(公司项目比较复杂,所以数据表远比这个复杂,这里只实现权限管理,简化一下)
    action表------权限大菜单;
    这个表没有实际意义,但是可以简化前端权限管理的样式,将同一个controller里面的具体操作可以放在一行显示,字段参考:
    id,action_uri,action_name

    do表------具体涉及的操作;
    将所有要进行权限管理的操作放入此表,将会在前端页面权限管理里面分别显示,字段参考:
    id,do_uri,do_name,action_id

    privileges表------用户权限;
    系统中存在的每一个用户都有一条对应的记录,字段参考:
    id,user_id,privileges
    privileges存储为字符串,用*表示高级权限用户具备所有权限,用@表示普通权限用户具备除高级权限的所有权限,
    用do_uri拼接的字符串表示自定义权限用户具备字符串中存在的权限。

    2.用一个单独的方法把高级权限放入数组返回;

    3.用户操作请求过来,先获取用户相关信息,包括权限表里面的权限。
    与操作来源匹配。
    如果获取到的是*,拥有权限直接下一步具体操作;
    如果获取到的是@,看操作来源是否存在与高级权限数组里,如果不存在有权限下一步具体操作,如果存在就不具备权限退出;
    如果获取到的是uri字符串,就将字符串转化为数组,看操作来源是否存在与数组中,如果存在有权限下一步具体操作,如果存在就不具备权限退出;

    4.后台用户权限管理就是对user表和do表修改privileges表。

  • 相关阅读:
    Linux基础-4磁盘管理
    Linux基础-3文本处理
    Linux基础-2文件及目录管理
    Linux基础-1使用命令帮助
    解决Eclipse 添加 Tomcat 中的一些问题
    非关系型数据库 -- redis
    Java 学习笔记 五 -- Jedis
    Java 学习笔记 四 -- DBUtils的使用
    Java 学习笔记 三 -- 数据库连接池 Druid
    Java 学习笔记 二 -- JDBC事务
  • 原文地址:https://www.cnblogs.com/eis13/p/5981058.html
Copyright © 2020-2023  润新知