(计算机应用技术专业论文)基于角色的访问控制(rbac)及其在数字图书馆网站中的应用.pdf_第1页
(计算机应用技术专业论文)基于角色的访问控制(rbac)及其在数字图书馆网站中的应用.pdf_第2页
(计算机应用技术专业论文)基于角色的访问控制(rbac)及其在数字图书馆网站中的应用.pdf_第3页
(计算机应用技术专业论文)基于角色的访问控制(rbac)及其在数字图书馆网站中的应用.pdf_第4页
(计算机应用技术专业论文)基于角色的访问控制(rbac)及其在数字图书馆网站中的应用.pdf_第5页
已阅读5页,还剩89页未读 继续免费阅读

(计算机应用技术专业论文)基于角色的访问控制(rbac)及其在数字图书馆网站中的应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 访问控制是安全服务体系结构的重要组成部分,是对资源和服务 使用的限制,决定主体是否对客体有权进行某种操作。基于角色的访 问控制( r b a c ) 作为一种新型的访问控制技术成为近年来访问控制领 域研究的热点。 本论文研究基于角色的访问控制技术及其在数字图书馆门户网站 系统中的应用。论文首先介绍了自主访问控制( d a c ) 模型、强制访 问控制( m a c ) 模型和基于角色的访问控制( r b a c ) 模型。然后详 细讨论了r b a c 9 6 和p d t b a c 9 7 两种模型。r b a c 的建模和实现技术 是目前r b a c 技术研究的热点和难点,目前,在w e b 上已有一些r b a c 的实现方案,但是其灵活性和适用性较差。通过详细研究现有的在w e b 上构建r b a c 应用系统的方法,我们提出一种新的解决方案。这种方 案利用关系数据库表述用户、角色、权限,用户角色分配,角色权限 分配来实现r b a c ,同时结合加密技术和c o o k i e s 验证技术,我们称 该方案为w - r b a c 。 石家庄信息工程学院的数字图书馆门户网站系统是基于n e t 技术 的w e b 应用系统。其访问控制部分采用基于角色的访问控制,系统成 功的实现了w r b a c 访问控制方案,并取得了良好的效果。在成功的完 成系统开发之后,作者也对r b a c 在w e b 上的实现与w e b 应用系统开发 做了进一步的研究与讨论。 关键词:访问控制,角色,r b a c ,w - r b a c ,数字图书馆,w e b 应用系统 英文摘要 a b s t r a c t a c c e s sc o n t r o li so n eo ft h em o s ti m p o r t a n tp a r t so fs e c u r i t ys e r v i c e a r c h i t e c t u r e i td e t e r m i n e sw h e t h e rs u b j e c t sa r ep e r m i t t e dt oa c c e s so b j e c t s r o l e b a s e da c c e s sc o n t r o l ( r b a c ) i sb e c o m i n gt h ef o c u si nr e s e a r c hf i e l d o fa c c e s sc o n t r 0 1 i nt h i sp a p e r ,w er e s e a r c hr b a ca n di t sa p p l i c a t i o ni nd i g i t a ll i b r a r y w e b s i t e d i s c r e t i o n a r ya c c e s sc o n t r o l ( d a c ) ,m a n d a t o r ya c c e s sc o n t r o l ( m a c ) ,a n d r o l e - b a s e da c c e s sc o n t r o l ( r b a c ) a r ei n t r o d u c e df i r s t l y t h e n r b a c 9 6a n da r b a c 9 7a r ea n a l y z e di nd e t a i l a l t h o u g hs o m es o l u t i o n s c a ni m p l e m e n tr b a c ,t h e i r f l e x i b i l i t ya n dp o r t a b i l i t ya r en o te n o u g h w e p r o p o s e an e ww a yt o i m p l e m e n tr b a c o nt h ew e b i nt h es o l u t i o n , r e l a t i o nd a t a b a s ed e s c r i b e s u s e r s ,r o l e s ,p e r m i s s i o n s ,u s e r r o l e a n d r o l e p e r m i s s i o n e n c r y p t i o nt e c h n i q u e s a n dc o o k i e sv e r i f i c a t i o n t e c h n i q u e sa r ea d o p t e d a sw e l l w ec a l lt h i ss o l u t i o nw - r b a c t h ed i g i t a ll i b r a r yw e b s i t eo fs h i j i a z h u a n gi n f o r m a t i o ne n g i n e e r i n g c o l l e g e i saw e b a p p l i c a t i o ns y s t e m b a s e do n n e t w - r b a ci s s u c c e s s f u l l yi n t e g r a t e di n t h es y s t e ma n dh a sag o o dp e r f o r m a n c ea n d s u i t a b i l i t y w ea l s od i s c u s s e dt h ep r o b l e m sw h e ni m p l e m e n t i n gr b a c o n t h ew e ba n di t sa p p l i c a t i o ns y s t e m k e y w o r d :a c c e s sc o n t r o l ,r o l e ,r b a c ,w - r b a c ,d i g i t a ll i b r a r y , w e b a p p l i c a t i o ns y s t e m 2 关于论文使用授权的说明 本人完全了解北京交通大学有关保留、使用学位论 文的规定,即:学校有权保留送交论文的复印件,允许 论文被查阅和借阅;学校可以公布论文的全部或部分内 容,可以采用影印、缩印或其他复制手段保存论文。论 文中所有创新和成果归北京交通大学计算机与信息技术 学院所有。未经许可,任何单位和个人不得拷贝。版权 所有,违者必究。 本人签名: e l 期:l 月一日 独创性声明 本人声明,所呈交的学位论文是我个人在导师指导 下进行的研究工作及取得的研究成果。尽本人所知,除 了文中特别加以标注和致谢的地方外,论文中不包含其 他人已经发表或撰写过的研究成果,也不包含为获得北 京交通大学或其他教学机构的学位或证书而使用过的材 料。与我一起工作的同志对本研究所做的任何贡献已在 论文中作了明确的说明并表示了谢意。 本人签名: 日期:年一月一日 第一章综述 第一章综述 1 1 信息安全概述 现代信息系统的飞速发展是以计算机以及计算机网络系统的飞速 发展为标志的。信息是人类最宝贵的资源。信息也在人类社会活动、 经济活动中起着越来越重要的作用。然而信息系统越是重要,越容易 受到攻击,如窃取、冒充、伪造、篡改等等。因此,信息系统的安全 保密成为迫切需要解决的问题。 所谓信息系统安全,是指为信息处理系统建立和采取的技术和管 理的安全保护措旌,以保护计算机系统中的硬件、软件及数据,防止 其因偶然或恶意的原因而使系统或信息遭到破坏、更改或泄露f 2 4 】。根 据i s o1 7 7 9 9 对信息安全的定义,信息安全的三个特征是: ( 1 ) 保密性:确保只有被授权的人才可以访问信息; ( 2 ) 完整性:确保信息和信息处理方法的准确性和完整性; ( 3 ) 可用性:确保在需要时,被授权的用户可以访问信息和相关 的资产。 信息系统安全性问题被区分为三大类,技术安全类、管理安全类 和政策法律类。技术安全是指计算机系统本身实现中,采用具有定 的安全性质的硬件、软件来实现对于数据及其所包含的数据或信息的 安全保护,能够在整个系统中,在一定程度甚至完全可以保证系统在 无意或恶意的软件或硬件攻击下仍能使得系统内的数据或信息不增 加、丢失、泄露i “。 信息系统的安全保密研究的对象是系统,而不仅是系统中某个或 某些分离的元素,系统内所有元素或成分都是作为有机的整体进行研 北京交通人学硕士学位论文 究的内容。从技术角度看,信息系统安全问题的研究内容至少包括通 信安全、计算机安全、操作安全、人事安全、工业安全等内容口i 。从 软件的角度看,对于信息系统安全应考虑以下几个方面的内容:操作 系统安全、数据库管理系统安全、网络安全以及应用系统安全。这四 个方面的内容是相辅相成、缺一不可的。例如:一个应用系统,不管 其自身具有如何强大的安全措施,如果它是建立在脆弱的操作系统基 础上的,那么这个系统的安全性是无法保障的。 一个完整的安全信息系统要综合地使用身份鉴别、访问控制、数 据加密、安全审计、安全管理等安全技术【2 l 】。在现实环境中,没有任 何一项技术能够单独地解决安全问题。在这些安全技术中,访问控制 起着极其重要的作用,它是安全策略在系统运行中的集中表现。作为 国际化标准组织定义的五项标准安全服务之一,访问控制技术是实现 信息系统安全的一项重要机制,它也是本文要研究的重点问题。 1 2 访问控制研究现状 国外在六十年代就开始了计算机系统安全的研究,到y a 十年代 将计算机安全系统地分成了安全操作系统、网络安全系统、安全数据 库系统的研究。而访问控制的研究在这三个领域都是重点。 访问控制的基本措旋或是方法可以归纳为信息流向控制、推理控 制、存取控制三大类。其中应用最为广泛的是存取控制措施。这三种 控制措施都可以借助密码学的方法来加以强化。存取控制主要分为自 主型访问控制( d a c ) 和强制型访问控制( 1 u l a c ) 和基于角色的访问控 制( r b a c ) 。 传统的访问控制是自主访问控制( d a c ) 和强制访问控制( m a c ) ,它 们都已经得到了美国国防部制订的橘皮书可信计算机评估准则的 2 第一章综述 认证。但是,近几年来,人们普遍感到d a c 和m a c 无法较好的满足大 量存在的商业和政府部门系统的安全需求。因此,基于角色的访问控 制( r b a c ) 便成为人们研究访问控制方法的重点。 目前对r b a c 已有较广泛的研究,其中较为深入的是美国g e o r g e m a s o n 大学的r b a c 9 6 和a r b a c 9 7 模型,另外还有美国国家标准与技术 局( n i s t ) 研究小组的r b a c 模型,以及s q l 3r b a c 模型等。并且市场 上也有很多r b a c 产品。如嵌入到一个已经大量存在的软件包中的操作 系统w i n d o w s ,数据库o r a c l e 以及网络操作系统n e t w a r e 。或是将r b a c 产品嵌入到应用层软件工具和防火墙系统中的v e i l 和s i d e w i n d e r 。 r b a c 只是一个模型,所以当今对r b a c 的研究重点放在如何在 特定应用系统中使用这种访问控制技术。虽然目前在w e b 上有很多实 现r b a c 的方案,如l d a p 目录服务,智能认证等方案,但是这些方 案的灵活性和适用性都较差,不适合大规模多用户的w e b 应用系统。 因此,本文对r b a c 在w e b 上的实现进行了相应的研究与探讨。 1 3 课题的来源和意义 访问控制技术作为国际化标准组织定义的五项标准安全服务之 一,是实现信息系统安全的一项重要机制。访问控制技术的应用十分 广泛,操作系统、数据库系统以及应用程序等,都需要通过访问控制 技术实现对资源的合理利用和合法访问。 随着计算机系统规模的空前发展以及c s 、b s 体系结构在应用系 统中的广泛应用,越来越多的计算机系统被互联在于一起,出现了规 模庞大的开放式分布结构。面对这样的一个大规模多用户的w e b 应用 系统,安全控制是至关重要的。作者所参加的大型数字图书馆项目, 对系统安全性有严格的要求,系统必须要有严格和灵活的访问控制, 北京交通太学硕上学位论文 因而对访问控制进行更进一步的研究是十分必要的。 同时,现有w e b 应用系统的访问控制部分普遍存在安全性不高、 通用性较差、可移植性不强、效率低、灵活性差、使用不方便等问题。 因此,目前的w e b 应用系统的访问控制需要改进和提高。在这一领域 进行进一步的研究具有十分重要的意义。 1 4 所做的工作和论文结构 1 4 1 所做的工作 本人所做的工作可以总结如下: ( 1 ) 研究了三种访问控制模型d a c ,m a c 和r b a c ,尤其是基于角 色的访问控制模型( r b a c ) 。重点讨论了r b a c 9 6 模型和a r b a c 9 7 模型 并且研究了基于角色的访问控制在w e b 上的具体实现方法。 ( 2 ) 提出了r b a c 在w e b 上实现的一种方案。该方案利用关系数 据库表述用户、角色、权限,用户角色分配,角色权限分配来实现 r b a c ,同时结合加密技术和c o o k i e s 验证技术。我们称这种方案为 w - p b a c 。 ( 3 ) 将w r b a c 方案具体的应用到笔者所参加的数字图书馆门户 网站系统当中,在门户网站系统中成功的实现了w - r b a c 方案。实践证 明,该方案有很好的适用性并且易于实现。 ( 4 ) 对w e b 上实现r b a c 和w e b 应用程序相关问题进行了进一步 的研究和探讨。 1 4 2 论文的组织结构 论文的主要内容安排如下: 第二章介绍了三种主要的访问控制技术:自主访问控制( d a c ) , 强制访问控制( m a c ) 和基于角色访问控制( r b a c ) 。 4 第一章综述 第三章首先详细介绍了基于角色访问控制的经典模型:r b a c 9 6 模 型和a r b a c 9 7 模型,接着我们详细研究了基于角色的访问控制在w e b 上的实现方法。在此基础上,我们提出了在w e b 上实现r b a c 的w r b a c 方案。 第四章以前面的理论为基础,结合作者实际参加的数字图书馆项 目,详细介绍了w r b a c 方案在数字图书馆网站中的具体设计,包括系 统的体系结构,开发环境等内容。同时,结合网站的整体开发,我们 对网站的整体设计和功能设计做了一定的介绍。 第五章详细介绍了w - r b a c 基于角色访问控制方案在数字图书馆网 站中的具体实现,我们也介绍了系统相关功能模块和关键技术模块的 实现和系统测试情况。最后,作者对r b a c 的在w e b 上的实现技术以及 w e b 应用系统开发做了进一步的研究和探讨。 第六章是对所做工作的总结和对下一步工作的展望。 北京交通大学硕上学位论文 第二章访问控制 2 1 访问控制技术概述 在信息安全的研究中,主体( s u b j e c t ) 和客体( o b j e c t ) 是两个重要 概念,保护客体的安全、限制主体的访问权限构成了访问控制的主题。 这两个概念的提出使信息安全中最重要的研究内容之一的访问控制的 研究问题得以抽象化,抽象化的结果是可以模型化,这就使信息安全 的研究前进了一大步。 访问控制是一项重要的信息安全技术。它决定了用户对系统资源 可进行何种类型的访问,从而防止了合法用户对系统资源的非法使用。 传统的访问控制是自主访问控制( d a c ) 和强制访问控制( m a c ) ,它们都 已经得到了美国国防部制订的橘皮书可信计算机评估准则的认 证。但是,近年来,人们普遍感到d a c 和m a c 无法较好的满足大量存 在的商业和政府部门系统的安全需求。因此,基于角色的访问控制 ( r b a c ) 便作为传统访问控制的替代和补充而被重新提了出来。 虽然r b a c 出现于上世纪七十年代,但是一直以来,人们对它都缺 乏研究和认识。近十年来,随着r b a c 在商业和政府部门系统安全领域 的优势不断被认识,人们又掀起了研究r b a c 的热潮“2 ”。 2 2 自主访问控制 自主访问控制( d i s c r e t i o n a r ya c c e s sc o n t r o l ,d a c ) 最早出现在七 十年代初期的分时系统中,它是多用户环境下最常用的一种访问控制 技术,在流行的u n i x 类操作系统中被普遍采用,是目前计算机系统 中实现最多的访问控制机制。d a c 基于这样的思想:客体的主人 ( 资源所有者) 全权管理有关该客体的访问授权,可任意规定谁 6 第二章访问控制 可以访问它们的资源。这样,用户或用户进程就可有选择地与其 他用户共享资源。它是一种对单个用户执行访问控制的过程和措 施。因此,可以将d a c 称为“基于主人的访问控制”。 每个用户的访问权限是由系统确定的。d a c 通常使用访问控制 表或权能表来实现访问控制功能。授权状态用三元组q = ( s ,0 ,a ) 表示。其中:s 是主体的集合。主体可以是用户,用户组、进程或域 ( d o m a i n ) 。0 是客体的集合,是安全机制保护的对象。在操作系统范 畴内,0 是文件、内存空间、进程等;在数据库管理系统范畴内,o 是 数据库、关系、属性、记录、以及记录内的字段。某些主体也需要保 护,所以此处的客体也可以包括主体。a 是存取矩阵,矩阵内的项a ( s i ,o j ) 表示主体i 对客体j 的操作授权。 目前很多操作系统实现的自主访问控制不是利用整个访问控制矩 阵,而是利用基于矩阵的行或列来表达访问控制信息。 ( 1 ) 基于行的自主访问控制 基于行的自主访问控制方法是在每个主体上都附加一个该主 体可访问的客体的明细表。按照表内信息的不同,可分为3 种形 式:权利表,前缀表,口令。 ( 2 ) 基于列的自主访问控制 基于列的自主访问控制是对每个客体附加一份可访问它的主 体的明细表。它有良种形式:保护位,访问控制表。 d a c 的优点是:其自主性为用户提供了很大的灵活性,从而使 之适用于许多系统和应用。它的缺点则相当明显,主要体现在以 下几个方面。 ( 1 ) 系统管理员难以确定哪些用户对哪些资源有访问权限, 不利于实现统一的全局访问控制。 7 北京交通大学硕士学位论文 ( 2 ) 对于很多组织来说,d a c 存在滥用职权的问题。 ( 3 ) 用户问的关系不能在系统中体现出来,不易管理。 ( 4 ) 某些资源不能受到充分的保护,不完全适用于网络环境, 不能抵御特洛伊木马的攻击。 2 3 强制访问控制 强制性访问控制( m a n d a t o r ya c c e s sc o n t r o l ,m a c ) 是“强加” 给访问主体的,系统强制主体服从访问控制政策。m a c 也被称为 多级安全策略的模型,系统对每个主体和每个客体均指定或授权一个 安全存取属性,只有合法用户才能存取相应的客体。换言之,主体对 客体的访问操作,不但要受自身的安全属性限制,还要受客体的安全 属性严格限制。 最常见的强制访问控制模型是b e l ll ap a d u l a 模型。其安全级别为 b 1 ,支持m a c 导致所谓的多级安全( m l s ) 的r d b m s 。b e l ll ap a d u l a 模型中,系统中元素按其特性分为主体与客体。主体是系统的主动元 素,能执行一系列的动作,主要是指进程。客体是系统中包含信息的 被动元素,在操作系统环境下,客体可以是文件、内存空间、程序等。 主体和客体被分别赋予安全级,安全级包含两个元素:密级和范围。 主体的安全级反映主体的可信度,客体的安全级反映客体包含信息的 敏感程度。 当主体和客体的安全级满足如下两条规则时,主体便可对客体进 行相应的访问: ( 1 ) 有主体的密级不低于客体的密级且主体的范围包含了客体的 范围时,才允许该主体读该客体。 ( 2 ) 有主体的密级不高于客体的密级且主体的范围被客体的范围 第二章访问控制 所包含时,才允许该主体写该客体。 m a c 的最大优点是:它使得系统中的信息流成为单向不可逆的,防 止了信息从高安全级的客体流向低安全级的客体,从而有效的防止了 特洛伊木马的破坏。m a c 的缺点是:它只考虑了系统的机密性,而没有 考虑数据完整性和有效性的保护。例如,如果没有自主访问控制,最 低密级的主体可以删除其范围集合的所有数据,因此,m a c 机制一般不 单独使用。另外,m a c 机制无法给用户提供较大的灵活性,般适用于 保密性要求很高的多级军事系统。 2 4 基于角色的访问控制 2 4 1 r b a c 概述 基于角色的访问控制( r o l e b a s e d a c c e s sc o n t r o l ,r b a c ) 是作为 d a c 和m a c 的替代策略在近年逐渐引起关注的。r b a c 从实质上说 是一种策略中立的访问控制策略,即它本身并不提供一种特定的安全 策略,只是通过配置各种参数来实现某种安全策略,具有很大的灵活 性,允许更加广阔的访问策略得以实施。r b a c 可以被配置成传统的 m a c 和d a c ,它们之间的关系可以用图2 - 1 表示: 图2 1 几种访问控制机制的关系 9 北京交通大学硕士学位论文 基于角色访问控制模型的基本思想是让权限与角色相映射,在系 统中根据应用的需要创建相应的角色,并且将用户分派到相应的角色 集合中,于是利用角色作为中间量将用户与权限联系起来,实现了用 户与访问权限的逻辑分离,而不是像传统访问控制技术那样将访问权 限直接分配给用户。在r b a c 中,权限和角色是相关联的,用户通过 获得适当的角色而得到相应的权限,从而简化了权限管理。而且,用 户可以很容易地从一种角色指派为另一种角色。 当今对r b a c 的研究重点放在如何在特定应用系统中使用这种访 问控制技术。 2 4 2r b a c 定义 基于角色访问控制( r b a c ) 的定义已经在第十五届国际计算机安 全会议上以集合的形式给出。定义如下: 对于每一主体,激活角色是当前使用的主体;a r ( s :s u b i e c t ) = 主体s 的激活角色 每一主体可被授权扮演一个或更多角色:r a ( s :s u 啦t ) = 主 体s 的授权角色, 每一角色可被授权执行一个或更多事务:t a ( r :r o l e ) = f 授权给 角色r 的事务 主体可以执行事务。如果主体s 可以在当前时间执行事务t ,则预 测e x e c ( s ,t ) 是真,否则为假: e x e c s :s u b j e d ,t :t r a n ) = t r u e ,如果主 体s 可以执行事务t 。 执行过程中的三个基本规则: ( 1 ) 角色分配:仅当主体选择或被赋予一个角色,主体才能执行 一个事务。 第二章访问控制 v s :s u b j e c t ,t :t r a n ( e x c e ( s ,f ) a r ( s ) g ) ( 2 - 1 ) 身份证明和鉴别过程( 例如登录) 不是一个事务。其他用户的所 有在系统上的活动都可通过事务处理。因此要求所有激活用户具有某 个激活角色。 ( 2 ) 角色授权:主体的激活角色必须是被授权的: v s :s u b j e c t ( a r ( s ) 9 4 ( s ) 、( 2 2 ) 同上面的( 1 ) 一起,规则保证用户只能接收他们授予的角色。 ( 3 ) 事务授权:仅当事务被授权给主体激活角色时,主体才能执 行该事务。 v s :s u b j e c t ,t :t r a n ( e x c e ( s ,t ) t 翻( 础( s ) ) ) ( 2 3 ) 同( 1 ) 和( 2 ) 一起,本规则保证用户只可执行授权给他们的事 务。注意,因为条件是“仅当( o n l yi f ) ”,本规则允许事务执行的出现 附加限制的可能性。即,规则不保证一个事务只是因为它在t a ( a r ( s ) ) 中就是可执行的,t a ( a r ( s ) ) 是由主体激活角色执行的潜在事务集合。 例如,一个主管角色的实习生可被赋予“主管”角色,但是在运用他 她用户角色时有限制,即对主管可正常访问的子集,实习生可能受 到限制。 上文中,“事务”的定义是变换过程( t r a n s f o r m a t i o np r o c e d u r e ) 加 上一个由变换过程访问的数据项集。因为数据访问已被构建到事务中, 所以上面规则的访问控制不要求对用户访问数据目标的权利或变换程 序访问数据项的权利作任何检查。由于在设计阶段将操作和数据绑定 为一个事务,所以存在安全性问题,例如此时的在保险查询事务中提 出的个人隐私的问题。 当规则中“事务”只指变换程序时,需要重新定义“事务”的含 北京交通大学顺士学位论文 义,即不包括对目标的绑定。若要实施方式控制则需要第四个规则, 即在模型中用户通过事务程序访问目标。例如,利用事务( 重新定义 为变换程序) ,第四个规则可被定义为对象访问函数a c c e s s ( r , i ,0 ,x ) v s :s “b j e c t ,t :f r a n ,0 :o b j e c t ( e x c e ( s ,f ) ja c c e s s ( a r ( s ) ,t ,0 ,z ) ) ( 2 4 ) 它表明了是否允许角色r 的主体利用事务t 以x 的方式来访问对象 0 ,其中x 是已经缩小的模式的集合。例如读,写,附加。 2 4 3 髓a c 原则 ( 1 ) 角色继承 角色分层是r b a c 的一个重要内容。它是指一个角色可以继承另一 些角色,也就是说,一个角色可直接或问接地继承另一些角色的访问 许可。例如,一个医生角色,可以被进一步具体浼明为内科医生角色 和外科医生角色。同样,医生角色也可成为更抽象的角色,比如他是 医护人员的特例,见图2 2 。一个被分配给外科医生角色的用户,也可 继承更抽象的医生和医护人员的特权和许可。 图2 2 角色层次示例 ( 2 ) 最小权限原则 所谓最小权限原则是指:用户所拥有的权力不能超过他执行工作 时所需的权限。实现最小权限原则,需分清用户的工作内容,确定执 行该项工作的最小权限集,然后将用户限制在这些权限范围之内。尽 管最小特权包含当前存在于t c s e c 的内容当中,但仍限制系统管理员 l2 第二章访问控制 的权限。通过使用r b a c ,很容易满足一般系统的用户执行最小权限。 ( 3 ) 职责分离 r b a c 机制可被系统管理员用于执行职责分离的策略。职责分离 对于反欺诈行为是非常有效的。它是在真实系统中最重要的想法。 职责分离或者是静态的,或者是动态的。符合静态职责分离要求 职能由个人角色的分配和事务角色的分配决定。最难的是动态职责分 配,其中符合动念职责分离的职能在系统操作期间决定。动态职责分 离目的是允许操作更灵活。 ( 4 ) 角色容量 在一个特定的时间段内,有一些角色只能由一定人数的用户占用。 例如,“经理”这一角色虽然可以授权给多个用户,但在实际的业务中, 可能需要在任何时刻只允许一个人行使经理的职能。因此,在创建新 的角色时,要指定角色的容量。 2 5 小结 本章概括地介绍了访问控制模型和技术,简要介绍了自主访问控 s t j ( d a c ) 和强制访问控n ( m a c ) 相关概念、控制方法和基本模型,讨论 了这两种访问控制的优缺点。接着,详细介绍了基于角色访问控制 ( r b a c ) 技术的思想、标准定义、基本原则。 北京交通人学硕士学位论文 第三章基于角色的访问控制的研究 1 9 9 2 年,美国国家标准与技术研究所( n l s n 的d a v i df e r r a i o l o 和 r i c kk u h n 在综合了大量的实际研究之后,率先提出基于角色的访问控 制模型框架,并给出了r b a c 模型的一种形式化定义”3 。该模型第一次 引入了角色的概念并给出其基本语义,指出r b a c 模型实现了最小权 限原则( 1 e a s tp r i v i l e g e ) 和职责分离原贝l | ( s e p a r a t i o no fd u t y ) 。该模型中给 出了一种集中式管理的r b a c 管理方案。1 9 9 5 年他们以一种更直观的 方式对该模型进行了描述1 2 】。 r a v is a n d h u 和他领导的位于g e o r g em a s o n 大学的信息安全技术实 验室( l i s d 于1 9 9 6 年提出了著名的r b a c 9 6 模型“,将传统的r b a c 模型根据不同需要拆分成四种嵌套的模型并给出形式化定义,极大的 提高了系统灵活性和可用性。1 9 9 7 年他们更进一步,提出了一种分布 式r b a c 管理模型a r b a c 9 7 7 i ,实现了在r b a c 模型基础上的分布式 管理。这两个模型清晰的表征了r b a c 概念并且蕴涵了他人的工作, 成为r b a c 的经典模型。 2 0 0 1 年,r b a c 领域的领军人物d a v i df e r r a i o i o ,r a v is a n d h u 等 人联合拟定了一个r b a c 模型的美国国家标准草案,力图统一不同模 型中的术语,并对所有r b a c 的基本操作给出伪码定义。2 0 0 1 年八月, a c m 版标准草案完成i ”,2 0 0 3 年4 月,n i s t 提交标准草案【8 】。2 0 0 4 年2 月1 9 日,在这两个标准的基础上,i n c i t s 正式批准了a n s i 1 n c i t s 3 5 9 - 2 0 0 4s t a n d a r di n f o r m a t i o n t e c h n o l o g y r o l e b a s e da c c e s s c o n t r o l 。 r b a c 模型的建立及其实现是基于角色访问控制研究中的两大热 点。近几年来,对基于角色访问控制的研究不断深入”1 。r b a c 模型实 】4 第三章基于角色的访问控制的研究 际上形象地反映了r b a c 本身的含义,建立r b a c 模型就是要对r b a c 进 行系统而抽象地描述,从而使人们能够非常方便地理解r b a c 的含义, 以便对其进行更加深入地研究。目前,绝大多数基于角色的访问控制 研究都以r b a c 9 6 ,a r b a c 9 7 这两个模型作为出发点进行深入研究。 本章将对这两种模型进行详尽的研究。 3 1r b a c 9 6 3 1 1 概述 r s s a n d l h u 等提出的r b a c 9 6 模型”1 由于系统地、全面地描述了 r b a c 多层次的意义而得到了广泛的认可。 r b a c 9 6 是由四个概念模型:r b a c o 、r b a c l 、r b a c 2 和r b a c 3 组成 的一个模型家族。图3 - 1 描述了各子模型的关系。 n b a c 3 图3 一l 经典r b a c 模型构成 r b a c o 一基本模型,规定了任何r b a c 系统所必须的最小需求。 r b a c l 在r b a c 0 的基础上增加了角色层次( r o l eh i e r a r c h i e s ) 的概念。 r b a c 2 一在r b a c 0 的基础上增加了约束( c o n s t r a i n t s ) 的概念。 r m 托3 包含了r b a c l 和r b a c 2 ,由于传递性也间接地包含 了r b a c 0 。 我们的工作是以此模型为基础,并对此模型进行了充分的研究, 北京交通大学硕士学位论文 在此基础上,设计并实现了在w e b 上实现基于角色的访问控制的一种 新的方案w - r b a c 。 3 1 2 基本模型r b a c o r b a c o 由四个基本要素构成,即用户( u ) 、角色( r ) 、会话( s ) 和授 权( p ) 。其中: 用户:概念可以很广,如人,机器人,计算机,但此处简化为指 人。 角色:指执行特定任务的能力或在组织中己被授予一定责任的一 个工作头衔。在许多访问控制系统中,是以用户组作为访问控制的单 位的。用户组和角色的最主要的区别在于,用户组是作为用户的一个 集合来对待的,并不涉及它的授权许可;而角色则既是一个用户的集 合,又是一个授权许可的集合。用户与角色可为多对多的关系。 会话:在r b a c 模型的系统中,每个用户进入系统得到自己的控制 的时候,就得到了一个会话。每个会话都是动态产生的,从属于一个 用户。只要静态定义过这些角色与该用户的关系,会话根据用户的要 求负责将它所代表的用户映射到多个角色去。 授权:在系统中对一个或多个客体进行特定模式访问的操作许可, 与实现机制密切相关。许可的本质取决于系统的实现细节,如操作系 统中保护的是文件、目录、设备、端口等资源。相应操作为读、写、 执行,而在关系数据库管理系统中则保护关系、元组、属性、视图等, 相应操作为s e l e c t 、u p d a t e 、d e l e t e 、i n s e r t 。角色与授权之间可为 多对多的关系。 这几者之间的关系如图3 2 表示: 第三章基于角色的访问控制的研究 图3 2r b a c o 各元素间关系 对r b a c o 模型的定义如下: 定义3 1r b a c o 模型的组成包括下列几个部分: u ,r ,p 以及s ( 用户,角色,授权和会话) 。 p a _ p x r ,p a ( p e r m i s s i o na s s i g n m e n t ) 是授权到角色的多对多关 系。u a c _ u x r ,u a ( u s e ra s s i g n m e n t ) 是用户到角色的多对多关系。 u s e r :s u ,将各个会话映射到一个用户去的函数u s e r ( s i ) ( 在会 话的生命周期中保持恒定) 。 r o l e s :s 一2 r ,将各个会话映射到一个角色集的函数, r o l e s ( s i ) ri ( u s e r ( s i ) ,r ) u a ) ( 随时间变化可以变化) ,且会话 s i 的授权p e r m i s s i o n s ur r o l e s ( s i ) pl ( p ,r ) p a ) 。 3 1 3 角色分层模型l l b a c l 在一般的单位或组织中,特权或职权通常是具线性关系的,因此 在r b a c 中引进一定的层次结构用以反映这实际,是自然的。例如, 任取一个组织的机构图,会发现它们及其相似,都是类似于树状的连 通图。角色分层模型r b a c l 就描述了这种状态。 l7 北京交通大学颁士学位论文 r b a c i 模型包含了r b a c o 的所有内容,并且在r b a c o 的基础上加入 了角色分层这一内容。其定义如下: 定义3 2r b a c i 是具有如下元素的模型: u 、r 、p 、s 、p a 、u a 都与定义3 1 相同。 r h 表示角色分层,并且r t t c - r r ,它是一个在r 上的偏序关系, 记为。 r o l e s :s 一2 r ,为一个从会话集s 到2 r 的函数,r o l e s ( s 1 ) r ( 了r r ) ( u s e r ( s 1 ) ,r ) u a ,并且,会话s i 所拥有的访问许可 p e r m i s s i o n s u r r o l e s ( s i ) pi ( j r r ) ( p ,r ) p a ) 。 3 1 4 角色约束模型r b a c 2 r b a c o 的另一个增强方向是r b a c 2 ,即所谓的约束模型。r b a c l 和 r b a c 2 之问是互不相关的,因此也就是不可比较的。作为一个完整的安 全模型,约束增强是非常重要的性能。在绝大多数组织中,除了角色 的层次关系而外,经常要考虑的问题是类似于下列情况:一个公司的 采购员和出纳员虽然都不算是高层次的角色,但是,任何一个公司都 绝不会允许同时分配给某一个具体人员以这两个角色的。因为很显然, 这种工作安排必然导致欺诈行为的发生。 定义3 3r b a c 2 约束模型的定义如下: r b a c 2 包含了r b a c o 的所有基本特性,除此而外增加了对r b a c o 的 所有组成元素的核查过程,只有拥有有效值的元素才可被接受。 在r b a c 中约束条件指向u a ,p a 和会话中的u s e r ,r o l e 等函数。 一般说来,最好是根据其实际的类型和属性加以陈述。这样就要考虑 语言等环境,所以较难于给约束模型以一个严格的形式定义。在实际 的应用中,约束条件和实现的方式各有不同,多数专家倾向于采取尽 l8 第三章基于角色的访问控制的研究 可能简单的和尽可能高效的约束条件,作为实际r b a c 系统的约束机制。 3 1 5 统一模型r b a c 3 统一模型r b a c 3 在r b a c o 的基础上加入了角色分级和约束,因此, 它实际上是将r b a c l 和r b a c 2 结合在了一起。其模型如图3 3 所示: 3 2a r b a c 9 7 图3 - 3r b a c 3 示意图 3 2 1 概述 r a v is a n d h u 等在r b a c 9 6 模型中就曾提出了角色的分布式管理的 问题,但是没有详细谈到具体如何进行管理。之后他们很快就提出了 著名的分布式角色管理模型a r b a c 9 7 ( a d m i n i s t r a t i v er b a c ) t i ,从理 论上给出了r b a c 模型中角色管理的办法。 a r b a c 9 7 模型的基本思想是利用r b a c 模型本身柬进行r b a c 模型的管理,包括用户角色管理,权限角色管理,角色层次关系管理, 限制管理等几个部分。模型的管理员本身也具有角色,称作管理员角 色,并且也有角色继承关系。管理员用户通过拥有管理员角色得到对 北京交通大学硕十学位论文 角色继承关系的管理权。相对于非管理员的角色继承关系,管理员角 色继承关系可以是一个单独的继承关系,并且该继承关系上的每个管 理员角色将对应非管理员角色继承关系上的一部分管理区域,实现一 种分工明确的分布式角色管理。图3 - 4 给出了a r b a c 9 7 模型的基本 框架。 雉 图3 - 4a r b a c 9 7 模型基本框架 a r b a c 9 7 模型分为三个部分:用户角色指派管理( u r a 9 7 ) ,权限 角色指派管理( p r a 9 7 ) ,以及角色继承关系管理( r r a 9 7 ) 。我们下面分 别进行简要介绍。 3 2 2 用户一角色分配 u r a 9 7 的基本思想是管理角色有权修改用户角色关系。在角色层 次图形中高级角色显示在上部而低级角色出现在底部,在这个层次中 许可向上继承,管理角色的权力在通常角色之上,这样就引入了先决 条件的问题。 2 0 第三章基于角色的访问控制的研究 定义3 4 :先决条件:它是一个布尔表达式,用八和v 操作符把通 常角色x 和膏连接起来( x e r ) 。一个给定规则角色集合r ,c r 表示 使用r 中的角色可能形成的所有可能的先决条件。对于用户n 如果有 ( h 2 x ) 0 ,z ) e u a ( u a 即用户分配u s e r a s s i g n m e n t ) 成立,则x 是 真;如果m x x u ,g 。) 阜t u a 贝4 x 为真。 定义3 5 :用户角色分配和撤消通过以下关系分离授权: c a n a s s i g nc a r c r 2 。o 撼为管理角色) 。 c a n r e v o k e a r 2 。 c a na s s i g n ( x ,y z ) 指一个管理角色x ( 或由x 继承来的管理角色) ,当 它的规则角色满足先决条件y 时就能授予该用户成为范围z 中的一个 规则角色成员。c a n _ r e v o k e ( x ,y ) 指一个管理角色x ( 或由x 继承来的管 理角色) 可从任何角色y y 中取消一个用户的成员资格。 从管理员的职责来看,u r a 9 7 模型分为两个部分:指派模型( g r a n t m o d e l ) 和吊销模型氓e v o k e m o d e l ) 。在指派模型中,为了刻画不同层次 的管理员能够管理的用户角色指派的范围,模型定义了一个c a n _ a s s i g n 关系,确定每个管理员对应于每个角色是否能够进行用户指派。考虑 到管理员之间也存在一个层次关系,实际中的指派模型给每个管理员 指定了一个管理范围,可以用一个区日j 来表示。高级的管理员角色的 管理区间包含下级角色的管理区间,从而形成了一个有层次的,职责 分明的管理层次。 对应于吊销模型,每个管理员也有一个吊销的角色区间,他可以 在该区间中吊销任何角色的对应用户。根据管理员层次,我们同样有 一个吊销的继承关系保证管理的不越级操作。由于一个角色对应的用 21 北京交通大学硕十学位论义 户可以是通过角色继承关系得到的,因此在吊销模型中又可以分为强 吊销( s t r o n g r e v o k e ) 和弱吊销( w e a k r e v o k e ) 。如果一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论