英语原文共 116 页,剩余内容已隐藏,支付完成后下载完整资料
第二章:背景信息
2.1.介绍
这章讨论了不同RBAC模型在不同时期的发展,例如Sandhu模型,NIST模型和ANIS INCITS 359-2004 RBAC模型。最后,我们简单讨论一下基于角色的访问控制模型的限制以及重点讨论核心RBAC模型。
2.2.基于角色的访问控制
基于角色的访问控制(RBAC)是限制授权用户进入系统的一种方法。它是一种新方法,是强制访问控制(MAC)和自主访问控制(DAC)的替代方法。RBAC有时被称为是基于角色的安全性[4]。在开发RBAC之前,MAC和DAC被认为是已知的访问控制模型:如果一个模型不是MAC,它被认为是一个DAC模型,反之亦然。20世纪90年代后期的研究表明,RBAC不属于任何一类。
在组织内部,为各种工作职能创建角色。执行某些操作的权限被分配给特定的角色。 工作人员被分配到特定的角色,并通过这些角色成员获得执行特定系统功能的权限。由于用户没有直接分配权限,而只是通过他们所处的角色获取权限,因此个人用户权限的管理就成了一个为用户分配适当角色的简单问题。这简化了常用操作,例如添加一个用户或更改用户的部门。
约束对可能的权限继承设置了限制性规则对立的角色,因此可以用来实现适当的职责分离。 例如,不应该允许同一个人创建登录账户或授权账户创建。
通常,为RBAC定义了三个主要规则:角色分配,角色授权和合约授权。在角色分配中,主体可以执行一个仅在主体已选择或已分配角色时的合约。在角色授权中,主体的主动角色必须授权给主体。 该规则确保用户只能使用其授权的角色。在合约授权中,只有当权限被授权用于主体的主动角色时,主体才能执行权限。通过上述两条规则,第三条规则确保用户只能执行它们所拥有的合法权限。
2.3基于角色的访问控制模型
基于角色的访问控制在不同的时期出现了不同的模型。这些模型通过改进原有的模型一个接一个出现。我们讨论了三种类别下的RBAC模型开发。首先,我们讨论Sandhu,et.al模型,它被认为是第一个RBAC模型框架。其次,NIST RBAC提出了模型。最后,2004年由ANSI INCITS采用的RBAC模型。
2.3.1 Sandhu的RBAC模型
Sandhu,et.al [9]引入了一个RBAC模型框架,将其分解为四个模型概念,模型可以结合起来提供给各种RBAC系统。 简而言之,这些模型在下面讨论。
2.3.1.1 基础模型(RBAC0)
这是由任何系统支持的最低要求组成的基本模型RBAC模型。该模型由三组实体组成,称为用户(U),角色(R)和权限(P)。这个模型中的用户是人,许可是特定的批准访问系统中的一个或多个对象的模式用户分配(UA)和权限
分配(PA),这些都是多对多的关系。 RBAC0的定义 - 模型由以下组件定义:
U,R,P和S(分别为用户,角色,权限和会话)。
,角色分配关系的多对多权限
,一个多对多的用户角色分配关系
用户:S U,映射每个会话的函数 到单个用户(会话生命周期中的常量)
角色:,一个映射每个会话到一组角色的函数可随时间改变),会话有权限。
在RBAC0中,权限应用于数据和资源对象,而不是RBAC本身的组件。 权限修改集合U,R和P以及关系PA和UA被称为管理权限。
2.3.1.2. 角色层次结构 - RBAC1
角色分级(RBAC1),模型包含RBAC0并具有额外的角色功能,允许角色之间权限继承的层次结构。这个模型引入了角色层次结构(RH)。在讨论角色时, 角色层次几乎不可避免被涉及到。它们通常也在提供角色的系统中实施。 角色层次结构是组织角色以完成组织的权限和责任线的自然方式。按照惯例,更强大(或高级)的角色会显示在他们的顶部图表,底部显示不那么强大(或初级)的角色。
在数学上,这些层次结构是部分订单。部分秩序是自反的,传递和反对称关系。继承是自反的,因为角色继承自己的权限,传递性在这种情况下是自然的要求,反对称排除了彼此继承的角色,因此是多余的。
在形式上,RBAC1模型具有以下组件:
U,R,P,S,PA,UA和类似于RBAC0的用户,
R是R上的部分订单,称为角色层次结构或角色优势。
角色:从RBAC0修改为需要角色,并且会话有权限。
2.3.1.3. 约束模型 - RBAC2
约束模型(RBAC2)包含具有约束附加特征的RBAC0,这对RBAC组件的配置施加了限制。这种模型类型引入了约束的概念。约束是RBAC的一个重要方面,有时被认为是RBAC的主要动机。一个常见的例子是相互脱节的角色,例如采购经理和应付帐款经理。在大多数组织中,同一个人不会被允许成为这两个角色的成员,因为它会造成欺诈的可能性。这个众所周知和悠久的原则被称为职责分离。 RBAC2类似于RBAC0,除了要求有一组约束来确定RBAC0的各个组件的值是否可接受。只有可接受的值将被允许。
2.3.1.4. 合并模型 - RBAC3
RBAC3结合了RBAC1和RBAC2来提供角色层次和约束。将这两个概念结合在一起会产生几个问题。约束可以应用于角色层次本身。角色层次必须是部分订单。 这个约束是模型的基础。其他约束可以限制给定角色可能具有的高级或低级角色的数量。两个或更多的角色也可以被限制为没有共同的角色。在更改角色层级的权力已经分散的情况下,这些限制是有用的。图2.1显示了完整的Sandhu RBAC 96模型。
图:2.1 .RBAC96框架
2.4.2 NIST的RBAC模型
ANSI RBAC标准是第一个提出的模型。该模型按照四个级别的顺序进行组织,并在下一个模型级别上增加功能。这些模型是平面RBAC,分层RBAC,约束RBAC和对称RBAC。
2.4.2.1平面RBAC
平面RBAC模型捕获了当代操作系统中提到的传统组用户访问控制的特点。平面RBAC的特性要求对于任何形式的RBAC都是强制性的。 这是一个广泛部署和熟悉的模型。
2.4.2.2分级RBAC
此模型类型将角色层次结构的要求添加到平面。在RBAC特性中,从行政效率的角度来看,角色层次被认为是最有利的,并且被包含在许多商业实现中。分层RBAC可识别两种类型的角色层次结构,即支持角色任意部分排序的通用层次结构,以用作层次结构和有限层次结构,从而允许更简单的层次结构(如树或倒转树)。 虽然由任意部分顺序组成的层次结构更强大且更灵活,但树和倒转树结构是最常见的实施类型的分层RBAC。
2.4.2.3受约束的RBAC
这种模式增加了执行职责分离(SoD)政策的要求。SoD的确切形式由RBAC模型开放。为受约束的RBAC定义了两个级别,第一级支持任意部分排序,第二级支持有限层级(如分级RBAC级别)。
2.4.2.4对称RBAC
对称RBAC模型进一步将其他模型中讨论的要求扩展到包括一个界面,用于关于定义的用户或角色的权限角色审查。这些要求适用于返回给管理员的数据类型,选择直接或间接权限分配的能力以及分布式系统选择将应用权限审核的目标系统的能力。
2.4.3 ANSI INCITS 359-2004 RBAC标准
这是2004年ANSI INCITS改编的第二个RBAC模型标准。该标准将RBAC分为两个主要部分:RBAC参考模型和RBAC功能规范。RBAC参考模型提供了RBAC集合的严格定义关系。参考模型有两个主要目标,定义一个通用词汇表术语用于一致地指定要求并设置标准中包含的RBAC功能的范围。RBAC功能规范定义了管理操作中用于创建和维护RBAC元素集和关系的功能,用于执行管理查询的管理评审功能,以及用于在用户会话上创建和管理RBAC属性并作出访问控制决策的系统功能。
RBAC模型和功能规范分为四个组件,核心RBAC,分级RBAC,静态职责分离(SSD)和动态职责分离(DSD)。每个组件之间的各个关系也被提供出来。
2.4.3.1核心RBAC
核心RBAC包含五个基本数据元素集,即用户,角色,对象,
操作和权限。作为一个整体的RBAC模型基本上是根据分配给用户的角色和权限来定义的。 因此,角色是用于命名个人用户和权限之间的多对多关系的手段。另外,核心RBAC模型包含一组会话,其中每个会话都是用户与分配给用户的已激活角色子集之间的映射。
核心RBAC代表了RBAC的基本方面。RBAC的基本概念是将用户分配给角色,权限分配给角色,用户通过成为角色获取权限。核心RBAC包含的功能是用户角色和权限角色分配可以是多对多的。因此,可以将同一用户分配到多个角色,并且一个角色可以拥有多个用户。同样,对于权限,可以将一个权限分配给多个角色,并且可以将一个角色分配给多个权限。 核心RBAC包含用于用户角色审查的功能,从而可以确定分配给特定用户的角色以及分配给特定角色的用户。
作为高级审查功能,还包括一个类似的权限角色审查功能。最后,核心RBAC要求用户可以同时行使多个角色的权限。 这排除了限制用户一次激活一个角色的产品。 图2.2显示了核心RBAC。
权限分配
对象
操作
PRMS
用户分配
角色—会话
用户—会话
角色
会话
用户
图2.2 核心RBAC
核心RBAC的定义:
USERS,ROLES,OPS和OBS分别代表用户,角色,操作和对象。
,用户与角色之间的多对多映射
分配用户:角色r到一组用户的映射
,是权限和角色之间的多对多映射关系
分配权限:角色r到一组权限的映射
主体用户,将主体映射到主体的关联用户
主体角色,主体s到一组角色的映射
核心 RBAC模型有两个属性
- 角色授权—— 表明某个主体永远不会拥有未经其用户授权的角色。
- 对象访问授权。只有存在包含在主体的活动角色集中的角色并且存在分配给角色的权限以使该权限授权对对象执行操作时,主体才能对对象执行操作。
2.4.3.2分级RBAC
分层RBAC添加了支持角色层次结构的功能。层次结构在数学上是一种部分顺序,定义角色之间的资历关系,高级角色获得其后辈的权限,初级角色获得其前辈的用户成员身份。该标准识别两种类型的角色层次结构。 这些是通用分级RBAC和有限分级RBAC。
通用分层RBAC--这支持任意部分顺序作为角色以包含角色中权限和用户成员关系的多重继承概念。一般角色层次结构允许角色具有多个直接父辈(可能从多个源继承用户成员资格),同时还有一个或多个直接后代(可能继承多个来源的权限)。有限的分层RBAC - 某些系统可能会对角色层次结构施加限制。
最常见的是,层次结构仅限于简单的结构,如树结构或反转的树结构。图2.3显示了分层RBAC。
角色分级
对象
角色
用户
操作
用户分配
权限分配
PRMS
会话—角色
用户—会话
会话
图2.3 分层RBAC
一般角色层次结构的定义:
是角色上的部分顺序,称为继承关系,写为ge;,r1ge;r2意味只有当r2的所有特权也是r1的权限,且r1的所有用户也都是r1时,r1才是r2的用户。
授权用户:在角色层次结构中将角色r映射到一组用户上
授权权限:角色层次结构中角色r到一组权限上的映射
2.4.3.3职务关系的静态分离
分离职责关系被用来执行利益冲突政策。 基于角色的系统中的利益冲突可能是由于用户获得与冲突角色相关的权限授权的结果。防止这种形式的利益冲突的一种手段是静态职责分离,即强制将用户分配给角色。这种静态约束的一个例子是两个角色互斥的要求。例如,如果一个角色请求支出,另一个角色批准支出,则组织可以禁止将同一用户分配到两个角色。静态职责分离(SSD)关系会限制用户对角色的分配。根据执行的SSD规则,一个角色中的成员可能会阻止用户成为一个或多个其他角色的成员。
在层次结构存在的情况下,职责的静态分离与基本SSD的工作方式相同,只是在执行约束时要考虑继承角色以及直接分配的角色。针对定义角色集的用户角色分配约束,SSD被定义为一对(角色集,n),其中没有用户配给角色集n或来自于角色集中的更多角色。因此,存在各种SSD策略。例如,用户可能无法分配给指定角色集中的每个角色,而强大的相同功能部署可能会限制用户被分配到角色集中两个或更多角色的任意组合。图2.4显示了分层RBAC中的SSD
SSD
角色分级
对象
角色
用户
操作
用户分配
权限分配
PRMS
会话—角色
用户—会话
会话
图2.4分层RBAC中的SSD
静态SoD的形式定义:静态SoD如果任何
全文共9301字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[16370],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。