星战时空·网游活动中心

什么是基于角色的访问控制 (RBAC)?

作者

Gregg Lindemulder

Staff Writer

IBM Think

Matt Kosinski

Writer

什么是基于角色的访问控制 (RBAC)?

基于角色的访问控制 (RBAC) 是一种根据用户的预定义角色,授权最终用户访问系统、应用程序和数据的模型。例如,安全分析师可以配置防火墙,但无法查看客户数据,而销售代表可以查看客户帐户,但不能更改防火墙设置。

在 RBAC 系统中,管理员为每个用户分配一个或多个角色。每个新角色都代表了用户的一组权限或特权。

财务角色可能授权用户进行采购、运行 forecasting 软件或授予供应链系统访问权限。人力资源角色可能授权用户查看人事档案并管理员工福利系统。

拥有众多员工的大型组织通常使用 RBAC 来简化访问管理并维护数字资源的信息安全。一些企业还使用 RBAC 授予实物资产的安全许可,例如建筑物、办公室和数据中心的电子锁。

通过限制用户访问其角色所需资源,RBAC 可以帮助防御恶意内部人员、疏忽的员工和外部威胁行为者。

Think 时事通讯

您的团队能否及时捕获下一个零日?

加入安全领导者的行列,订阅 Think 时事通讯,获取有关 AI、网络安全、数据和自动化的精选资讯。快速访问专家教程和阅读解释器,我们会将这些内容直接发送到您的收件箱。请参阅 IBM 隐私声明。

您的订阅将以英语提供。每份时事通讯都包含取消订阅链接。您可以在此处管理订阅或取消订阅。更多相关信息,请参阅我们的 IBM 隐私声明。

https://www.ibm.com/cn-zh/privacy

RBAC 为何重要?

通过基于角色的访问控制系统,组织可以采用细粒度方法进行身份和访问管理 (IAM),同时简化授权流程和访问控制策略。具体而言,RBAC 可以帮助组织:

更有效地分配权限保持合规性保护敏感数据

更有效地分配权限

RBAC 无需为每个用户提供定制的用户权限集。相反,定义的 RBAC 角色确定访问权限。这一流程使组织更容易办理员工入职或离职、更新工作职能和转变业务运营。

RBAC 的优势还包括能够快速添加承包商、供应商和其他第三方用户的访问权限。例如,联合营销角色分配可能会向外部合作伙伴授予产品相关数据库的应用程序编程接口 (API) 访问权限。这样既可以让用户访问需要的信息,还能保证公司的机密资源不会被泄露。

保持合规性

实施 RBAC 还有助于企业遵守数据保护法规,例如涵盖金融服务和医疗保健组织的授权。RBAC 可以让监管机构了解谁在何时以何种方式对敏感信息进行了访问或修改。

保护敏感数据

RBAC 政策通过执行最小特权原则 (PoLP),帮助解决网络安全漏洞。根据 PoLP,用户角色授予完成任务或作业所需的最低级别权限。例如,初级开发人员可能有权处理应用程序的源代码,但未经主管批准不得提交更改。

通过限制敏感数据的访问权限,RBAC 有助于防止意外数据丢失和故意数据泄露。具体来说,RBAC 可以限制横向移动,即黑客使用初始网络访问媒介逐渐扩大其在系统中的覆盖范围。

根据 X-Force Threat Intelligence Index,有效账户滥用( 黑客 接管合法用户的账户并利用其特权造成损害的行为)是最常见的网络攻击媒介之一。RBAC 可以从一开始就限制用户账户可以访问的内容,从而减轻黑客可能对该账户造成的损害。

同样, 内部威胁 是数据泄露代价最昂贵的原因之一。根据 数据泄露成本报告, 恶意内部人员造成的泄露平均成本为 492 万美元,高于 482 万美元的总体平均泄露成本。

通过限制用户权限,RBAC 加大了员工因恶意或疏忽滥用其访问权限损害组织的难度。

随着高级人工智能 (AI) 的使用日益增加,谨慎限制系统访问将变得更加重要。当用户未经许可向生成式 AI 工具提供机密或敏感信息时,可能会出现问题,而且几乎没有防护措施。IBM 商业价值研究院的一项研究发现,当前只有 24% 的生成式 AI 项目具备用于保障计划的组件。

RBAC 如何工作

在 RBAC 系统中,组织必须首先创建特定的角色,然后定义将授予这些角色哪些权限和特权。组织通常首先将角色大致分为三个顶级类别:管理员、专家或专家用户和最终用户。

为了进一步为特定用户组配置不同的角色,需要考虑权限、责任和技能水平等更精细的因素。有时,一个角色可能直接对应于一个职位。在其他情况下,角色可能指多项权限的集合,这些权限可以分配给满足特定条件的用户,而无需考虑其职位如何。

通常为用户分配多个角色,或者可能将其分配给包含多个访问级别的角色组。一些角色是分层的,并为管理人员提供一整套权限,而其下属的角色获得这些角色权限中的一部分。例如,主管角色可能授予该用户对文档的写入权限,而团队成员仅具有读取访问权限。

RBAC 实际应用示例

医院的 IT 管理员为“护士”创建 RBAC 角色。管理员为护士角色设置权限,例如查看药物或将数据输入电子健康记录 (EHR) 系统。医院的护理人员被分配 RBAC 护士角色。当分配有“护士”角色的用户登录时,RBAC 会检查他们有权使用哪些权限,然后向其授予该会话的访问权限。这些用户无权使用开药、安排检查等其他系统权限,因为“护士”角色未被授予这些权限。

RBAC 与身份和访问管理 (IAM)

许多组织使用身份和访问管理 (IAM) 解决方案在整个企业中实施 RBAC。IAM 系统可以帮助在 RBAC 方案中进行身份验证和授权:

身份验证: IAM 系统可以通过对照集中式用户目录或数据库检查用户的凭证来验证用户的身份。

授权:IAM 系统可以通过检查用户名录中的角色对用户进行授权,并根据组织 RBAC 方案中的角色授予适当的权限。

RBAC 的三个主要规则

开发 RBAC 模型的美国国家标准与技术研究院 (NIST) 为所有 RBAC 系统提供三个基本规则。

角色分配:必须为用户分配一个或多个活动角色才能行使权限或特权。

角色授权:用户必须获得授权才能承担已为其分配的一个或多个角色。

权限授权:权限或特权只授予通过角色分配获得授权的用户。

RBAC 的四种模型

有四种不同的模型用于实现 RBAC,但每种模型都始于相同的核心结构。每个后续模型都在前一个模型的基础上构建新的功能和特性。

核心 RBAC分层 RBAC约束 RBAC对称 RBAC

核心 RBAC

此模型有时称为平面 RBAC,是任何 RBAC 系统的必备基础。它遵循 RBAC 的三个基本规则。为用户分配角色,这些角色授权访问特定的权限和特权集。核心 RBAC 可用作主要访问控制系统,或作为更高级 RBAC 模型的基础。

分级 RBAC

该模型添加了复制企业报告结构的角色层次结构。在角色层次结构中,每个角色都会继承其下级角色的权限并获得新的权限。

例如,角色层次结构可能包括高管、经理、主管和基层员工。位于层次结构顶部的主管获授权使用一整套权限,而经理、主管和基层员工会获授权使用该权限的一小部分。

约束 RBAC

除了角色层次结构之外,该模型还增加了强制职责分离 (SOD) 的功能。职责分离要求两个人完成某些任务,有助于防止利益冲突。

例如,申请报销业务费用的用户不应与批准该申请的人是同一个人。受限 RBAC 策略可确保为这些类型的任务分离用户权限。

对称 RBAC

该模型是 RBAC 最先进、最灵活且最全面的版本。除了之前模型的功能外,该模型还可以加深对整个企业权限的了解。

组织可以查看每个权限与系统中每个角色和每个用户之间的对应关系,还可以根据业务流程和员工职责的变化,调整并更新角色相关的权限。

这些功能对于大型组织尤其有价值,因为大型组织必须确保每个角色和每个用户都拥有执行任务所需的最少访问权限。

RBAC 与其他访问控制框架的比较

组织可能会使用其他访问控制框架作为 RBAC 的替代方案。在某些用例中,组织将 RBAC 与其他授权模型相结合来管理用户权限。常用的访问控制框架包括:

强制访问控制 (MAC)自主访问控制 (DAC)基于属性的访问控制 (ABAC)访问控制表 (ACL)

强制访问控制 (MAC)

MAC 系统对所有用户实施集中定义的访问控制策略。MAC 系统的粒度低于 RBAC,并且访问通常基于设置的间隙级别或信任分数。许多操作系统使用 MAC 来控制程序对敏感系统资源的访问。

自主访问控制 (DAC)

DAC 系统支持资源所有者为这些资源设置自己的访问控制规则。DAC 比 MAC 的一揽子策略更灵活,比 RBAC 的结构化方法限制更少。

基于属性的访问控制 (ABAC)

ABAC 分析用户、对象和操作的属性,如用户名、资源类型和时间,以决定是否授予访问权限。RBAC 比 ABAC 更容易实施,因为 RBAC 使用组织角色而不是每个单独用户的属性来授权访问。

RBAC 和 ABAC 之间的区别在于,ABAC 根据多种因素动态确定当前的访问权限,而 RBAC 仅根据用户的预定义角色确定访问权限。

访问控制表 (ACL)

ACL 是一种基本的访问控制系统,它引用用户列表和规则来确定谁可以访问系统或资源,以及他们可以执行哪些操作。

ACL 和 RBAC 之间的区别在于,ACL 为每个用户单独定义规则,而 RBAC 系统根据角色分配访问权限。

对于大型组织,RBAC 被视为更好的访问控制选择,因为它比 ACL 更具可扩展性且更易于管理。

复制链接

Copyright © 2022 星战时空·网游活动中心 All Rights Reserved.