您的位置:首页 > 其它

【RBAC】打造Web权限控制系统

2016-01-10 00:00 288 查看

引言

权限系统模块对于互联网产品是一个非常重要的功能,可以控制不同的角色合理的访问不同的资源从而达到安全访问的作用

此外本次课程有视频讲解: http://www.imooc.com/learn/799 ,对应演示系统:http://rbac.54php.cn

权限控制模型

ACL

RBAC 基于角色的访问控制



从上图我们可以看出,ACL是用户和权限直接关系的,RBAC则是通过角色间接关联用户和权限的。所以角色是RBAC系统的一个重要属性

Why RBAC

为什么我们选择RBAC模型,原因如下

方便用户分组

方便权限分配和回收

扩展方便,可以满足大部分业务需求

RBAC

框架



图中有5个角标数字,对应的就是RBAC模型重要的5个属性

RBAC关系图
序号关键属性
描述
1用户张三、李四、王五
2角色销售经理、销售、前台
3用户角色关系张三 是 销售经理 、李四 王五 是 销售
4权限添加客户、编辑客户、删除客户,查看客户
5角色权限关系销售 拥有 查看客户的 权
限、销售经理可以 查看/添加/删除/编辑客户的

功能



如上图,一个RBAC权限模块,必然要实现三个功能

用户管理

用户列表

添加用户

编辑用户

设置用户角色

角色管理

角色列表

添加角色

编辑角色

设置角色权限

权限管理

权限列表

新增权限

编辑权限

战果演示

第一张截图有2个浏览器,左边使用超级管理员打开,右边的使用 前台角色郭小威 用户打开

第二张截图 展示的是 为 前台 设置权限

第三张截图展示了可以浏览的页面(图一中有无法浏览提示)







资源

演示代码(请务必先查看readme文件) https://github.com/apanly/rbac

课程视频地址: http://www.imooc.com/learn/799

对应演示系统:http://rbac.54php.cn

原文地址:
【RBAC】打造Web权限控制系统

标签:
权限
角色
用户
控制
rbac
user
role
access
用户管理
权限管理
角色管理

智能推荐

【运维工具】logrotate 日志管理神器

【运维工具】Git代码发布系统

【No.2 Ionic】Android打包

【Composer】实战操作一:使用库

【php】命名空间 和 自动加载的关系
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: