基于角色的访问控制 RBAC:定义、历史和示例

基于角色的访问控制

本文对基于角色的访问控制 (RBAC) 进行了完整说明,并提供了部署、维护和扩展 RBAC 以满足组织需求的分步指南。 您将了解角色、如何定义角色,以及如何使用它们来管理访问可以帮助保护您的网络、降低管理成本并确保合规性。 我们还将看到一些基于角色的访问控制的示例。 让我们开始吧。

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

根据人员在组织中的角色向其提供权限的概念称为基于角色的访问控制 (RBAC)。 它提供了一种基本的、受控的访问管理方法,与单独向用户提供权限相比,这种方法更不容易出错。

当您将 RBAC 用于角色访问管理时,您会检查用户的需求并根据共享职责将它们分组到角色中。 然后,为每个用户分配一个或多个角色以及一个或多个权限给每个角色。 因为不再需要不加选择地管理用户,所以用户-角色和角色-权限关系可以直接进行用户分配。

基于角色的访问控制的历史

至少从 1970 年代开始,人们就利用角色和职责来控制对商业计算机系统的访问。 然而,这些方法是临时的,并且经常必须根据每个新系统的具体情况进行修改。

美国国家标准协会 (NIST) 的研究人员直到 1992 年才开始定义称为基于角色的访问控制系统。同年,Ferraiolo 和 Kuhn 发表了一篇论文,定义了一种适用于民用和商业用途,为我们今天使用的模型奠定了基础。

在整个 1990 年代和 2000 年代初期,Ferraiolo、Kuhn 和其他人在先前研究 RBAC 的经济效益的工作的基础上改进了 RBAC,指定了一个统一的模型,最重要的是,定义了职责分工形式。 RBAC 于 2004 年被 NIST 正式采用为行业标准。

基于角色的访问控制 RBAC 如何工作?

在企业中部署 RBAC 之前,组织应彻底指定每个角色的权限。 这包括在下面列出的类别中精确指定权限:

  • 数据修改权限(例如,读、写、完全访问)
  • 访问使用公司软件
  • 程序内的权限

要充分利用 RBAC,您必须首先对角色和权限进行建模。 将所有员工职责分配给建立适当特权的特定工作是其中的一部分。 然后,组织可以根据员工的任务分配职位。

组织可以使用基于角色的访问控制为每个用户分配一个或多个角色或单独分配权限。 这个想法是设置允许用户在不进行任何额外调整的情况下完成其职责的权限。

组织使用身份和访问管理 (IAM) 技术来实施和监控 RBAC。 IAM 主要通过记录、监控和更新所有身份和权限来服务于大型组织。 分配权限的过程称为“配置”,撤销权限的过程称为“取消配置”。 这种类型的系统需要建立一套统一和标准化的角色。

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

角色是 RBAC 架构中的语义,组织可以利用它来建立他们的权限。 权限、责任、成本中心、业务单位和其他因素可用于定义角色。

角色是一组用户权限。 作为用户聚合的传统组与角色不同。 权限与 RBAC 上下文中的身份不直接相关,而是与角色相关。 因为它们是围绕访问管理组织的,所以角色比组更值得信赖。 身份更改比正常业务中的功能和活动更频繁。

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

RBAC 标准定义了三种访问控制形式:核心、分层和受限。

#1。 核心 RBAC

核心模型定义了任何基于角色的访问控制系统的关键组件。 虽然基本的 RBAC 可以用作独立的访问控制方法,但它也可以作为分层模型和受限模型的基础。

因此,所有 RBAC 都必须遵循以下三个规则:

  • 角色选择或分配: 一个人只有在他或她已经选择或被分配了一个角色的情况下才能行使许可证。
  • 角色授权: 必须授权主体的主动角色。
  • 权限授权: 主体只能行使主体活动角色所允许的权限。

#2。 层次结构 RBAC

通过相信您的防御已经被破坏,您可以采取更强大的安全态势来抵御潜在的攻击,从而减少破坏的影响。 通过分段访问和减少攻击面、确认端到端加密以及实时监控您的网络,限制由违规造成的可能损害的“爆炸半径”。

#3。 受约束的 RBAC

第三个 RBAC 标准扩展了核心模型的角色划分。 职责分离关系分为静态或动态。

  • 单个用户不能在静态职责分离 (SSD) 关系(由组织定义)中承担相互排斥的责任。 例如,这确保了一个人不能同时进行和批准购买。
  • 动态职责分离 (DSD) 模型下的用户可能具有相互矛盾的角色。 但是,用户可能不会在同一个会话中执行这两个任务。 此约束有助于控制内部安全问题,例如,实施两人规则,该规则需要两个唯一用户授权操作。

基于角色的访问控制示例

RBAC 允许您在广泛和细粒度级别控制最终用户可以执行的操作。 您可以指定用户是管理员、专家用户还是最终用户,并且您可以将职责和访问权限与员工的组织职位相匹配。 仅授予员工足够的访问权限以完成其任务的权限。

如果最终工作用户的描述发生变化怎么办? 您可能需要手动将其角色分配给其他用户,或者您可以将角色分配给角色组或使用角色分配策略来添加或删除角色组成员。

RBAC 工具可能包括以下名称:

  • 管理角色范围 – 它限制角色组可以处理的项目。
  • 管理角色组 – 您可以在管理角色组中添加和删除成员。
  • 管理角色 – 这些是给定角色组可以完成的任务类型。
  • 管理角色分配- 这是将角色分配给角色组的过程。

将用户添加到角色组后,该用户将获得对该组中所有角色的访问权限。 当它们被删除时,访问受到限制。 如果用户需要临时访问特定数据或应用程序,然后在项目结束后被删除,他们也可能被分配到多个组。

其他用户访问可能性可能包括:

  • 特定帐户或角色的主要联系人。
  • 计费 – 访问单个最终用户的计费帐户。
  • 技术用户是执行技术职责的人。
  • 向执行管理活动的用户授予管理访问权限。

RBAC 替代方案:访问控制类型

可以使用其他访问控制机制来代替基于角色的访问控制。

访问控制列表(ACL)

访问控制列表 (ACL) 是列出与计算资源关联的权限的表。 它通知操作系统哪些用户可以访问一个对象以及他们可以对它执行哪些操作。 每个用户都有一个链接到每个项目的安全属性的条目。 对于经典的 DAC 系统,通常使用 ACL。

ACL 与 RBAC

在安全性和管理成本方面,对于大多数业务应用程序而言,RBAC 的性能优于 ACL。 ACL 更适合在个人用户级别和低级别数据实施安全性,但 RBAC 更适合由管理员监督的公司范围的安全系统。 例如,ACL 可以启用对某个文件的写访问权限,但不能定义用户如何更改该文件。

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

ABAC 评估一组规则和策略,以便根据环境、系统、对象或用户信息等特定质量控制访问权限。 它使用布尔逻辑根据对原子或集值属性及其关系的复杂评估来允许或拒绝人们访问。

实际上,这使您能够在可扩展访问控制标记语言 (XACML) 中定义使用键值组合的规则,例如 Role=Manager 和 Category=Financial。

ABAC 与 RBAC

RBAC 基于预定义的角色,而 ABAC 更加动态并使用基于关系的访问控制。 RBAC 可用于定义大范围的访问控制,而 ABAC 提供更多粒度。 例如,RBAC 系统授予所有经理访问权限,而 ABAC 策略仅授予财务部门经理访问权限。 ABAC 进行更复杂的搜索,需要更多的处理能力和时间,因此只有在 RBAC 不足时才使用它。

RBAC 优势

  • 网络访问的管理和审计对信息安全至关重要。 可以而且应该根据需要知道允许访问。 通过根据每个用户在企业中的既定角色限制对关键信息的不必要访问,可以更轻松地管理数百或数千名员工的安全性。 其他好处包括:
  • 行政和 IT 支持将减少。 当员工被雇用或更改角色时,您可以使用 RBAC 来减少对文书工作和密码更改的要求。 相反,您可以利用 RBAC 跨操作系统、平台和应用程序快速添加和转移角色。 它还降低了授予用户权限时出错的可能性。 RBAC 的众多经济效益之一是减少了花在管理活动上的时间。 RBAC 还通过为其分配预定义角色来促进将第三方用户集成到您的网络中。
  • 提高运营效率。 RBAC 提供了一种具有逻辑定义的简化方法。 所有角色都可以与业务的组织结构保持一致,而不是试图管理较低级别的访问控制,从而允许用户更有效和自主地完成他们的职责。
  • 提高合规性。 联邦、州和市政限制适用于所有组织。 借助 RBAC 系统,公司可以更轻松地满足隐私和保密的法定和监管标准,因为 IT 部门和高管可以管理数据的访问和使用方式。 这对于处理大量敏感数据(如 PHI 和 PCI)的医疗保健和金融组织来说尤其重要。

RBAC 实施的最佳实践

在您的组织中实施 RBAC 不应轻率地进行。 为了让团队参与进来,而不会产生不必要的混乱或工作场所的烦恼,需要采取许多一般阶段。 这里有一些想法可以开始。

  • 当前状态: 列出每个具有安全性的软件、硬件和应用程序。 其中大多数都需要密码。 但是,您可能希望包括处于锁定和钥匙状态的服务器机房。 物理安全是数据保护的重要组成部分。 此外,指定谁有权访问这些程序和地点中的每一个。 这将为您提供当前数据情况的一瞥。
  • 目前的职责: 即使您没有正式的花名册和角色列表,确定每个团队成员的工作也可能像简短的谈话一样简单。 尝试以不妨碍创造力或当前文化(如果喜欢)的方式安排团队。
  • 创建策略: 任何修改都应记录在案,以供所有现在和未来的员工查看。 即使您使用 RBAC 解决方案,拥有一份清楚阐明您的新系统的论文也将帮助您预防问题。
  • 变化: 一旦知道当前的安全状态和角色(并且制定了策略),就可以实施更改了。
  • 不断适应: 第一次 RBAC 迭代可能需要一些修改。 在早期,您应该经常评估您的职责和安全状态。 首先评估您的创意/制作流程的运行情况,然后评估您的流程的安全性。

结论

数据保护是任何公司的关键业务功能。 RBAC 系统可以确保公司的信息符合隐私和保密法。 此外,它可以保护对组织具有竞争影响的重要业务活动,例如获取知识产权。

基于角色的访问控制常见问题解答

RBAC 的三个主要规则是什么?

角色权限、用户-角色和角色-角色关系等 RBAC 组件使用户分配变得简单。

为什么要使用 ACL?

减少网络流量以提高网络性能。 一种网络安全级别,它指定用户可以访问和不能访问的服务器/网络/服务的哪些部分。 对进出系统的流量进行细粒度跟踪。

基于角色的访问控制和基于规则的访问控制有什么区别?

员工访问级别不是由基于规则的访问控制决定的,这些访问控制本质上是预防性的。 相反,它们致力于防止不必要的访问。 基于角色的模型是主动的,因为它们向员工提供了一组条件,在这些条件下他们可以获得批准的访问权限。

参考资料

发表评论

您的电邮地址不会被公开。 必填带 *

你也许也喜欢