什么是RBAC?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是RBAC?相关的知识,希望对你有一定的参考价值。
参考技术A 什么是RBAC?全称 :role-based access control 基于角色的权限访问控制
作用 :实现访问控制
RBAC模型概括
RBAC权限授权的过程可以概括为:W是否可以对Z进行H的访问操作,并对这个逻辑表达式进行判断是否为true的过程,也是将权限问题转换为Z、H的问题,W、Z、H构成了访问权限三元组。
权限与角色相关联,用户通过称为适当角色的成员而得到这些角色的权限,极大的简化了权限的管理。
RBAC的组成
3个基础组成部分
- 用户
- 角色
- 权限
RBAC通过定义角色的权限,并且对用户授予某个角色来控制用户的权限,从而实现了用户和权限的逻辑分离,方便了权限的管理
1. user(用户) :每个用户都有不同且唯一的ID,用来进行识别,并被授予不同的角色
2. role(角色) :不同的角色具有不同的权限
3. jurisdiction(权限) :访问权限
关系 :
- 用户 --->角色的映射:用户和角色之间的映射关系
- 角色 --->权限的映射:角色和权限之间的映射关系
例如:
用户的角色不同,看到的权限也就有所不同
RBAC的安全原则
- 最小权限原则 :将角色配置成其完成所需的最小权限集合
- 责任分离原则 :通过调用相互独立且互斥的角色来完成敏感任,例如:记账员和财务管理员共同参与过账操作
- 数据抽象原则 :借助于抽象许可权这样的概念实现,例如:在账目管理活动中,可以使用信用,借方等抽象许可权,而不是使用典型的读、写、执行权限
RBAC的优缺点
优点:
1. 便于授权管理
2. 便于角色的划分
3. 便于赋予最小权限的原则
4. 便于职责的分离
5. 便于客体分类
缺点 :
- 没有提供操作顺序的控制机制,这一缺陷使RBAC模型很难适应那些对操作顺序有严格要求的系统
RBAC的3种模型
1. RBAC0 :最简单、最原始的实现方式,也是其他RBAC模型的基础
在该模型中,用户和角色之间可以是多对多的关系,一个用户在不同场景下是可以有不同的角色。
2. RBAC1 :基于RBAC0模型,引入了角色间的继承关系,角色上有了上下级的区别
3. RBAC2 :基于RBAC0模型的基础上,进行了角色的访问控制
视频 | 我还不知道什么是RBAC,怎么办?
每天5个教程,免费分享
1 PHP消息队列实现及应用
2 RBAC打造通用web管理权限
3 PHPExcel探索之旅
4 与mysql的零距离接触 视频教程
5 LVS负载均衡视频讲解
视频教程不是给你收藏的,希望对提升你的学习技能有些许帮助吧!
码农网IT技术教程
码农网每天都会更新教程,158元注册并升级会员后,站内所有视频都可查看
网址:http://www.mano100.cn
最近更新的视频教程
1 最新Redis教程,入门到实战
链接:http://www.mano100.cn/thread-1615-1-1.html
2 Swoole实战之HttpServer框架
链接:http://www.mano100.cn/thread-1614-1-1.html
3 SpringCloud Finchley三版本微服务实战
链接:http://www.mano100.cn/thread-214-1-1.html
以上是本文的全部内容,希望对大家的学习有帮助,也希望大家多多支持 php自学中心
以上是关于什么是RBAC?的主要内容,如果未能解决你的问题,请参考以下文章