zoukankan      html  css  js  c++  java
  • PHP中RBAC权限管理

    1.RBAC概念和原理

             RBAC:全称叫做Role-Based Access Control,中文翻译叫做基于角色的访问控制。其主要的作用是实现项目的权限控制。

              效果:让不同的管理员,能够访问的页面不一样。比如运营人员 只能看到运营相关模块。财务人员只能看到财务相关模块。

              传统权限管理:

                    RBAC权限管理:

                  RBAC权限管理:

               权限的管理相对规范,角色拥有的权限可以按照一定标准定义好。

               新增管理员,只需要指定角色,即可拥有对应的权限。

     2.数据表设计:

                  基本数据表:管理员表、角色表、权限表

               对应关系:管理员对应一个角色,一个角色对应多个权限。(一个管理员也可以对应多个角色)

               对应关系的维护:

               第一种:三表结构,在管理员表增加角色id字段,在角色表增加权限ids字段,最终三张表。

               第二种:五表结构,新增一张管理员角色关联表,新增一张角色权限关联表。最终五张表。

                   这里以三表结构为例: 

               查询一个管理员拥有的权限:

               先查询管理员表,获取到角色id

               再查询角色表,获取到拥有的权限ids

               最后根据权限ids查询权限表,where id in(1,2,3)

  • 相关阅读:
    Go语言版本的helloworld
    编译Elasticsearch源码
    Intellij IDEA将java源码打成jar包
    搭建Elasticsearch集群常见问题
    棣小天儿的第一个python程序
    Json反序列化Map的key不能是Object
    mac本配置python环境
    Timestamp解析0000-00-00 00:00:00报格式错误
    Spring-Mybatis配置多数据源
    mysql新建数据库时的collation选择(转)
  • 原文地址:https://www.cnblogs.com/shineguang/p/11203650.html
Copyright © 2011-2022 走看看