title: “NIST RBAC标准:基于角色的访问控制模型” source: “ACM Transactions on Information and System Security, Vol. 4, No. 3, 2001” authors: [“David F. Ferraiolo”, “Ravi Sandhu”, “Serban Gavrila”, “D. Richard Kuhn”, “Ramaswamy Chandramouli”] size: “383 KB” pages: 51 date: “2001-08” processed_date: “2026-09-29” method: “PDF文本提取(pdf-inspector)” original_path: “/田浩然上传的资料/0CI03 操作系统安全/课程参考文献/RBAC Model/rbacSTD-ACM.pdf” status: done
NIST RBAC标准:基于角色的访问控制模型
基本信息
- 标题: Proposed NIST Standard for Role-Based Access Control
- 作者: David F. Ferraiolo (NIST), Ravi Sandhu (GMU), Serban Gavrila (VDG Inc.), D. Richard Kuhn (NIST), Ramaswamy Chandramouli (NIST)
- 来源: ACM Transactions on Information and System Security, Vol. 4, No. 3, August 2001, Pages 224-274
- 原始路径:
/田浩然上传的资料/0CI03 操作系统安全/课程参考文献/RBAC Model/rbacSTD-ACM.pdf - 文件大小: 383 KB
- 页数: 51页
- 处理方法: PDF文本提取 (pdf-inspector)
- 处理日期: 2026-09-29
核心内容
本文是RBAC(基于角色的访问控制)标准的 proposals,由NIST主导,旨在统一不同RBAC模型的术语和功能定义,形成标准化的参考模型和功能规范。
一、RBAC背景与标准化需求
核心问题:
- vendors已实现RBAC功能,但缺乏通用定义
- 多个RBAC模型存在,但无权威标准
- 不同模型使用不同术语描述相同概念
- 导致产品评估、采购规格制定困难
RBAC优势:
- 简化授权管理:用户变更职能时只需修改角色分配,无需逐个撤销/授予权限
- 支持分离职责(SoD):防止单人在系统中拥有执行欺诈所需的全部权限
- 策略中性:通过角色层次和约束可表达广泛的安全策略
- 适合大规模系统:角色可重复使用,管理效率高
二、RBAC四组件模型
标准将RBAC分为四个组件:
1. Core RBAC(核心RBAC)
最基础的RBAC功能集合:
- 用户-角色分配:用户可分配至多角色,角色可有多用户
- 权限-角色分配:权限绑定到角色,用户通过角色获得权限
- 用户会话:允许选择性激活/去激活角色
- 多角色同时激活:用户可同时行使多个角色的权限
- 用户-角色审查:查询某用户有哪些角色,某角色有哪些用户
设计取舍:
- 省略了”权限-角色审查”(高级审查功能),因许多现有系统不支持
- 强制多角色同时激活,为后续扩展留出空间
2. Hierarchical RBAC(层次RBAC)
在Core基础上增加角色层次:
- 通用层次:支持任意偏序关系,允许多重继承
- 受限层次:限制为树形或倒树形结构
意义:
- 反映组织层级结构
- 减少权限分配冗余
- 高阶角色自动继承低阶角色权限
3. Static Separation of Duty (SSD)
静态分离职责约束:
- 定义SSD集合:一组角色,其子集不能有共同用户
- 确保关键操作需多人协作完成,防止欺诈
4. Dynamic Separation of Duty (DSD)
动态分离职责约束:
- 定义DSD集合:一组角色,在同一会话中不能同时激活
- 与SSD的区别:DSD限制的是”同一会话中的激活角色组合”,而非”用户-角色分配”
三、RBAC功能规范
管理操作(Administrative Operations)
创建、删除、维护RBAC元素和关系的操作:
- AssignUser / AssignRole
- CreateRole / DeleteRole
- GrantPrivilege / RevokePrivilege
- CreateSsdSet / AddSsdRoleMember
- CreateDsdSet / AddDsdRoleMember
- CreateSession / AddActiveRole
管理审查(Administrative Reviews)
查询RBAC元素和关系:
- UserRoleReview:查询用户有哪些角色
- RoleUserReview:查询角色有哪些用户
- RoleSetReview:查询角色集
- AuthorizedRoles:查询用户在特定会话中的授权角色
系统功能(System Functions)
- 会话管理:创建/销毁会话,激活/去激活角色
- 约束检查:验证SSD/DSD约束
- 访问决策:计算用户会话的权限集合
四、标准意义与应用
对厂商:
- 提供统一的产品评估基准
- 指导功能设计和实现
对用户/采购方:
- 提供标准化的采购规格依据
- 支持跨产品互操作性
对研究者:
- 提供明确的形式化基础
- 支持新模型和技术的探索
关键概念索引
[[RBAC]]- 基于角色的访问控制[[分离职责]]- Separation of Duty,防止欺诈的核心机制[[静态约束]]- SSD,限制用户-角色分配[[动态约束]]- DSD,限制会话中的角色激活组合[[角色层次]]- 角色间的继承关系[[最小权限原则]]- 用户仅获得完成任务所需的最小权限集[[零信任架构]]- RBAC是现代访问控制的基础构件
关联知识
- 该标准与 MAC(强制访问控制)、DAC(自主访问控制)并列,是三大访问控制模型之一
- RBAC被广泛应用于企业级安全系统、数据库权限管理、Web应用授权等场景
- 相关标准: NIST IR 6694、FIPS 186(数字签名标准中涉及访问控制)