第3节 Flat RBAC
Flat RBAC如图1所示。Flat RBAC所要求的特性对于任何一个RBAC实现来说是必不可少,并且显而易见的。对于Flat RBAC来说,讨论的重点仿佛应当是那些被排除在外的特性了。
Flat RBAC 主要从传统操作系统中广泛使用的基于组的访问控制中,以新一个角度提取了相关特性。有的人可能觉得这些特性不足以诠释RBAC这个概念。NIST RBAC模型之所以以传统的基于组的访问控制
作为第一个级别的RBAC,是因为其广泛使用而且非常相似。这种做法充分认识到两者的共同点,而将关于角色与组区别的无意义讨论放一边。同时,通过定义更复杂的RBAC高级别模型,也说明了RBAC并不止是传统基于组的访问控制的另一个代名词。
对于Flat RBAC来说,多对多的用户角色关联支持是很重要的。现实中每个系统对一个用户所关联的角色个数都有一定限制。同时产品应当在这方面的扩展性有一定考量。目前某些系统对用户关联的角色数量有很严格的限制,如16或32。而其他系统则可能提供大得多的支持,如100甚至1000。NIST模型没有对这方面有一个量化的要求。而对于一个可操作的模型来说,这方面的量化要求可能是很必须的。RBAC模型中还是有很多相似扩展性的的方面会涉及到。这点在第7节会进一步讨论。
用户通过角色来获取许可,这是RBAC中很重要的一点。但Flat RBAC不排除用户通过其他方式来获取许可,如许可直接关联到用户,或通过其他安全标签的形式。
图1中显示了三种实体:用户(U),角色(R),和许可(P)。这个模型中,一个用户可能是一个人,或者是一个匿名的代理,如一个进程或计算机。一个角色则是组织内的一个工作职能或者职位名称,这些从字眼上可能与相关授权和责任有关联。一个许可代表允许对系统内一个或多个对象的某种形式访问。授权,访问权限,特权这些词语经常用于描述许可。许可通常是正向的,描述许可所有者可以在系统内进行某些操作。许可的性质很大程度上取决于系统的性质和实现细节。因此,一个通用的访问控制模型应当将许可某种程度上看作是一个不可解析的符号。Flat RBAC对许可的具体性质没有明确规定,留待读者去确定。
Flat RBAC有两种多对多的关联:用户-角色关联(UA)和许可-角色关联(PA)。这是RBAC的一个很重要方面。会话的概念并不是RBAC的一部分。一个会话应该是对应用户登录系统进行某些操作的一个特定场景。对于会话的含义,每个系统都有很大区别。某些情况下,一个用户关联的所有角色会全被激活并在会话内生效。而其他情况,用户可能有选择的激活会话内生效的角色。这杨,用户就可以根据当前执行的任务去更灵活的控制权限。对于那些具有很高权限的角色,一开始可以进行屏蔽,直到有需要时才激活,以保证安全性。某些系统限制用户一个会话只能激活一个角色。NIST模型没有要求支持所有的角色激活方式,但要求支持在同一会话中能同时激活多个角色。这就排除了那些一个会话只能激活一个激活角色的产品。这个个性被某些人认为是过于严苛。
Flat RBAC要求支持用户-角色关系的查询,以方便确定一个用户具有哪些角色,以及一个角色拥有哪些用户。通常认为,许可-角色关系的类似查询也是RBAC中固有的一部分。许可-角色关系查询能有助于确定一个角色有哪些许可,以及一个许可分配了给哪些角色。一些人可能提出,对许可-角色关系查询的支持是角色区别于组的一个重要特征。在NIST模型中,由于许可-角色关系的查询在大型分布式系统中的实现有一定难度,所以只在第4级模型中进行要求。
Flat RBAC模型将RBAC很多实现中需要明确的问题留待读者去确定和解决。角色,用户,许可等的支持规模上,都没有作数目上的明确要求。许可的性质和角色激活方式的支持上已只做了部分的规定。当一个用户失去一个角色或者一个许可从一个角色撤回,就要进行权限回收。但具体回收动作什么时候发生,特别是对于正在进行的活动有何影响,这都没有明确规定。从某种程度上,这是一个效果保证问题。角色管理也是另外一个没有明确的方面。角色管理涉及到谁去为用户添加角色,为角色授权许可。Flat RBAC中对此不做规定有两方面原因:一方面,在一个标准模型中去规定某些特性的实现细节并不合适。应当由厂商或者市场去决定如何实现,以获得最好的效果。另一方面,在团体内很难达成一致意见去决定一个具体的方案作为标准的一部分。这些问题在第7节将会作进一步的讨论。
- 大小: 11.6 KB
分享到:
相关推荐
本文描述了一个RBAC(基于角色的访问控制)的统一模型。RBAC是一个已被证实可用于大规模授权控制应用的技术。
NIST RBAC模型的优势在于它的模块化和标准化,允许组织根据自身需求定制安全策略。此外,由于角色是权限的载体,变动管理变得更为简单,例如添加新用户或调整权限时,只需要调整角色配置即可。同时,该模型也有助于...
2001年,美国国家标准与技术研究院(NIST)发布了一份RBAC建议标准,其中包含了RBAC参考模型和功能规范两大部分。参考模型主要包括以下四个层次: - **核心RBAC**:这是所有RBAC系统的基础,定义了角色、用户和权限...
NIST标准RBAC模型由四个部件模型组成,分别是基本模型RBAC0(Core RBAC)、角色分级模型RBAC1(Hierarchal RBAC)、角色限制模型RBAC2(Constraint RBAC)和统一模型RBAC3(Combines RBAC)。RBAC0模型定义了能构成...
RBAC模型由NIST定义了四个核心部件模型,分别是RBAC0、RBAC1、RBAC2和RBAC3。RBAC0是最基础的模型,它包括用户(users)、角色(roles)、目标(objects)、操作(operations)和权限(permissions)五个基本元素。...
NIST的RBAC模型包括四个组件:基本模型RBAC0、角色分级模型RBAC1、角色限制模型RBAC2和统一模型RBAC3。这些模型分别处理角色的层级结构、权限约束以及不同RBAC特性的组合。例如,RBAC1允许角色间的层次结构,使得...
这种模型由NIST定义的四个部件模型构成:RBAC0、RBAC1、RBAC2和RBAC3。RBAC0是最基础的模型,包括用户、角色、目标、操作和权限五个基本数据元素。用户通过角色获得权限,角色与权限的绑定减少了管理复杂性。RBAC1...
NIST(美国国家标准与技术研究院)对RBAC模型也有着重要贡献,它不仅定义了RBAC的术语和概念,还制定了相关的标准。通过这些标准,可以确保不同的系统和应用程序之间在权限控制方面的一致性和互操作性。 文档内容中...
NIST (The National Institute of Standards and Technology,美国国家标准与技术研究院)标准RBAC模型由4个部件模型组成,这4个部件模型分别是基本模型RBAC0(Core RBAC)、角色分级模型RBAC1(Hierarchal RBAC)...
RBAC模型由美国国家标准与技术研究院(NIST)提出,主要包括以下四个部分: 1. **基本模型RBAC0(Core RBAC)**:这是构成一个RBAC控制系统的最小元素集合,包括用户、角色、目标、操作和许可权等五个基本数据元素...
RBAC模型是1992年由NIST(美国国家标准与技术研究所)提出的一种权限分配机制。它基于三个核心概念:用户、角色和权限。用户通过扮演不同的角色来获得相应的权限,而角色是权限的集合。这种模型降低了权限管理的...
RBAC模型由美国国家标准与技术研究院(NIST)提出,主要包括四个组成部分: 1. **基本模型RBAC0**:定义了构成RBAC控制系统的最小元素集合,包括用户、角色、目标、操作、权限等基本数据元素。权限被赋予角色而非...
NIST定义的RBAC模型由四个基本组件构成: 1. **RBAC0(核心RBAC)**:这是RBAC模型的基础,包括用户(users)、角色(roles)、目标(objects)、操作(operations)和权限(permissions)五大数据元素。权限不直接...
1. **参考架构和分类**:利用现有标准化机构或其他组织的工作成果,结合NIST内部工作组的努力,开发一套适用于联邦政府的云计算路线图。该路线图将集成于联邦政府的整体云计算策略之中。相关成果包括SP500-292《NIST...
### NIST SP 800-22 随机数测试标准详解 #### 引言 随机数在密码学及信息安全领域扮演着至关重要的角色。它们被广泛应用于密钥生成、加密算法、数字签名等核心安全机制之中。为了确保这些机制的安全性和有效性,...
NIST定义了四种RBAC模型:RBAC0、RBAC1、RBAC2和RBAC3,它们在RBAC0的基础上逐步增加了继承关系和责任分离等特性。 1. **RBAC0模型**:这是RBAC的基础模型,包含用户、角色、目标、操作和权限五个基本元素。用户...