PHP中RBAC权限管理

1.RBAC概念和原理spa

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

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

          传统权限管理:3d

                RBAC权限管理:blog

              RBAC权限管理:权限控制

           权限的管理相对规范,角色拥有的权限能够按照必定标准定义好。class

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

 2.数据表设计:sed

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

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

           对应关系的维护:

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

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

               这里以三表结构为例: 

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

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

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

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

相关文章
相关标签/搜索