Skip to content

Daily Study

更新: 9/1/2025 字数: 0 字 时长: 0 分钟

Daily Plan

#todo

  • [ ]

权限模型

RBAC

基于角色的访问控制(Role-Based Access Control, RBAC)通过将权限与角色相关联,再将角色分配给用户。

标准化的核心 RBAC(Core RBAC)包含五个静态基本元素:

  • 主体/用户:请求访问系统资源的个人或自动化代理
  • 角色:代表特定工作职能或权限级别的权限集合,例如“会计”、“市场经理”或“数据库管理员” 。这是 RBAC 模型最核心的抽象层。
  • 权限:对一个或多个对象执行某种操作的许可。
  • 操作:主体可对对象执行的具体动作,如“读取”、“写入”、“创建发票”等 。
  • 对象:包含或接收信息的被动实体,是操作作用的目标,如文件、数据库记录或系统服务 。

运行机制:分配与会话,RBAC 模型的动态运作依赖于实体间的关系分配和会话管理。

  • 用户-角色分配 (User-Role Assignment, URA/SA):将一个用户分配给一个或多个角色的过程。这种关系是多对多的:一个用户可以拥有多个角色,一个角色也可以被分配给多个用户 。
  • 权限-角色分配 (Permission-Role Assignment, PRA/PA):这是将权限分配给角色的过程,同样是多对多的关系 。这一环节保障了最小权限模型。
  • 会话(Session,SE):会话是用户在一次登录期间激活其被分配角色的一个子集,从而获得相应权限的映射 。

扩展模型:

  • 层级化 RBAC:该模型引入了角色之间的层级或偏序关系(Role Hierarchy, RH)。高级角色可以继承其下级角色的所有权限,并可拥有额外的专属权限。
  • 约束型 RBAC:该模型增加了对角色分配和激活的约束条件,其中最重要的是职责分离 (Separation of Duties, SoD) 。SoD 是一项关键的安全原则,旨在确保没有任何单个个体能够独立完成一项关键任务的全部流程,从而有效防止欺诈和操作失误
    • 静态职责分离 (Static Separation of Duties, SSD):限制用户不能同时被分配到互斥的角色。
    • 动态职责分离 (Dynamic Separation of Duties, DSD): 允许用户被分配到互斥的角色,但禁止其在同一个会话中同时激活这些角色

ABAC

基于属性的访问控制(Attribute-Based Access Control, ABAC)在该模型中,授权决策是通过评估一系列策略来做出的,这些策略会综合考量与实体(主体和对象)、行为以及请求环境相关的各种属性 。访问决策是动态且实时的,而非通过静态的角色预先分配 。

核心属性类别,ABAC 的决策依据是属性,这些属性通常被划分为四个维度,每个维度都包含丰富的具体实例。

  • 主体属性 (Subject Attributes): 描述请求访问实体(通常是用户)的特征。例如:用户 ID、角色、所属部门
  • 资源属性 (Resource/Object Attributes): 描述被访问资源(对象)的特征。例如:文件名、所有者
  • 操作属性 (Action Attributes): 描述主体试图执行的具体操作。例如:“读取”、“写入”
  • 环境属性 (Environmental/Contextual Attributes): 描述访问请求发生时的实时上下文。这是 ABAC 与 RBAC 最关键的区别。例如:访问时间、地理位置(IP 地址)、设备类型(公司设备 vs. 个人设备)

逻辑架构组件,将策略决策与策略执行相解耦,采用了XACML(eXtensible Access Control Markup Language),一种结构化语言表达的规则集合。

  • 策略执行点 (Policy Enforcement Point, PEP)负责拦截访问请求,收集相关属性,将请求发送给 PDP 进行决策,并最终强制执行 PDP 返回的“允许”或“拒绝”的决定 。
  • 策略决策点 (Policy Decision Point, PDP)是 ABAC 系统的“大脑”。它根据相关的访问策略评估收到的请求,并做出最终的授权决策 。
  • 策略信息点 (Policy Information Point, PIP)负责为 PDP 检索其决策所需的、但初始请求中未包含的额外属性。例如,从人力资源数据库中查询用户的所属部门.
  • 策略管理点 (Policy Administration Point, PAP)提供给管理员用于创建、管理和部署访问策略的工具或界面 。

对比

维度基于角色的访问控制 (RBAC)基于属性的访问控制 (ABAC)
决策依据预定义的静态角色动态评估的属性与策略
授权粒度粗粒度细粒度
灵活性较低,静态极高,动态
上下文感知内在支持(时间、地点、设备等)
管理模型集中式角色管理策略和属性生命周期管理
初始设置复杂性较低较高
持续管理成本角色数量增多时成本剧增策略和属性治理成本较高
扩展机制增加新角色增加新属性和策略
主要挑战角色爆炸策略复杂性、属性数据质量
最佳适用环境结构稳定、层级分明的组织动态、复杂、异构的环境
安全范式对齐传统边界安全、最小权限零信任、风险自适应访问控制

菜就多练

本站访客数 人次 本站总访问量