当前位置:文档之家› 4基于角色的访问控制v10

4基于角色的访问控制v10

1995年Ravi Sandhu等人对NIST的成员于 92年提出的RBAC模型和理论进行了扩展,提 出了RBAC0,并构造了RBAC96模型族
26
第四讲 基于角色的访问控制 (Role-Based Access Control)
一 什么是基于角色的访问控制 在一个组织机构里系统为不同的工作
岗位创造对应的角色,对每一个角色分配 不同的操作权限,根据用户在组织机构中 的职责或任务为其指派相应的角色,用户 通过所分配的角色获得相应的权限,实现 对信息资源的访问.
分组访问控制的联系
15
用户访问客体 用户身份 分组
该项权限在分组中被移除时,分组中的用户以用户 身份访问客体时,也应该没有该项权限。但基于个 人用户身份识别的权限分配方案中有漏洞
因此,RBAC要求所有访问均通过角色完成,这样 在实际应用中消除了这个漏洞,很大程度上加强了 系统安全性
16
Ferraiolo-Kuln模型的另一个重要特性是角色层次 ——角色能从其它角色继承权限——而分组则通常 被认为是同级用户的集合
33
(5)roles: S→2R,会话和角色子集的映射, roles(si)表示会话si对应的角色集合; roles(si){r| (user(si), r )∈UA}
(6)会话si具有的权限集
Psi {p | ( p, r) PA}
rroles(si )
34
例:设U={u1,u2,u3}={张,王,李} R={r1,r2} ={外科医生, 内科医生} P={p1,p2,p3}={开外科药,做手术,开内科药}
第四讲 基于角色的访问控制
世界上首个安全处理系统的诞生
在1879年,美国俄亥俄州代顿市一个名 为詹姆士·里提的酒馆老板设计出“清 廉的出纳员”,即随后广为人知的现金 出纳机
1
第四讲 基于角色的访问控制
通过在顾客的完全注视下录入出售量,这样 一项交易就被记入现金记录机,而且只有在 此时店员才被允许使用存储现金的抽屉
20
1996年,Sandhu和同事提出了RBAC模型的一个框 架,RBAC96,将RBAC分成四个概念模型
一个基础模型RBAC0,它包含一个实现RBAC系统 的最起码的特性。两个经过发展的模型,RBAC1和 RBAC2支持层次结构和如SoD约束。第四个部分, RBAC3,包括了级别较低模型的所有方面。 Sandhu等人的RBAC96框架为RBAC系统制定了一 个模块结构,简化了拥有基本RBAC0功能,或依 客户所要求拥有更先进功能的商业实现
17
心脏病专家
肿瘤专家
内科医师
住院医生
18
George Mason大学的教授Ravi Sandhu,一位著名的 有影响力的安全专家,形容Ferraiolo-Kuhn的RBAC 安全模型为
“一项重大的创新,它使RBAC模型成为一项应用 程序服务……不是散射安全应用程序代码,RBAC 在一个统一的服务标准上巩固安全,更有适应性的 和单独应用程序的专用化能力,使系统更加容易管 理”
9
保证机密性的常规MAC对这些机构来说也不合适
1992年,Ferraiolo和Kuhn提出了满足这些需要的 解决方案,他们将现有的面向特定应用的方案的特 点融合在一起,提出了一个广义的RBAC模型
论文用一种简单而正式的方式进行描述,包括集合, 关系,映射用于界定角色和作用层次结构,主体角 色的激活作用,以及限制用户的角色成员和角色设 置激活
24
在当今IT基础设施中,RBAC应用普遍存在
今天,RBAC功能包含在各个级别的企业事务处理 中,包括操作系统、数据库管理系统、网络和企业 管理层次
RBAC被纳入整合到基础技术中,如公共密钥基础 结构(PKI),工作流管理系统和目录及网络服务
此外,RBAC正被拟议作为在协作和虚拟企业系统 中定制元策略的一项关键技术
23
2000年,NIST开始努力建立一个国际公认的RBAC 标准,在RBAC研讨会中提出了这个提案。拟议的 标准遵循RBAC96结构,具体详细的特性由后续讨 论和研究团体及商业团体提出的评论来制定
在2002年,拟议的标准在提交到国际标准的过程 中,商业公司已经开始生产符合RBAC标准的产品
1996年的美国健康保险流通与责任法案(HIPAA) 明确地要求了RBAC的必要条件 美国联邦航空引用RBAC为国家航空系统的安全规 范
25
结论:
80年代末90年代初,NIST(美国国家标准技 术研究所)的安全专家(David.F Ferraiolo等) 对质疑TCSEC(可信计算机系统评估准则)和 MAC/DAC能否适应日益增长的安全需求,并 提出了新的访问控制技术-RBAC。一些安全 专家开始转向这个领域的研究如George Mason U的Ravi Sandhu
所有的系统资源,如文件、打印机和终端,都有一 张与授权用户相联系的表(授权表)。这种方式可 以简单而快捷地回应:“什么用户有权访问客体 X?” “主体X能访问哪些客体?”回答这个问题 需要搜索计算机系统中所有的客体,而客体及对应 的授权表的数量可能有百万之多;最后报告用户X 能访问哪些客体
13
在真实系统上进行的实验测量显示,这个过程需要 的时间可能会超过一天
21
Sandhu 等人的 RBAC96 框架
RBAC3
RBAC1
RBAC2
RBAC0 RBAC96模型族
22
主要因为NIST的Sandhu和David Ferraiolo教授所创 立的计算机协会(ACM)发起的一系列讨论会, 一个健全的RBAC研究团体建立起来了,而且在当 今的商业实现上创造出了比以往任何时候都更为复 杂的RBAC系统
虽然约束种类未详细规定,但在模型中规定了角色 成员资格的约束
这份1992年的论文指出该模型包含了Clark-Wilson 模型(也就是说Clark-Wilson模型是当中的一个特 例)。后来NIST的发表了一份对RBAC更加详细的 研究,提出了一些1992年的模型中没有的额外的 功能,而且包括为了实现职责分离需求的具体形式 的制约因素
P×R={(p1,r1),(p1,r2),(p2,r1),(p2,r2),(p3,r1),(p3,r2)} PA ={(p1,r1),(p2,r1),(p3,r2)} UA={(u1,r1),(u1,r2),(u2,r1),(u3,r2)} u1{r1,r2} {p1,p2,p3} u2 {r1} {p1,p2} u3 {r2} {p3}
4
在八十年代末九十年代初,研究人员开始意识到 角色的优点,它是从应用软件和数据库管理系统中 提取出来的管理权限 角色可以看作是一个组织中的位置或是职位。角色 是一个独立的结构,它不同于用户,而用户则可以 被指派角色
5
Dobson和McDermid使用功能角色术语 Baldwin称这些结构为指定保护域(NPDs),而且 NPD的子集能联系组合在一起形成层次结构
3
RBAC简单概念:基于用户在组织中扮演的角色来 控制用户访问计算机系统中的客体 在商业组织问控制中,拥有不同权限和职责的角色 早就被人注意到,至少从七十年代就有商业计算机 应用软件实现基于用户在组织中的角色约束其访问 能力
例如:在那时,在线银行事务软件包括出纳员和出 纳监督员,他们可以基于同一个数据库执行不同的 固定的一套事务,而在同时使用自动出纳机的用户 能够执行另一套事务
用户-角色- 权限
27
28
用户、角色、权限的关系
如下2个图所示: 图1
用户1 用户2 成员资格
角色i
权限2
…… ……
用户n
29
图2
角色1
用户i
角色2
… …
角色r
由此:用户与角色-多对多 角色与权限-多对多
用户与权限-多对多

… …
… ……
操作11 操作12 操作21
操作r1 操作r2
30
RBAC的特点
RBAC开始出现在广泛的应用领域。Barkley早期成 果表明,RBAC应用天生安全。工作流管理,处理 商业程序的自动化操作,在这个领域RBAC似乎是 非常的合适,不仅提供安全保障,而且还可以作为 工作流的框架。
Barkley,Cincotta,Bertino,Ferrari及Atluri介绍了基
于RBAC的工作流系统
里提的发明减轻了店员偷窃这个普遍存在的 难题。通过记录销售量和记录不断增长的合 计量,记录机使商店老板保证当天实际收入 和记录的销售总量一致成为可能
2
访问控制的定义与模型在七十年代早期就 有所显现,在八十年代成功地形成早期的标 准
RABC的出现则是在九十年代早期,直至 发展到如今
像BLP形式化的多级安全策略一样,RBAC 来源于比正式模型早的历史实践,只不过 RBAC的重要特性起源于商界
角色也支持最小特权原则,其中角色由完成任务的 需要的最小权限组合而成
Brewer和Nash模型提出了一个基本的理论,用于 有力地执行访问权限的变化
6
该模型用详细的商业安全策略术语说明,就是有名 的“中国墙”
模型首先解释了中国墙的意思,然后定义了一组规 则(SoD所需求的),即是用户不能从墙的错误的 那一边访问数据
RBAC0 RBAC96模型族
RBAC2: 在 RBAC0 的 基 础 上 加 上 了 约束集合
RBAC3: RBAC1 的功能和RBAC2的 功能的集合
32
1. RBAC0的定义 (1) U:表示用户集 R:表示角色集 P:表示权限集 S:表示会话集 (2) PAP×R,是权限到角色的多对多的指派 (3) UA U×R,是用户到角色的多对多的指派 (4) user: S→U,会话和用户的单一映射, user(si)表示创建会话si的用户;
Nash和Poland论述了基于角色的安全应用,它作 为密码鉴定装置在银行业中普遍使用
相关主题