什么是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元注册并升级会员后,站内所有视频都可查看视频 | 我还不知道什么是RBAC,怎么办?视频 | 我还不知道什么是RBAC,怎么办?

网址:http://www.mano100.cn


最近更新的视频教程视频 | 我还不知道什么是RBAC,怎么办?

最新Redis教程,入门到实战

链接:http://www.mano100.cn/thread-1615-1-1.html

Swoole实战之HttpServer框架

链接:http://www.mano100.cn/thread-1614-1-1.html

SpringCloud Finchley三版本微服务实战

链接:http://www.mano100.cn/thread-214-1-1.html




以上是本文的全部内容,希望对大家的学习有帮助,也希望大家多多支持 php自学中心 

以上是关于什么是RBAC?的主要内容,如果未能解决你的问题,请参考以下文章

什么是RBAC

什么是RBAC

RBAC模型设计

RBAC简介

RBAC权限控制

RBAC从入门到精通