您好,欢迎光临本网站![请登录][注册会员]  
文件名称: RBAC模型
  所属分类: 其它
  开发工具:
  文件大小: 197kb
  下载次数: 0
  上传时间: 2019-03-17
  提 供 者: weixin_********
 详细说明:NULL 博文链接:https://snowelf.iteye.com/blog/573158础上实现,这有利于保持原有系统中的控制关系。在这种情况下,角色相当于 个策略不见,与用户组的授权及责任关系相联系,而用户组是实现角色的机制, 因此,两者之间是策略与实现机制之间的关系 虽然RBAC是一种无确定性质策略的模型,但它支持公认的安全原则:最小特权 原则、责任分离原则和数据抽象原则。最小特权原则得到支持,是因为在RBAC 模犁中可以通过限制分配给角色权限的多少和大小来实现,分配给与某用户对应 的角色的权限只要不超过该用户完成其任务的需要就可以了。 责任分离原则的实现,是因为在RBAC模型屮可以通过在完成敏感仁务过程屮分 配两个责任上互相约束的两个角色来实现,例如在清查账目时,只需要设置财务 管理员和会计连个角色参加就可以了。 数据抽象是借助于抽象许可杈这样的概念实现的,如在账目管理活动屮,可以使 用信用,借方等抽象许可权,而不是使用操作系统提供的读、写、执行等具体的 许可权。但RBAC并不强迫实现这些原则,安全管理员可以允许配置RBAC模型 使它不攴持这些原则。因此,RBAC文持数据抽象的程度与RBAC模型的实现细节 有关。 在20世纪90年代期间,大量的专家学者和专门研究单位对RBAC的概念进行了 深入研究,先后提出了许多类型的RBAC模型,其中以美国 George Mason大学信 息安仝技术实验室(LIST)提出的RBAC96模型最具有系统性,得到普遍的公认 RBAC96是一个模型族,其中包括RBAC`RBAC3四个概念性模型。基本模型RBAC 定义了完全支持RBAC概念的任何系统的最低需求。RBAC1和RBAC2两者都包含 RBAC,但各自都增加了独立的特点,它们被成为高级模型。在RBAC1中增加了角 色分级的概念,一个角色可以从另一个角色继承许可权。RBAC2增加了一些限制, 强调在RBAC的不同组件中在配置方面的一些限制。 RBAC1和RBAC2之间是不可比的。RBAC3被成为统一模型,它包含了RBAC1和RBAC2, 利用传递性,也把RBAC包括在内。这些模型构成了RBAC96模型族。图ap08-01 表示了族内各模型间的关系,图ap08-02是RBAC模型的概念示意图 RBAC RBAe RBAC RbAe 图H.1.RBAC96内各模型间的关系 RH 角色等级 UM 用户指派 PA许可 用户 R 权指派 P 角色 许可 权 色 会话集S 多对多 限制 对多 一对 (b)RBAC3模型 图H.2.RBAC96模型族 H.3.基本模型RBAC RBAC0的模型结构可以参看图ap08-02,但需要把途中的限制和角色等级两部分不 包含在RBAC模型中。该模型中包括用户(U)、角色(R)和许可权(P)的那个 三类实体集合,此外还有一个会话集合(S)。 其中用户代表一个组织的职员;角色表示该组织内部的一项任务的功能或某个工 作职务,它也表示该角色成员所拥有的权利和职责;许可权是用户对系统中各课 题访问或操作的权利,客体是指系统中的数据客体和资源客体,例如,目录、文 件、记录、端口、设备、内存或子网都是客体。 许可权因客休不同而不同,例如,对于目录、文件、设备、端口等类客休的操作 权是读、写、执行等;对应数据库管理系统的客体是关系、元素、属性、记录 库文件、视图等,相应的操作权是 Select、 Update、 Delete、 Insert等;在会 计应用中,相应的操作权是预算、信用、转移、创建和删除一个账目等。 图ap08-02说明了关系用户指派UA( User assignment)与许可权指派PA ( Permission assignment)的含义,两者都是多对多的关系。RBAC的关键就在 于这两个关系,通过它们,一个用户将最终获得某些许可权并执行的权力。从图 中角色的位置可以看粗,它是用户能够获取许可权的中间媒介。 会话集中的每个会话表小一个用户可以对应多个角色(指向角色有两个箭头) 在某个会话的持续期间,一个用户可以同时激活多个角色,而该用户所获得的许 可权是所有这些角色的所拥有许可权的并集。 每个用户可以同时打开多个回话,每个会话都可以在工作站屏幕上川一个窗口显 示。每个会话可以有不同活动角色的组合。 RBAC的这一特点将受到最小特权原 则的限制。如果一个用户在一次会话中激活所有角色的权利超过该用户被允许的 权利,将受到最小权利原则的限制。 模型的形式定义如下 定义1RBAC模型由以下描述确定 U、R、P、S分别表示用户集合、角色集合、许可权集合和会话集合。 PAP×R表示许可权与角色之问多对多的指派关系。 UAU×R表示用户与角色之间多对多的指派关系。 川户:S→U每个会话s到单个用户user(s)的映射函数(常量代表会话的声明 周期)。 角色:S→2每个会话s到角色子集 roles(s){ r user(s,r’)∈UA(能随时 间改变)的映射数,会话S有许可权U∈ roles(s){p|(p,r)∈PA}。 在使用RBAC模型时,应该要求每个许可权和每个用户至少应该被分配给一个角 色。两个角色被分配的许可权完全一样是可能的,但仍是两个完全独立的角色, 用户也有炎似情况。角色冋以适岀的被看做是一种语乂结构,是访问控制策畩形 式化的基础。 RBAC把许可权处理未非解释符号,因为其精确含乂只能由实现确定且与系统有 关。RBAC中的许可权只能应用于数据和资源类客体,但不能应用于模型本身的 组件。修改集合U、R、P和关系PA和UA的权限称为管理权限,后面将介绍RBAC 的管理模犁。因此,在RBAC中假定只有安全管理员才能修改这些组件。 会话是由单个用户控制的,在模型中,用户可以创建会话,并有选择的激活用户 角色的某些子集。在一个会话中的角色的激活是由用户来决断的,会话的终止也 是由用户初始化的。 RBACO不允许由一个会话去创建另一个会话,会话只能由用 户创建。 H.4.角色分级模型RBAC1 RBAC1模型的特色是模型中的角色是分级的,不同级别的角色由不同的职责与权 力,橘色的级别形成偏序关系。图ap08-03说明了角色等级的概念。在途屮位置 处于较高处的角色的等级高于较低位置角色的等级。利用角色的分级概念可以限 制承的范围( scope)。 测试员 管理员 程序员 测试员 程序频 项目成员 图H.3.角色分级的概念 图中项目成员的等级最低,角色程序员和测试员的等级都高于角色项目成员,并 都可以继承项目成员的权利;角色管理员兵有最高的等级,它可以继承测试员和 程序员的权利。为了满足实际组织中一个角色不完全继承另一个角色所有权利与 责任的需求,模型中引入了私有角色的概念,如图中的测试员和程序员’分别是 测试员和程序员的私有uese,它们可以分别继承测试员和程序员的某些专用权 利 显然,角色的等级关系具有自反性(自己可以继承自己)、传递性(A继承B,B 继承C,则A继承C)和反对称性(A继承B,B继承A,则A=B),因此是偏序 关系,下面是RBAC1的形式定义。 定义 由以下内容确定 U、R、P、S分别表示用户集合、角色集合、许可权集合和会话集合。 PAP×R表小许可权与角色之间多对多的指派关系 UAU×R表示用户与角色之间多对多的指派关系 RHRXR是对R的偏序关系,称为角色等级或角色支配关系,也可用≥符号表示 用户:S→U每个会话s到单个用户user(s)的映射函数(常量代表会话的声明 周期)。 角色:S→2每个会话s到角色子集 roles(s)r(r≥r)[user(s,r)∈UA (能随时间改变)的映射函数,会话s有许可权U∈ roles(s){p(r≤ )[(p,r’’)∈PA] H.5.限制模型RBAC2 RBAC2模型是在RBAC模型增加限制后形成的,它与RBAC1并不兼容。RBAC2定义如 定义 除了在RBAC中增加了一些限制因素外,RBAC2未加改变的来自于 RBAC,这些限 制是用于确定RBAC中各个组件的值是否是可接受的,只有那些可接受的值才是 允许的。 RBAC2中引入的限制可以施加到RBAC模型中的所有关系和组件上。RBAC2中的 个基本限制时互斥角色的限制,互斥角色是指各自权限克一互相制约的两个角 色。对于这类角色一个用户在某一次活动中只能被分配其中的一个角色,不能同 时获得两个角色的使用权。 例如,在审计活动中,一个角色不能同时被指派给会计角色和审计员角色。又如, 在公司中,经理和副经理的角色也是互斥的,合同或支票只能由经理签字,不能 由副经理签字。在为公司建立的RBAC2模型中,一个用户不能同时兼得经理和副 经理两个角色。模型汇总的互斥限制可以攴持权责分离原则的实现。 更般化而言,互斥限制可以控制在不同的角色组合中用户的成员关系是否是可 接受的。例如,一个川户可以既是项日A的程序言,也可以是项日B的测试员和 项目C的验收员,但他不能同时成为同一个项目中的这3个角色。RBAC2模型可 以对这种情况进行限制。 一个用户指派限制的例子是一个角色限制其最大成员数,这被称为角色的基数 限制。例如,一个单位的最高领导只能为1人,屮层干部的数量也是有限的, 分配给这些角色的用户数超过了角色基数的限制,就不接受新配给的用户 限制角色的最小基数实现起来有些困难。例如,如果规定占用某个角色的最小用 户数,问题是系统如何在仟何时刻都能知道这些占用者中的某个人没有消失,如 果消失的话,系统又应该如何去做。 在为用户指派某个角色A时,在有的情况下要求该用户必须是角色B的一个成员, B角色成为角色A的先决角色。先决角色( Prerequisite roles)的概念来自于 能力和适应性。对先决绝对的限制成为先决限制。一个通俗的例子是,一个数学 副教授应该从数学讲师中提拔,讲师是任副教授的先决角色。但在实际系统中 不兼容角色之间的先决限制的情况也会发生。 在图ap08-03中,可以限制只有本项目的成员才有资格担任程序员的角色,通常 在一个系统中,先决角色比新指派的角色的级别要低一些。但有的情况下,却要 求只有当用户不是某个特殊角色时,才能担任另一个角色A。如,需要执行回避 策略时需要这样做,例如,本课题组成员不应当是本项目成果鉴定委员会的成员。 这类限制也可以推广到许可权方面。 由于用户与角色的作用会与会话联系在一起,因此对会话也可以施加限制。例如, 可以允许一个用户被指派给两个角色,但不允许在同时间内把该用户在两个角 色中都激活。另外,还可以限制一个用户在同一时间内可以激活的会话的数量, 相应的,对该用户所激活的会话中所分配许可权的数量也可以施加限制 前面提到的继承概念也可以视为一种限制。被分配给低级别角色的权限,也必须 分配给该角色的所有上级角色。或等价的,一个指派给较高级别的角色的用户必 须指派给该角色的所有下级角色。因此从某种角度上讲,RBAC1模刑是冗余的, 它被包含在RBAC中。但RBAC1模型比较简洁,用继承代替限制可使概念更清晰。 实现时可以用函数来实现限制,当为用户指定角色或为角色分配权限时就调用这 些函数进行检査,根据函数返回的结果决定分配是否满足限制的要求,通常只对 那些可被有效检査和那些惯例性的一些简单限制给与实现,因为这些限制可以保 持较长的时间。 模型中的限制机制的冇效性建立在每个用户只冇唯标识符的基础上,如果·个 实际系统支持用户拥有多标识符,限制将会失效。同样,如果同一个操作可以有 两个以上的许可权来比准,那么,RBAC系统也无法实施加强的基本限制和责任 分离饿限制。因此要求用户与其标识符,许可与对应的操作之间一一对 H.6.统一模型RBAC RBAC3把RBAC和RBAC2组合在一起,提供角色的分级和继承的能力。但把这两种 概念组合在一起也引起一些新问题。 限制也可以应用于角色等级本身,由于角色间的等级关系满足偏序关系,这种限 制对模型而言是木质性的,可能会影响这种偏序关系。例如,附加的限制可能会 限制一个给定角色的应有的下级角色的数量。 两个或多个角色由可能被限制成没有公共的上级角色或下级角色。这些类型的限 制在概念角色等级的权力己经被分散化的情况下是有用哦,但是安全主管却希望 对所有允许这些改变的方法加以限制。 在限制和角色的等级之间也会产生敏感的相互影响。在图ap08-03的环境中, 个项目成员不允许同时担任程序言与测试员的角色,但项目管理员所处的位置显 然是违反了该限制。在某种情况i下由高等级的角色违反这种限制是可接受的, 但在其他情况下又不允许这种违反现象发生。 从严格性的角度来讲,模犁的规则不应该是一些情况下不允许而在另情况下是 允许的。类似的情况也会发生在对基数的限制上。假定限制一个川户之多能分配 给一个橘色,那么对图中的测试员的一个指派能够未被这和限制吗?换句话说, 基数限制是不是只能用于直接成员,是否也能应用于继承成员上? 私有角色的概念可以说明这些限制是有川的。同样在图ap08-03的环境中,可以 把测试员’,程序员’和项目管理员3个角色说明为互斥的,它们处于同一等级, 没有共同的上级角色,所以管理员角色没有违反互斥限制。通常私有角色和其他 角色之间没有公共上级角色,因为它们是这个等级的最大元素,所以私有角色之 间互斥关系可以无冲突的定义。 诸私有角色之间的相同部分可以被说明为具有0成员的最大技术限制。根据这种 方法,测试员必须被指派给测试员这个角色,而测试员角色就作为与管理员角 色共享许可权的一种工具。 在前面的讨论中,我们都假设RBAC的所有组件都是由单个的安全员来管理里 但是,对于一个大系统而言,系统中的角色可能成百上千,再加上它们之间的复 杂关系,使得集中式的管理任务成为非常可怕的工作,因此通常由几个管理员小 组来完成。能否用RBAC管理自己本身呢? RBAC的管理模型示于图ap08-04。该图的上半部分本质上与图ap08-02相同,图 中的限制时针对所有成分的,图的下半部分是对上半部分关于管理角色AR和管 理许可权AP与正规角色集R和许可权集P是分别不可相交的。这个模型显小 正规许可权只能分配给正规角色(RBAC模型中定义的角色),管理许可杈只能 分配给管理角色。 H.7.定义4 管理许可权AP有权改变组成 RBAC、RBAC1、RBAC2或RBAC3的所有成分,但正规 许可权P不能。管理许可权与正规许可权不相交,即AP∩P。管理许可权和正 规许可权只能分别分配给管理角色AR和正规角色R,并且AR∩R RH UA用户、角色等级 U 指派 PA许可 用户 R 权指派 P许 角色 可权 用户 角色R 侩话集S ,多对多 限制 多 角色等级 AR AI arh 管理 管理 管理 角 APA管理许可 角色等级 许可权指权 图H.4.管理模型示意图 在图ap08-04的上半部可以对应RBAC、RBAC1、RBAC2和RBAC模型,类似地下半 部可以对应 ARBAC、 ARBAC、 ARBAC2和 ARBAC3模型,此处的A表小“管理”。 ARBAC。^ ARBAC3形成了RBAC的管理模型族,成为 ARBAC97。通常我们期望管理模 型比RBAC模型本身简单一些,因此可以利用 ARBAC管理RBAC3,而不是用 ARBAC3 去管理RBAC模型。 H.8.在 ARBACS7中,包括三种组件 URA87:用户-角色指派。该红件涉及用户-指派关系UA的管理,该关系把用户与 角色关联在一起。对该关系的修改杈由管理角色控制,这样,管理角色中的成员 有权管理正规角色中的成员关系。把一个用户指定为管理角色是在URA97以外完 成的,并假定是由安全员完成的 PRA97:许可杈-角色指派。该组件涉及角色-许可权的指派与撤销。从角色观点 来看,用户和许可权类似的特点,它们都是由角色联系在一起的实在实体。因 此,可以把PRA97看做是URA97的对偶组件。 RRA97:角色-角色指派。为了便于对角色的管理,对角色又让行了分类。该组件 涉及3类角色,它们是: 1.能力( abilities)角色—一进以许冂权和其他能力做成成员的角色, 2.组( Groups)角色—仅以用户和其他组为成员的一类角色。
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: RBAC模型
 输入关键字,在本站1000多万海量源码库中尽情搜索: