基于角色的访问控制:RBAC模型笔记

权限设计,设计模型分析(DAC,MAC,RBAC,ABAC) 之 RBAC 权限设计,设计模型分析(DAC,MAC,RBAC,ABAC) 之 RBAC:角色的权限控制 阅读详情


         基于角色的访问控制(Role-Based Access Control,RBAC),RBAC认为授权实际就是who,what,how三者之间的关系,即who对what进行how的操作。Who,权限的拥用者或主体(如Principal、User、Group、Role、Actor等等);what,权限针对的对象或资源(Resource、Class);How,具体的权限(Privilege,正向授权与负向授权)。RBAC模型支持最小特权原则、责任分离原则。

        最小特权原则是系统安全中最基本的原则之一。所谓最小特权(Least Privilege),指的是"在完成某种操作时所赋予网络中每个主体(用户或进程)必不可少的特权"。最小特权原则,则是指"应限定网络中每个主体所必须的最小特权,确保可能的事故、错误、网络部件的篡改等原因造成的损失最小"。最小特权原则一方面给予主体"必不可少"的特权,这就保证了所有的主体都能在所赋予的特权之下完成所需要完成的任务或操作;另一方面,它只给予主体"必不可少"的特权,这就限制了每个主体所能进行的操作。


基本模型RBAC0模型

    定义:RBAC0模型由以下描述确定:

U、R、P、S分别表示用户集合、角色集合、许可权集合和会话集合。

PA P×R表示许可权与角色之间多对多的指派关系。

UA U×R表示用户与角色之间多对多的指派关系。

用户:S→U每个会话si到单个用户user(si)的映射函数(常量代表会话的声明周期)。

角色:S→R每个会话si到角色子集roles(si) {r|user(si, r')∈UA}(能随时间改变)的映射函数,会话si有许可权Ur∈roles(si){p|(p,r')∈PA}。

在使用RBAC0模型时,应该要求每个许可权和每个用户至少应该被分配给一个角色。两个角色被分配的许可权完全一样是可能的,但仍是两个完全独立的角色,用户也有类似情况。角色可以适当的被看做是一种语义结构,是访问控制策略形式化的基础。

 

角色分级模型RBAC1 

    定义:RBAC1由以下内容确定

U、R、P、S分别表示用户集合、角色集合、许可权集合和会话集合。

PA P×R表示许可权与角色之间多对多的指派关系。

UA U×R表示用户与角色之间多对多的指派关系。

RH R×R是对R的偏序关系,称为角色等级或角色支配关系,也可用≥符号表示。

用户:S→U每个会话si到单个用户user(si)的映射函数(常量代表会话的声明周期)。

角色:S→R每个会话si到角色子集roles(si) {r|(r'≥r)[user(si,r')∈UA]}(能随时间改变)的映射函数,会话si有许可权Ur∈roles(si){p|(r''≤r)[(p,r'')∈PA]}。 

 

限制模型RBAC2 

        RBAC2模型是在RBAC0模型增加限制后形成的,它与RBAC1并不兼容。RBAC2定义如下: 

定义:除了在RBAC0中增加了一些限制因素外,RBAC2未加改变的来自于RBAC0,这些限制是用于确定RBAC0中各个组件的值是否是可接受的,只有那些可接受的值才是允许的。

        RBAC2中引入的限制可以施加到RBAC0模型中的所有关系和组件上。RBAC2中的一个基本限制时互斥角色的限制,互斥角色是指各自权限互相制约的两个角色。对于这类角色一个用户在某一次活动中只能被分配其中的一个角色,不能同时获得两个角色的使用权。

例如,在审计活动中,一个角色不能同时被指派给会计角色和审计员角色。又如,在公司中,经理和副经理的角色也是互斥的,合同或支票只能由经理签字,不能由副经理签字。在为公司建立的RBAC2模型中,一个用户不能同时兼得经理和副经理两个角色。模型汇总的互斥限制可以支持权责分离原则的实现。

    更一般化而言,互斥限制可以控制在不同的角色组合中用户的成员关系是否是可接受的。例如,一个用户可以既是项目A的程序员,也可以是项目B的测试员和项目C的验收员,但他不能同时成为同一个项目中的这3个角色。RBAC2模型可以对这种情况进行限制。

另一个用户指派限制的例子是一个角色限制其最大成员数,这被称为角色的基数限制。例如,一个单位的最高领导只能为1人,中层干部的数量也是有限的,一旦分配给这些角色的用户数超过了角色基数的限制,就不再接受新配给的用户了。

 

统一模型RBAC3

        RBAC3把RBAC1和RBAC2组合在一起,提供角色的分级和继承的能力。但把这两种概念组合在一起也引起一些新问题。

限制也可以应用于角色等级本身,由于角色间的等级关系满足偏序关系,这种限制对模型而言是本质性的,可能会影响这种偏序关系。例如,附加的限制可能会限制一个给定角色的应有的下级角色的数量。

    两个或多个角色由可能被限制成没有公共的上级角色或下级角色。这些类型的限制在概念角色等级的权力已经被分散化的情况下是有用的,但是安全主管却希望对所有允许这些改变的方法加以限制。 

在限制和角色的等级之间也会产生敏感的相互影响。一个项目成员不允许同时担任程序员与测试员的角色,但项目管理员所处的位置显然是违反了该限制。在某种情况下由高等级的角色违反这种限制是可接受的,但在其他情况下又不允许这种违反现象发生。 

    从严格性的角度来讲,模型的规则不应该是一些情况下不允许而在另一情况下是允许的。类似的情况也会发生在对基数的限制上。假定限制一个用户至多能分配给一个角色,那么对图中的测试员的一个指派能够未被这种限制吗?换句话说,基数限制是不是只能用于直接成员,是否也能应用于继承成员上?

 

    在RBAC中,用户就是一个可以独立访问计算机系统中的数据或者用数据表示的其他资源的主体。角色是指一个组织或任务中的工作或者位置,它代表了一种权利、资格和责任。许可(特权)就是允许对一个或多个客体执行的操作。一个用户可经授权而拥有多个角色,一个角色可由多个用户构成;每个角色可拥有多种许可,每个许可也可授权给多个不同的角色。每个操作可施加于多个客体(受控对象),每个客体也可以接受多个操作。

用户表(USERS)包括用户标识、用户姓名、用户登录密码。用户表是系统中的个体用户集,随用户的添加与删除动态变化。

角色表(ROLES)包括角色标识、角色名称、角色基数、角色可用标识。角色表是系统角色集,由系统管理员定义角色。

客体表(OBJECTS)包括对象标识、对象名称。客体表是系统中所有受控对象的集合。

操作算子表(OPERATIONS)包括操作标识、操作算子名称。系统中所有受控对象的操作算子构成操作算子表。

许可表(PERMISSIONS)包括许可标识、许可名称、受控对象、操作标识。许可表给出了受控对象与操作算子的对应关系。

角色/许可授权表包括角色标识、许可标识。系统管理员通过为角色分配或取消许可管理角色/许可授权表。



    此外,还有ARBAC97模型,DRBAC模型。




基于角色的访问控制(RBAC)介绍 企业环境中的访问控制策略一般有三种:自主型访问控制方法、强制型访问控制方法和基于角色的访问控制方法(RBAC)。其中,自主式太弱,强制式太强,二者工作量大,不便于管理。基于角色的访问控制方法是目前公认的解决大型企业的统一资源访问控制的有效方法。其显著的两大特征是:1.减小授权管理的复杂性,降低管理开销;2.灵活地支持企业的安全策略,并对企业的变化有很大的伸缩性。对角色授权即基于角色的访问控制(RBAC)。NIST(The National Institute of Standards and Technol 阅读详情

相关推荐

深入理解 RBAC:基于角色的访问控制模型

本文深入介绍了RBAC(基于角色的访问控制)权限管理模型。文章首先解释了RBAC的核心概念,即通过角色间接授予用户权限。然后详细阐述了RBAC的四个核心元素(用户、角色、权限、会话)及其相互关系,并分析了RBAC的四种模型变体(RBAC0-RBAC3)及其特点。文章还通过企业管理系统实例说明了RBAC的工作流程,对比了RBAC与其他访问控制模型的差异,并提供了数据库表结构设计示例。最后总结了RBAC的优势(简化管理、支持最小权限原则等)和局限性(角色爆炸、粒度不够细等),建议从RBAC0起步,必要时结合AB

guigenyi的专栏 962

RBAC权限系统分析、设计与实现

目前,使用最普遍的权限管理模型正是RBAC(Role-Based Access Control)模型,这些文章也主要是介绍基于RBAC的权限管理系统,这篇文章从RBAC是什么、如何设计RBAC两部分来介绍。 我所负责的项目涉及到角色权限的问题全部是通过RBAC来实现的,以前只是出于熟练使用的层面,现在学习一下RBAC更深层次的理论知识。 一、RBAC是什么 1、RBAC模型概述 RBAC认为权限授权的过程可以抽象地概括为:Who是否可以对What进行How的访问操作,并对这个逻辑表达式进行判断是否为.

╱/.独﹄無㈡oоΟ的博客 1249

基于角色的访问控制模型(RBAC)

详细介绍了RBAC的访问控制逻辑,以及在实践中的最佳应用实践(以电子政务系统为例),定义了核心、层次和受限制的RBAC模型。

RBAC-基于角色权限的模型

RBAC(Role-Based Access Control),即基于角色的权限控制。通过用户关联角色,角色关联权限的方式间接赋予用户权限。有人会问为什么不直接将权限赋值给用户,中间要增加角色这一环节?其实是可以直接为用户分配权限的,但是这样就少了一层关系,扩展性弱了很多,适合哪些用户数量、角色类型少的平台。一般的系统中,都会存在多个用户拥有相同权限的情况,在分配的时候,就需要分别给不同的用户指定权限,后续权限更新也是个麻烦事儿。

shxguozhq的博客 600

【NLG】(六)文本生成评价指标—— ROUGE原理及代码示例

前奏: 【NLG】(一)文本生成评价指标——BLEU原理及代码示例 【NLG】(二)文本生成评价指标—— METEOR原理及代码示例 【NLG】(三)文本生成评价指标—— ENTROPY原理及代码示例 【NLG】(四)文本生成评价指标—— diversity原理及代码示例 【NLG】(五)文本生成评价指标—— kl_divergence原理及代码示例 1.ROUGE原理 2.优缺点 3.如何算ROUGE ...

凝眸伏笔的博客 1万+

C语言|深入浅出讲解int转换为float全过程(附2017年统考大题案例)

int转换为float类型为什么会发生精度损失? 精度损失的详细过程究竟是什么样的? 什么样情况float会发生精度损失?没有弄懂2017年浮点数统考大题? 这一篇用2017年统考大题案例帮你更深的理解浮点数的存储规则。

DADONGOOO的博客 1万+

RBAC——基于角色权限的模型

学习RBAC——基于角色权限的模型

林隐的博客 10万+

别再为镜面物体检测发愁了!手把手教你用PMD相位偏折术增强2.5D形状图细节(附Python代码)

本文详细解析了PMD相位偏折术在工业视觉中镜面物体检测的应用,通过2.5D成像方案增强形状图细节。文章提供了Python代码示例,介绍了一种计算高效的局部特征增强算法,帮助解决产线环境中的噪声问题,提升缺陷识别准确率。

weixin_29299807的博客 345

什么是基于角色的访问控制 (RBAC)?示例、好处等

根据 Research Triangle Institute 为 NIST 提供的 2010 年报告,RBAC 减少了员工停机时间,改进了供应,并提供了高效的访问控制策略管理。RBAC 提供了细粒度的控制,提供了一种简单、可管理的访问管理方法,与单独分配权限相比,这种方法更不容易出错。在组织内部,可以为不同的角色提供写访问权限,而其他角色可能只提供查看权限。如果它们被删除,访问将受到限制。在这些角色中的每一个中,可能有一个管理层和一个单独的贡献者层,它们在授予每个角色的各个应用程序内具有不同级别的权限。

allway2的博客 1万+

【学习体会】Lighttools8.4.0:矩形阵列光源+条形光源的光学仿真分析

在solidworks中设计了条形光源的基本结构: 由32*6个矩形led组成矩形光源阵列,如下所示 另存为step文件后,导入lighttools中,这里要设置模型的光学属性为:吸收体(机械) 因为我们设计的光源模型是一个整体,我们不能单个面的设置光源,比如说, 这样做的话并不会是这个面设置为光源,而是会把做一个模型都变成一个光源,如下 这显然不是我们想要的 那么,我们就在led位置上放置一个矩形面光源, 这样我们就放置好了一个面光源, 但是问题是,还有191...

LeonJin的博客 1万+

vllm运行过程中出现cuda out of memory

将长序列分解为多个小块,每个块分别处理。这样可以减少单次 Prefill 的计算量和显存占用,从而优化 TTFT 和显存使用效率。考虑使用 CPU 卸载(如 --cpu-offload-gb),将部分缓存卸载到 CPU 内存中,扩展 GPU 的虚拟内存。在大语言模型中,当输入序列很长(例如超过 1024 个 Token)时,Prefill 阶段的计算量会非常大。最后增加了enable-chunked-prefill参数和max_num_batched_tokens解决了问题。参数来进一步优化性能。

盛世芳华 3515

基于角色的访问控制模型(RBAC)——学习笔记

基于角色的访问控制模型(RBAC),英文全称Role-Base Access Control,是20世纪90年代推出的一种访问控制模型,模型通过角色(Role)将用户(User)和访问许可(Permissions)联系起来,实现主题(用户)对客体(各种资源)的访问控制。 RBAC支持公认的安全原则:最小特权原则、职责分离原则和数据抽象原则。 RBAC最被公认的是RBAC96模型族,RBAC...

weixin_30393907的博客 526

遥感目标检测数据集汇总

文章目录1. 光学数据集1.1 DIOR1.2 LEVIR1.3 DOTA1.4 RSOD1.5 NWPU VHR-101.6 VEDAI1.7 COWC1.8 ITCVD1.9 DIUx xView 20181.10 HRSC20161.11 TAS1.12 SZTAKI‐INRIA1.13 UCAS AOD1.14 DLR 3K Vehicle2. SAR2.1 SSDD2.2 SSDD+2....

quanwei的博客 6万+

RBAC权限模型(基于角色的访问控制)

一、前言 权限一句话来理解就是对资源的控制,关于权限可以毫不客气的说几乎每个系统都会包含。只不过不同系统关于权限的应用复杂程序不一样而已,现在我们在用的权限模型基本上都是以RBAC为基础进行扩展的,我们今天就将RBAC权限模型进行下介绍。 二、RBAC模型 RBAC是Role-BasedAccess Control的英文缩写,意思是基于角色的访问控制。RBAC认为权限授权实际上是Who、What、How的问题。 在RBAC模型中,who、what、how构成了访问权限三元组。 也就是“Who对What.

githubcurry,985cs博士在读 2854

C#量化交易的市场数据采集与分析:从0到1构建你的‘数据雷达’——对比5大神器,代码实战全解析!

数据是量化交易的‘氧气’,而好的数据采集与分析是你的‘呼吸机’!本文5大神器+代码实战,总有一款适合你!(本文代码均经过测试,但请根据实际需求调整!

java专栏 727

65页PPT全面学习大型汽车集团企业IT信息化(管理架构、应用架构、技术架构)

订单到交付(OTD):借助ERP、MES、LES、SRM、QMS、APS等系统,实现财务与业务一体化、高级排产、生产过程自动化及供应链协同。- 数据标准化:数据标准化是企业信息化建设基石,包括制定统一业务解释和标准、维护管理流程、发布应用等,涉及数据统一定义、分类、编码等内容。- 大数据应用:汽车行业大数据应用涵盖生产、销售、售后等环节,如设备预见性保养、销量预测、质量预警等,提升企业运营效率和决策能力。- 策略明晰:明确C2M管理矩阵,包括供应商、采购、物流、制造、销售、财务等环节的策略。

cdfunlove的博客 1049

RBAC-基于角色的访问控制模型

摘要:RBAC是一种通过角色分配权限的访问控制模型,包含用户、角色和权限三个核心要素,简化了权限管理。其实现步骤包括:1)设计用户-角色-权限关联的数据模型;2)角色分配与权限配置;3)操作时的权限校验。典型RBAC系统包含用户表、角色表、权限表及关联表,通过角色作为中介实现权限控制。系统采用多级权限校验(页面访问、元素操作),结合AOP技术实现接口权限控制,并通过动态加载优化权限管理。这种模型具有细粒度控制、灵活扩展和安全性的特点,适用于需要分级权限管理的系统。

码上悦读 1642

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

RBAC:基于角色的权限访问控制

文章目录RBAC模型概述RBAC的组成RBAC支持的安全原则RBAC的优缺点RBAC的3种模型 RBAC模型概述 RBAC模型(Role-Based Access Control:基于角色的访问控制)模型是20世纪90年代研究出来的一种新模型,但其实在20世纪70年代的多用户计算时期,这种思想就已经被提出来,直到20世纪90年代中后期,RBAC才在研究团体中得到一些重视,并先后提出了许多类型的RBAC模型。其中以美国George Mason大学信息安全技术实验室(LIST)提出的RBAC96模型最具有代表,

看,未来的博客 3666

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

RBAC 基于角色的访问控制模型详解与实践指南

RBAC(基于角色的访问控制)是一种权限管理模型,通过角色关联用户和权限,实现权限管理的解耦。RBAC模型分为多个层级:RBAC0(基础模型)、RBAC1(支持角色继承)、RBAC2(增加约束条件)和RBAC3(完整模型)。核心要素包括用户、角色、权限和会话,其中角色作为中间层简化权限分配。系统设计需考虑数据库表结构(用户表、角色表、权限表及其关联表)以及约束条件(如互斥角色、基数约束等)。RBAC模型广泛应用于企业系统,提供灵活且安全的权限控制方案。

学习Java技术栈 1989

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

基于角色的权限访问控制(RBAC)

基于角色的权限访问控制(RBAC)RBAC模型什么是RBAC基于RBAC的设计思路表结构分析举个栗子RBAC的优点 RBAC模型 什么是RBAC RBAC(全称:Role-Based Access Control)基于角色的权限访问控制,作为传统访问控制(自主访问,强制访 问)的有前景的代替受到广泛的关注。在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些 角色的权限。这就极大地...

of chen的博客 3761

RBAC——基于角色的访问控制

在现代信息系统中,随着功能的扩展和用户数量的增加,权限管理变得越来越复杂。传统的基于用户的权限管理方式难以应对大规模系统的需求,因此引入了基于角色的访问控制(Role-Based Access Control,RBAC)模型。RBAC通过角色来分配权限,简化了权限管理复杂度,提升了系统的安全性。

2302_77758423的博客 2015

基于角色的访问控制(RBAC)

基于角色的访问控制(RBAC) 注:该博客参考 尚硅谷老师,仅供个人学习使用,转载请标明作者和此段文字

吃糖不加牛奶的博客 2585

【安全建设】深入解析基于角色的访问控制(RBAC)模型

基于角色的访问控制(Role-Based Access Control,简称RBAC)是一种广泛应用于信息系统权限管理的模型。其核心思想是通过角色这一中间层来间接赋予用户权限,从而简化权限管理流程。RBAC模型将权限控制抽象为一个逻辑判断过程:确定"谁(Who)可以对什么资源(What)进行何种操作(How)",并验证该逻辑表达式是否为真。这个三元组构成了权限管理的基础框架。

KP_0x01的博客 1820

RBAC 基于角色的权限访问控制

在20世纪90年代期间,大量专家学者和研究单位对RBAC(Role-Based Access Control)的概念进行了深入研究,先后提出了许多类型的RBAC模型,其中以美国George Mason大学信息安全技术实验室(LIST)提出的RBAC96模型最具系统性,并得到普遍的公认。 传统的权限分配的方式是将用户与权限绑定,也就是直接将权限绑定到用户身上,例如之前盛行的ACL模型...

JunChow 1318
上一篇: oracle id自增笔记
下一篇: spring hibernate 声明式事务配置笔记
大鹏的NLP博客
博客等级 码龄16年 375粉丝 351原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值