第4节 Hierarchical RBAC
Hierarchical RBAC 如图2所示。它与图1的区别之处只在于引入了角色层次关系RH。在讨论角色时,角色的层次经常也会涉及到。支持角色的系统通常也会支持角色的层次。
角色层次是很自然的一种角色组织方式,去体现组织内的权责架构。图3列举了角色层次的例子。从数学的角度,这些层次是偏序(partial order)。偏序即反射,传递,非对称的关系。通常来说,角色权限越大会放在越靠层次图中越高的位置,而权限低的角色会在底部。关于偏序的反射,传递,非对称等特性的要求,已在相关文献中有详细讨论。这方面其实已经达成很多的共识。对于支持任意偏序(arbitrary partial order)所带来好处也是有目共睹。尽管现在很多产品只提供对有限的层次结构的支持,但相对flat RBAC模型还是很重要的一个进步。具体来说,Hierarchical RBAC分为两个子级别,如下。
General Hierarchical RBAC
该级别在角色层次中支持任意偏序。
Limited Hierarchical RBAC
该级别对角色层次的结构有一定限制,即树或反向树等较简单的结构。
4.1 Limited vs. General Hierarchies
图3(a)是一个反向树结构,假设描述一个工程部门的情景。高级角色在树的顶端,通过关联边连接低级角色。通过传递形成的关联边,如PE1至ED并没有在图中显示,以使避免混乱。部门所有人员都应该有最低级的角色ED。这个角色以上的角色分别属于部门内两个不同项目,左边的项目1和右边的项目2。每个项目有工程师角色,之上更有产品和质量工程师。反向树有助于资源的共享。角色ED可用的资源对于高级角色也是同样可用的。但反向树不支持对多个角色的资源进行聚集。
图3(b)是一个树结构,高级角色汇聚了低级角色的许可。因此PL1拥有PE1和QE1的许可,并可能额外拥有自己特有的许可。树结构可以很方便的进行聚集,但不利于共享。在这个结构中,项目1的角色和项目2 的角色无法进行资源共享。
图3(c)是一个常用层级结构,同时包括了对共享和聚集的支持。这个工程部门中,有一个最低级的角色ED和一个最高级的角色DIR。其他角色处于他们两个角色之间,分别属于两个不同项目。而每个项目中,有最高级的角色(PL1和PL2)和最低级的角色(E1和E2)。还有两个不可相比的角色,产品工程师(PE1和PE2)和质量工程师(QE1和QE2)。这个结构可以扩展到工程部门里的多个甚至上百个项目。而且每个项目可以拥有各自不同的角色层次结构。这个例子也可以扩展到多个部门,各自采用不同结构和策略的。实际应用中,通常都会采用非规则的结构,而非如本例子里如此对称规整。
这里需要强调,本例子中不一定需要有最高级的角色如DIR。同样,最低级的角色ED也不是必需的。如图4中的结构都是可以的。具体层级的设计只需与采用的策略相适应即可。RBAC模型中,级别2a要求支持通用的层级关系(General Hierarchy),而级别2b允许对层级关系进行一定约束(Limited Hierarchy)。
4.2 Limited Inheritance
高级角色如图3(c)中的DIR由于汇聚了过多的权力,所以通常被认为有较大风险。尽管拥有这些角色的用户非常可信,他们也有可能会犯错或者被恶意程序感染。所以可能需要对角色的继承进行约束,如图5。图5(a)中角色Project Supervisor 继承项目中的所有许可。而图5(b)中,测试工程师用户可以拥有角色Test Engineer'中的某些不被角色Project Supervisor继承的许可。这样角色Test Engineer'将会真正用于分配给测试工程师用户,而角色Test Engineer只是一个设置,以通过它角色Test Engineer'可以继承低级角色的权限。角色Test Engineer'称为私有角色。图5中角色Programmer'也是相似情况。
4.3 Inheritance vs. Activation Hierarchies
以往文献中对角色层级有两种不同解释。一种解释认为高级角色从低级角色继承许可。这被称为permission-inheritance interpretation,其层级被称为inheritance hierarchy。图3(c)中就是一个继承性层级,角色PL1激活时,所有PL1,PE1,QE1,E1,ED和E的许可都被视为可用。另一种解释认为高级角色的激活,不自动激活低级角色的许可。这被称为activation hierarchy,其层级被称为activation hierarchy。这种情况下,激活角色PL1并不代表低级角色的许可的激活。每个低级角色都必须明确的激活以保证其许可在会话中有效。实际情况下,有可能同时应用这两种解释。这样,activation hierarchy 可能扩展 inheritance hierarchy,或者相对独立的存在。由于现实情况的多样性,NIST模型没有对角色层级的具体含义进行规定。
- 大小: 31.5 KB
- 大小: 36.4 KB
分享到:
相关推荐
本文描述了一个RBAC(基于角色的访问控制)的统一模型。RBAC是一个已被证实可用于大规模授权控制应用的技术。
讲解了NIST约定的4级RBAC模型,有良好的配图,该模型能指导RBAC设计时所需考虑的要素
NIST (The National Institute of Standards and Technology,美国国家标准与技术研究院)标准RBAC模型由4个部件模型组成,这4个部件模型分别是基本模型RBAC0(Core RBAC)、角色分级模型RBAC1(Hierarchal RBAC)...
NIST (The National Institute of Standards and Technology,美国国家标准与技术研究院)标准RBAC模型由4个部件模型组成,这4个部件模型分别是基本模型RBAC0(Core RBAC)、角色分级模型RBAC1(Hierarchal RBAC)...
基于属性的访问控制模型标准-中英文。基于NIST下载的原版本进行的中文翻译,并保留了原文,方面进行中英文比对。是开放版本,方便进行模型标准的了解与解读。对产品开发以及零信任中的属性可以有更深入的了解。
随机数在安全领域有着重要作用,该标准可以检测随机数的随机性。
从综合信息管理系统以及软件系统集成的需求出发,分析了NIST RBAC模型的局限性,在此基础上对其模型进行扩充,提出 ERBAC模型。该模型适用于多种客体且具体客体不确定的情况。文章还给出了ERBAC模型的具体定义和应用...
美国国家标准与技术研究院关于随机数生成及测试的标准
美国国家标准技术研究院(NIST)发表研究成果“基于机器学习的轰燃预测模型”.pdf
说明: NIST标准的随机数检测工具;支持单比特频数检测、块内频数检测、扑克检测、重叠子序列检测、游程总数检测、游程分布检测等源代码
本基础 NIST 出版物的第 5 修订版代表了开发下一代安全和隐私控制的多年努力。出版物的主要变化包括: 通过更改控件的结构,创建更基于结果的安全性和隐私控制; 将隐私控制完全集成到安全控制目录中,创建一套统一...
nist sp800-16标准,对于信息安全从业人员,培训人员等有参考价值
这个出版已经由NIST依照法定职责根据联邦信息安全现代化法案》(FISMA) 2014年44事项§3551节。,公法(P.L.) 113-283。NIST负责制定信息安全标准和指南,包括对联邦信息系统的最低要求,但这些标准和指南不应适用于...
NIST随机数测试标准中文版,只看到有英文的,传给中文的
随机数熵评估标准 NIST.SP800-90B 源代码。 近似熵 最小熵
美国国家标准与技术研究所提供的Special Publication800-22测试包(简称NIST随机性测试)。 NIST测试程序是一个统计包,包括 16 种测试手段。这些测试手段可测试由用作保密随机或者伪随机数发生器的硬件和软件产生的...
随机数测试:NIST测试教程
云安全标准分享材料。美国NIST云计算安全标准跟踪及研究
Digital Signature Standard;美国国家标准技术局数字签名标准;NIST.FIPS.186-4.pdf
nist 800-181标准中文版作为美国信息安全乃至世界通用的标准,对于信息安全产品开发、方案设计等具有重要的参考价值