(计算机软件与理论专业论文)面向特征的web服务角色访问控制模型研究.pdf_第1页
(计算机软件与理论专业论文)面向特征的web服务角色访问控制模型研究.pdf_第2页
(计算机软件与理论专业论文)面向特征的web服务角色访问控制模型研究.pdf_第3页
(计算机软件与理论专业论文)面向特征的web服务角色访问控制模型研究.pdf_第4页
(计算机软件与理论专业论文)面向特征的web服务角色访问控制模型研究.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(计算机软件与理论专业论文)面向特征的web服务角色访问控制模型研究.pdf.pdf 免费下载

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

文档简介

论文独创性声明 本论文是我个人在导师指导下进行的研究工作及取得的研究成果。论文中除 了特别加以标注和致谢的地方外,不包含其他人或其它机构已经发表或撰写过的 研究成果。其他同志对本研究的启发和所做的贡献均已在论文中作了明确的声明 并表示了谢意。 作者签名 论文使用授权声明 本人完全了解复旦大学有关保留、使用学位论文的规定,即:学校有权保留 送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内 容,可以采用影印、缩印或其它复制手段保存论文。保密的论文在解密后遵守此 规定。 作者签名日期:迦立:6 t i 面向特征的w e b 服务角色访问控制模型研究 【摘要】 本文针对传统从系统角度和任务角度保护资源的访问控制模型所存在的问 题,以w e b 服务访问控制为基础,引入了特征的概念,并用特征作为模型的访 问客体,对访问控制领域进行了特征建模,然后提出一个面向特征的w e b 服务 角色访问控制模型( w s f r b a c ) 。w s f r b a c 模型详细分析了模型的访问控制 过程和约束机理,给出了模型的访问控制算法,并进行模型的形式化描述及安全 性分析,最后结合全国高考综合试卷的评审实例应用了该模型。通过建立访问控 制领域特征模型,w s f r b a c 模型定义了特征之间的组织结构约束、特征之间 的依赖约束和特征的状态约束;模型还定义了许可集约束、访问控制模块之间的 业务依赖约束和上下文环境约束。w s f r b a c 模型不仅关注由外在环境附加的 访问控制,还关注由业务规则引起的访问控制;它不仅关注信息的完整性,还关 注信息的机密性。 【关键字】 w e b 服务,访问控制,特征,角色,安全,w s d l ,u d d i ,s o a p 第4 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 a b s t r a c t i no r d e rt or e s o l v et h ep r o b l e m so ft h et r a d i t i o n a la c c e s sc o n t r o lm o d e l sw h i c h p r o t e c td a t af r o mt h es y s t e mp e r s p e c t i v ea n dt a s kp e r s p e c t i v e ,t h i sp a p e r i n t r o d u c e s t h ec o n c e p to ff e a t u r eo nt h eb a s i so f a c c e s sc o n t r o lo fw e bs e r v i c e ,u s e st h e f e a t u r e ,as u b s t i t u t ef o r t h eu n i tt h a tc o u l db ep u ti n t op r o t e c t i o n ,c o n d u c t sf e a t u r e m o d e l i n g t o w a r da c c e s sc o n t r o lf i e l d ,a n dp r e s e n t saf e a t u r e o r i e n t e dr o l e - b a s e d a c c e s sc o n t r o lm o d e lo fw e bs e r v i c e ( w s f i a c ) w s - f r b a cm o d e ld e t a i l e d l y a n a l y s e st h ea c c e s sc o n t r o lp r o c e s sa n dt h ec o n s t r a i n tm e c h a n i s mo ft h em o d e l , p r e s e n t sa na c c e s sc o n t r o la l g o r i t h m ,f o r m u l a t e st h ep r o c e s s e so f t h em o d e la n d a n l y s e st h es e c u r i t yo ft h em o d e l ,a n dp u tt h em o d e li n t op r a c t i s eo ft h es y s t e mw h i c h r e v i e w st h ec o m p r e h e n s i v ep a p e rt e s to ft h en a f i o n mc o l l e g ee n t r a n c et e s t b y e s t a b l i s h i n gt h ef e a t u r em o d e l o ft h ea c c e s sc o n t r o lf i e l d ,w s f r b a cm o d e l d e f i n e st h ec o n s f f a i n to f o r g a n i z a t i o n a lr e l a t i o n s h i pb e t w e e nf e a t u r e s ,t h ec o n s t r a i n to f d e p e n d e n c er e l a t i o n s h i pb e t w e e nf e a t u r e sa n dt h ec o n s t r a i n to ft h ef e a t u r es t a t e t h e m o d e la l s od e f i n e st h ec o n s t r a i n to ft h ep e r m i s s i o ns e t ,o ft h eb u s s i n e s sr e l a t i o n s h i p b e t w e e nt h ea c c e s sc o n t r o lm o d u l ea n do ft h es y s t e mc o n t e x t w s f r b a cm o d e l n o to n l yp l a c e si m p o r t a n c et ot h ea c c e s sc o n t r o lw h i c hi si m p o s e db yt h ee x t e r n a l e n v i r o n m e n t , t h ea c c e s sc o n t r o lw h i c hi sd e f i n e db yt h eb u s i n e s sr u l e ,b u ta l s oi t a t t a c h e si m p o r t a n c et ot h ec o n f i d e n t i a l i t yo fd a t aa n dt h ei n t e g r i t yo ft h ed a t a k e yw o r d s w e bs e r v i c e ;a c c e s sc o n t r o l ;f e a t u r e ;r o l e ;s e c u r i t y ;w s d i 4 ;u d d i ;s o a p 第5 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 第一章引言 1 1 、权限的背景 1 1 1 、权限的概述 权限往往是一个极其复杂的问题,但也可简单表述为这样的逻辑表达式:判 断“w h o 对w h a t ( w h i c h ) 进行h o w 的操作”的逻辑表达式是否为真。针对不同 的应用,需要根据项目的实际情况和具体架构,在维护性、灵活性、完整性等多 个方案之间比较权衡,选择符合的方案。 1 1 2 、权限的目标 直观,因为系统最终会由最终用户来维护,权限分配的直观和容易理解,显 得比较重要,系统不辞劳苦的实现较复杂的访问控制方法,除了功能的必须,更 主要的就是因为它足够直观。 简单,包括概念数量上的简单和意义上的简单,还有功能上的简单。想用一 个权限系统解决所有的权限问题是不现实的。设计中将常常变化的“定制”特点 比较强的部分判断为业务逻辑,而将经常类似的“通用”特点比较强的部分判断 为权限逻辑就是基于这样的思路。 扩展,角色的概念在支持权限以角色方式分配的组织结构,角色之间的层次 关系及角色之间的权限继承使系统有较好的扩展性,同时有效避免了重定义。 1 1 3 、权限的原则 权限逻辑配合业务逻辑,即权限系统以为业务逻辑提供服务为目标。相当多 细粒度的权限问题因业务逻辑极其独特而不具通用意义,它们也能被理解为是 q k 务逻辑”的一部分。比如,要求“合同资源只能被它的创建者删除,与创建 者同组的用户可以修改,所有的用户能够浏览”。这既可以认为是一个细粒度的 权限问题,也可以认为是一个业务逻辑问题。在这里它是业务逻辑问题,在整个 权限系统的架构设计之中不予多考虑。当然,权限系统的架构也必须要能支持这 样的控制判断;或者说,系统提供足够多但又不完全的控制能力。即设计原则归 结为“系统只提供粗粒度的权限,细粒度的权限被认为是业务逻辑的职责”。 第6 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 需要再次强调的是,这里表述的权限系统仅是一个“不完全”的权限系统, 即它不提供所有关于权限问题的解决方法。它提供一个基础,并解决那些具有“共 性”的( 或者说粗粒度的) 部分。在这个基础之上,根据“业务逻辑”的独特权限 需求,编码实现剩余部分( 或者说细粒度的) 部分,才算完整。回到权限的问题公 式,通用的设计仅解决了w h o + w h a t + h o w 的问题。其他的权限问题留给业务 逻辑解决。 1 1 4 、权限的相关概念 w h o :权限的拥有者,也称访问主体。 w h a t :权限针对的对象或资源实体,也称访问客体。 h o w :具体操作的权限( 也即p r i v i l e g e ) ,分正向授权与负向授权。 角色:是对一类在某方面相似或类似用户实体的抽象,并拥有一定数量的权 限。它是粗粒度和细粒度( 业务逻辑) 的接口,一个基于粗粒度控制的权限系统软 件,对外的接口应该是角色;具体业务实现可以直接继承或拓展丰富的角色内容。 角色与用户或用户组类的具体实体不同,它是接口概念,是用户的抽象。 操作:表示对w h a t 的h o w 操作,即对访问客体执行怎样的操作。 用户:与角色相关,该用户概念是纯粹的用户。权限被分离出去,用户不能 与权限直接相关联,用户要拥有对某种资源的权限,必须通过角色去关联。该用 户解决了w h o 的问题。 资源:传统权限控制系统仅指系统的资源,比如部门新闻和文档等各种可以 被提供给用户访问的对象;现在的权限控制系统把系统的业务逻辑过程也作为要 保护的资源对方。资源可以反向包含资源自身,形成树状结构;每一个资源节点 可以与若干个指定权限类别相关联,也可定义是否将其权限应用于其子节点。 权限:与资源相关,即只有针对具体对象设置相应的权限才有意义。权限与 特定的资源实例相绑定。比如:部门新闻的发布权限,叫做“部门新闻发布权限”。 该例子表明,该权限是一个发布权限,且是针对部门新闻这种资源的一种发布权 限。权限是由c r e a t o r 在开发阶段就确定下来。权限包括系统定义权限和用户自 定义权限,用户自定义权限之间可以存在排斥关系和包含关系( 如:读取,修改, 管理三个权限,管理权限包含了前两种权限) 。权限是一个抽象的名词,如”删除 ”;当它不与任何具体的对象或资源相关联时就没有任何意义。以新闻发布为侧, 发布只是一种权限,仅说“发布权限”是毫无意义的;因为系统不知道“发布” 可以操作的对象是什么。只有当“发布权限”与新闻结合在一起时,才会产生真 正有意义的权限。这里可简称权限实例化。权限系统根据需求的不同可以延伸出 第7 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 很多不同的权限版本。 角色是权限分配的单位与载体,是用户获取权限的桥梁。角色可以包含角色, 角色可以赋给用户,受赋予某角色的用户继承该角色的所有权限。通过角色包含 角色可以实现权限的继承;即当角色包含另一个角色时,则继承了该角色的权限。 在基于粗粒度控制的权限系统中,可以简单的认为只要某用户直接或者间接的被 赋予了某角色,那么它就具备该角色的所有操作许可。在基于细粒度控制的权限 系统中,对于业务逻辑的判断,用户仅应关注其被赋予的角色,用来判断用户之 间是否具有相同的“角色”。角色是可继承的,某个角色通过包含另外一个角色 就可直接获得了该角色拥有的所有“权限集合”;而对于这个角色,需要与权限 建立直接关联的仅是它比另外那个角色需要扩展的那部分权限。 用户与角色是多对多的关系,即一个用户可以属于多个角色,一个角色可以 包括多个用户。在某种意义上,“操作”类似于资源+ 权限的概念。角色可以直接 映射到人员组织结构上,该映射比较直观也比较自然,且也足够灵活。角色对系 统的贡献实质上就是提供了一个比较粗颗粒的分配单位。 “操作”的定义包括了资源类型和方式概念,即w h a t 和h o w 的概念;将 w h a t 和h o w 绑定在一起作为一个“操作”概念,而不是分开建模再建立关联, 因很多的h o w 对于特定w h a t 才有意义。如:发布操作对新闻对象才有意义, 而对用户对象没有意义。 根据特定的环境,h o w 本身的意义也会有所不同。具体来说,对于特定w h a t 可以定义多种操作。比如,对于合同这对象,可以定义创建操作,提交操作和检 查冲突操作等。可以认为,h o w 概念对应于一个业务逻辑过程。其中与具体用 户身份相关的操作即可以在业务逻辑之中定义,也可以在操作级别上定义。比如, 创建者的浏览视图与普通用户的浏览视图要求内容不同,即可以在外部定义两个 操作方法,也可以仅定义一个操作方法并在操作内部根据具体逻辑进行处理。具 体应用哪种方式应依据实际情况进行处理。 该架构应在易于理解和管理的情况下满足绝大部分粗粒度权限控制的功能 需要。但除了粗粒度权限控制之外,系统必然还会包括很多对具体实体细粒度的 权限控制。这些问题留给业务逻辑来解决,该考虑基于以下两点: ( 1 ) 细粒度的权限判断必须在资源上建立权限分配的信息才能得以实现。比 如:如果要求创建者和普通用户看到不同的信息内容,那么资源本身应该拥有创 建者的信息。 ( 2 ) 细粒度的权限常常与业务逻辑有较高的相关性。不同的业务逻辑常常意 味着完全不同的权限判定原则和策略。与之相比之下,租粒度的权限更具通用性, 将粗粒度的权限判断实现为一个架构,往往更有重用价值,而将细粒度的权限判 第8 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 断实现为一个架构级别的系统就显得繁琐,且很没必要,若用定制的代码来实现 就更简洁及更灵活。 故细粒度控制应该尽量在底层解决,资源在实例化的时候必需指定拥有者和 角色在对该资源进行操作时的约束类型:究竟是拥有者可操作,或特定角色可操 作,还是都可以操作。如果多个角色组合所具有的权限还不能覆盖用户的访问需 求,则必须新增角色。权限必须能够访问资源,若在访问时附带用户信息参数, 且执行权限判断时考虑用户信息,则这样的权限控制就比较完备。 1 1 5 、权限的思想 权限系统由以下三部分构成:( 1 ) 设置权限,( 2 ) 分配权限,( 3 ) 使用权限。 系统各部分的主要参与者对应如下:( 1 ) 。设置权限系统设置,( 2 ) 分配权限 系统管理员分配,( 3 ) 使用权限一用户使用: ( 1 ) 系统设置权限。在设计和实现阶段,系统会设置权限,即实现权限系统; 也即实现各部分子系统或模块应该有哪些权限及如果控制用户访问这些子系统 或模块。该部分完成了权限与资源的对象声明,但并没有真正将权限与具体资源 实例联系在一起,形成操作。 ( 2 ) 系统管理员分配权限。这部分完成权限与资源实例的关联,权限真正与 资源实例联系到一起并产生操作( 也可称权限实例) 。系统管理员利用操作这个 基本元素来创造理想中的权限模型。如:创建角色,给用户分配角色,将角色与 权限关联等等,这些操作都是由系统管理员完成。 ( 3 ) 使用权限。用户使用系统管理员分配给它的权限去访问各个子系统。系 统管理员也是个用户,在理想状态下有一个适合他管理和维护的权限模型。在以 保护资源为目的的权限系统下,程序员仅需回答一个问题:什么权限可以访问什 么资源,也即前面说的可执行何种操作。程序员提供“操作”就意味着给系统穿 上了盔甲。系统管理员就可以按照他的意愿来建立他所希望的权限系统,即可以 自行增加、删除和管理资源与权限之间关系;也可以自行设定用户和角色之间的 对应关系。操作是权限系统中较关键的部分,它是一个纽带,一个在程序员、系 统管理员和用户之间的纽带。 1 2 、w e bs e r v i c e 权限控制的背景 随着i n t e r a c t 的蓬勃发展和网络计算的需求剧增,使w e bs e r v i c e 越来越受到 人们的重视。w e bs e r v i c e 是对象组件技术在i n t e r a c t 中的延伸,是封装成单个实 第9 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 体并且发布到网络上以供其它程序使用的功能集合。其主要基于x m l ( e x t c n s i b l e m a r k u pl a n g u a g e ) 、s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) 、w s d l ( w e bs e r v i c e s d i s c r i p t i o nl a n g u a g e ) 、u d d i ( u n i v e r s a ld i s c r i p t i o n 、d i s c o v e r ya n di n t e g r a t i o n ) 等 标准与规范。在w e bs e r v i c e 的体系中,电子商务电子政务企业应用被分割为高 内聚、弱耦合的单个的服务,可以通过w e b 的形式被调用和访问,w e bs e w i c c 从本质上讲是放置于w e b 站点上的可重用构件,w e bs e r v i c e 可以分散于w e b 的各 个地方,通过相互地调用以协同完成商务活动。 w e bs e r v i c e 是由一套协议栈构成的层次化体系结构。w e bs e r v i c e 的体系结构 如图1 所示: 陶1 w e b 熟 i c c 的棒最终翰溯 其中,底层传输协议是广泛使用的因特网标准:h r l l p 、s r r p 等。中间部 分是目前开发的w e b 服务的相关标准协议,包括服务调用协议s o a p 、服务描 述协议w s d l 和服务发现集成协议u d d i 以及服务工作流描述语言w s f l 而 上层部分描述的是更高层的待开发的关于路由、可靠性以及事务等方面的协议。 右边部分是各个协议层的公用机制,这些机制一般由外部的正交机制来完成,这 部分正是电子政务电子商务等实际应用迫切需要解决的关于安全和管理的协议 或机制。为了让w e b 服务( w e bs e r v i c e ) 在电子商务电子政务企业环境中实用, w e b 服务架构必须成熟可靠,以便支持诸如安全性、事务、持久性等关键事项, 以及更高级别上的业务流程和商业服务。当前,w e bs e m i t e 的相关标准协议, 包括服务调用协议s o a p 、服务描述协议w s d l 和服务发现集成协议u d d i , 以及服务工作流描述语言w s f l ,都没有对w e bs e r v i e e 技术平台提供可信任与 授权的完整的安全构架,确保基于w e bs e r v i c e 技术的政务系统电子商务的安全 运作。某些w e b 服务将在公开情况下被访问而没有保护措施,但大多数与商业 相关的服务要求使用带认证的加密通信。s s l 上的 r r r p 往往能够提供基本的 安全性,但有个别服务需要更高颗粒度级别。w e b 服务如何认证用户? 服务需 第1 0 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 要在方法级别上提供安全性的能力吗? 如果您与在世界范围内提供服务的供应 商签约,这些服务如何了解您的安全性特权呢? w e b 服务是否将会被交付使用? 我们能否信任w e b 服务? 要消除基于w e bs e r v i c e 的信息系统的安全隐患,必须 解决这些关键问题。简单的说,需要在w e b 服务提供者或w e b 服务的用户之间 建立一个信任联系,同时也需要在大量的其他的人、其他的公司,其中大多数是 从来没有见过的或了解的w e b 服务提供商和服务的用户之间建立信任关系。总 之,必须保护w e b 服务使用中的数据机密性、数据完整性、访问控制和使用的 不可否认性,对w e b 服务的使用实现严格的访问控制,还要防止拒绝恶意的服 务攻击。 1 3 、论文的研究意义和主要工作 随着w e b 服务技术的发展,w e b 服务已逐渐趋向成熟,并被工业界广泛接 受和使用。针对w e b 服务,工业界已经颁布了很多相关的标准,如:x m l 、s o a p 、 u d d i 和w d s l 等。当前,已存在很多企业基于w e b 服务提供服务的例子。为 了给顾客提供更好和多样的在线服务,企业把自己的开发平台移植到w e b 服务 平台已成为一个趋势。当w e b 服务为整合具有不同背景的企业所提供的服务和 开发基于w e b 的更复杂应用程序提供一个很好的范例时,w e b 服务的安全性问 题一直没有得到很好的解决,这在一定程度上阻碍了w e b 服务的迅速发展和广 泛应用。互联网的开放性使得w e b 服务很容易受到安全性的攻击,通过h t r p 端口发送和接受s o a p 消息更加加重w e b 服务安全的脆弱性。因此,安全是 w e b 服务备受关注的方面。 由于w e b 服务的特性,它的安全与传统的应用程序不同。它们的区别主要 表现在下列几个方面: w e b 服务允许用户通过调用由服务提供者暴露的接口来为自己提供服务, 整个过程中的发送消息( 如请求调用消息) 和接受消息都是由h i q p 协议 传输s o a p 消息来实现,所以服务的调用不受访火墙的限止。 服务的调用者是来自不同区域的陌生用户。如果不加访问控制,只要遵守 一定的标准,任务用户都可以调用该服务,因此服务提供者与服务调用者 之间存在互相信任问题。 w e b 服务传输的信息都是基于x m l 格式来编码,他们比传统的二进制流 c o m 更具有可读性,然而这些信息可能包含非常敏感的信息。 同传统的系统一样,w e b 服务的安全也包括五方面:认证( i d e n t i f i e a t i o n ) 与 验i 正( a u t h e n t i c a t i o n ) 、访问控$ o ( a c c e s sc o n t r 0 1 ) 、机密性( c o n f i d e n t i a l i t y ) 、完整 第1 1 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 性( i n t e g r i t y ) 和使用的不可否认性( n o n r e p u d i a t i o n ) 。其中有大部分可用现有w e b 网站的安全技术( h t r p s ) 来解决,如加密和验证。然而h n p s 不能提供授权操 作,也即不能规范用户可以访问及不可以访问什么和允许及不允许执行什么操 作。故一个实用、全面的w e b 服务访问控制模型是当前迫切的需求。 关于访问控制,学术界已做了大量的研究,出现了两类比较经典且应用较广 的模型,即从系统角度保护资源的模型和从任务角度保护资源的模型。前者如 【6 】、【8 】和【9 】等,它们都从系统角度保护资源,把w 曲服务分配给角色,然后再 把角色分配给用户,并在这个基础上加入不同的控制约束,最后形成不同的改进 模型;后者如【3 】和【7 】,它们都从任务角度保护资源,把任务分配给角色或执行 者许可集,并在这个基础上加入不同的约束依赖,最后形成不同的改进模型。该 两类模型存在如下不足之处: ( 1 ) 从系统角度保护资源的模型,它们的控制环境是静态的,没有将操作环 境考虑在内( 如不能记录对资源的使用,访问没有时间限制) ,也没有考虑由受保 护资源之间的依赖关系所带来的访问约束。 ( 2 ) 从任务角度保护资源的模型,与工作流胶合太紧,也没有一种机制把访 问控制映射到人员组织结构上。 ( 3 ) 从系统角度保护资源的模型较偏重数据的机密性,而从任务角度保护资 源的模型偏重数据的完整性;然而在很多情况下,数据的机密性和完整性都是系 统关注的焦点。 为了有效解决上述问题,本文提出一个模型,它同时从系统和任务角度傈护 资源;即考虑了动态的上下文环境和资源之间的依赖关系所带来的访问约束,又 不会与工作流胶合太紧:也有一种机制把访问控制映射到人员组织结构上:同时 将信息的机密性和数据的完整性都作为本模型的关注焦点。 本文提出面向特征的w e b 服务角色访问控制模型( f e a t u r e o r i e n t e da n d r o l e - b a s e c la c c e s sc o n t r o lf o rw e bs e r y i c c ) ,简称w s - f r b a c 。w s - f r b a c 模型 在w e b 服务角色访问控制模型的基础上,吸取了t b a c 模型的优点并加以扩展, 并给出了访问控制模型的算法。文章还专门针对模型仔细分析了模型的访问控制 机理及约束访问的动态职责分离,并给出了形式化定义和简略分析了模型安全性 的问题。模型引入特征的概念,并用特征作为模型的访问客体。为了更好的为面 向特征的w e b 服务角色访阅控制模型服务,文章构建了一个特征模型,定义了 特征基本概念、特征之间的依赖关系和特征的状态。特征能够从系统和任务角 度描述基本的访问控制单元,也能够描述一个事务流程及事务流程之间的关系。 通过引入特征的概念,w s f r b a c 模型将对象的控制和任务的控制统一为对特 征的控制,并对特征附加上下文属性,从而为上述问题提供一个实之可行的解决 第1 2 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 方案。w s - f r b a c 模型综合考虑了信息的机密性和数据的完整性,并把它们置 于同等重要的位置。本模型是针对w e bs e r v i c e 平台,但也可以类推到其它平台。 1 4 、论文的组织结构 文章由六部分组成;第一部分介绍了权限控制的相关背景和w e b 服务环境 下的访问控制背景,并简要阐述了本文所做的工作及其研究意义。第二部分介绍 了访问控制的相关研究,即传统的访问控制模型、基于角色的访问控制模型和基 于任务的访问控制模型;同时,也简要介绍了w e b 服务的相关技术。第三部分 构建了一个访问控制领域下的特征模型,定义了特征的状态和特征之间的依赖关 系,并给出构建特征模型的简要过程。第四部分提出面向特征的w e b 服务角色 访问控制模型,并在详细阐述模型的访问控制机理之后给出一个模型访问控制的 算法,最后简要分析了模型的安全性问题。第五部分给出在实际项目中运用特征 的思想构建访问控制模型的例子,并给出形式化的描述。第六部分针对本文的工 作内部做出总结,并指出文章的创新点和以后工作的访问。 第1 3 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 第二章相关理论与技术 2 1 、传统的访问控制模型 传统的访问控制一般被分为两类【1 】:自主访问控制d a c ( d i s c r e t i o n a r y a c c e s sc o n t r 0 1 ) 和强制访问控制m a c ( m a n d a t o r y a c c c s sc o n u o o 。 自主访问控制d a c 是在确认主体身份以及它们所属组的基础上对访问进行 限制的一种方法。自主访问的含义是指访问许可的主体能够向其他主体转让访问 权。在基于d a c 的系统中,主体的拥有者负责设置访问权限。而作为许多操作系 统的副作用,一个或多个特权用户也可以改变主体的控制权限。自主访问控制的 一个最大问题是主体的权限太大,无意闻就可能泄露信息,而且不能防备特洛伊木 马的攻击。访问控制表( a c l ) 是d a c q b 常用的一种安全机制,系统安全管理员通过 维护a c l 来控制用户访问有关数据。a c l 的优点在于它的表述直观、易于理解, 而且比较容易查出对某一特定资源拥有访问权限的所有用户,有效地实旌授权管 理。但当用户数量多、管理数据量大时,a c l 就会很庞大。当组织内的人员发生 变化、工作职能发生变化时, a c l 的维护就变得非常困难。另外,对分布式网络系 统,功c 不利于实现统一的全局访问控制。 强制访问控制m a c 是一种强加给访问主体( 即系统强制主体服从访问控制 策略) 的一种访问方式,它利用上读几:写来保证数据的完整性,利用下读,上写来保 证数据的保密性。m a c 主要用于多层次安全级别的军事系统中,它通过梯度安 全标签实现信息的单向流通,可以有效地阻止特洛伊木马的泄露;其缺陷主要在于 实现工作量较大,管理不便,不够灵活,而且它过重强调保密性,对系统连续工作能 力、授权的可管理性方面考虑不足。 2 2 、基于角色的访问控制模型( r b a c ) 为了克服标准矩阵模型中将访问权直接分配给主体,引起管理困难的缺陷,在 访问控制中引进了聚合体( a g g r e g a t i o n ) 概念,如组、角色等。在r b a c ( r o l eb a s e d a c c e s sc o n t r 0 1 ) 模型中,就引进了“角色”概念。所谓角色,就是一个或一群用户在 组织内可执行的操作的集合。角色意味着用户在组织内的责任和职能。在r b a c 模型中,权限并不直接分配给用户,而是先分配给角色,然后用户分配给那些角色, 从而获得角色的权限。r b a c 系统定义了各种角色,每种角色可以完成一定的职 能,不同的用户根据其职能和责任被赋予相应的角色,一旦某个用户成为某角色的 第1 4 页共5 8 页 面向特符的w e b 服务角色访问控制模型研究 成员,则此用户可以完成该角色所具有的职能。在r b a c 中,可以预先定义角色2 权 限之间的关系,将预先定义的角色赋予用户,明确责任和授权,从而加强安全策略。 与把权限赋予用户的工作相比,把角色赋予用户要容易灵活得多,这简化了系统的 管理。 s o s s i o l l 图2 i m a c 模型 r b a c 模型简单实用,相对来说较容易扩展。它用一种自然匹配到组织结构 的方式提供一种权限控制策略,角色的概念就是对应于一个组织的具体位置。 上述的d a c ,m a c 和r b a c 都是基于主体与客体( s u d j e c t o 眯麒) 观点的被 动安全模型,它们都是从系统的角度( 控制环境是静态的) 出发保护资源。在被动安 全模型中,授权是静态的,在执行任务之前,主体就拥有权限,没有考虑到操作的上 下文,不适合于基于工作流的系统;并且主体一旦拥有某种权限,在任务执行过程 中或任务执行完后,会继续拥有这种权限,这显然使系统面临极大的安全威胁。 它们是从系统角度出发保护资源( 即控制环境是静态的) ,没有考虑执行环 境( 如不能记录对资源的权限使用情况,权限没有时间限制) ,也没有考虑由被 保护资源之间的依赖关系所带来的访问约束。它们增强了信息的机密性,却没有 很好的考虑数据的完整性。 工作流是为完成某一目标而由多个相关的任务( 活动) 构成的业务流程,它的 特点是使处理过程自动化,对人和其他资源进行协调管理,从而完成某项工作。在 工作流环境中,当数据在工作流中流动时,执行操作的用户在改变,用户的权限也 在改变,这与数据处理的上下文环境相关,传统的访问控制技术d a c 和m a c 对此 无能为力。若使用r b a c ,则不仅需频繁更换角色,而且也不适合工作流程的运转。 第1 5 页共5 8 页 面向特征盼w e b 服务角色访问控制模型研究 为了解决此问题,人们提出了基于任务的访问控制模型t b a c 。 2 3 、基于任务的访问控制模型( t b a c ) 为了能适应复杂企业的特定环境需求,引入了基于任务的访问控制模型,为 工作流的访问控制问题提供了行之有效的方案。 在t b a c 模型中,引进了另一个非常重要的概念任务。所谓任务( 或活 动) ,就是要进行的一个个操作的统称。任务是一个动态的概念,每项任务包括其内 容、状态( 如静止态、活动态、等待态、完成态等) 、执行结果、生命周期等。 任务与任务之间一般存在相互关联,如相互依赖或相互排斥。如任务a 必须在任务 b 之后执行:任务a 与任务b 不能同时执行等。 图3 授权步 1 r i 臌型是一种基于任务、采用动态授权的主动安全模型。它从应用和 企业的角度来解决安全问题。它采用面向任务的观点,从任务的角度来建立安全 模型和实现安全机制,在任务处理的过程中提供实时的安全管理。 在t b a c 模型中,引入授权步用来描述一个任务的属性,并形成权限控制 的建模基础。每一个授权步都维护它自己的保护态,授权步的保护态的初始值是 一个许可集;只有该许可集所属的授权步激活后,它才有效,同时该许可集的内 容随着授权步的处量和相关权限的消耗而改变。一个任务对应于一个授权结构 体,每个授权结构体由特定的授权步组成。详细内容参考f 1 】和同 其基本思想主要有: ( 1 ) 将访问权限与任务相结合,每个任务的执行都被看作是主体使用相关访 问权限访问客体的过程。在任务执行过程中,权限被消耗,当权限用完时,主体就不 能再访问客体了。 第1 6 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 ( 2 ) 系统授予给用户的访问权限,不仅仅与主体、客体有关,还与主体当前执行 的任务、任务的状态有关。客体的访问控制权限并不是静止不变的,而是随着执 行任务的上下文环境的变化而变化。t b a c 的主动、动态等特性使其广泛应用于 工作流、分布式处理、多点访问控制的信息处理和事务管理系统的决策制定等方 面。 心 d 。二 图4t b a c 模型 尽管t b a c 具备许多特点,并已应用于实际中,但当应用于复杂的企业环境 时,就会暴露出自身的缺陷。例如: ( 1 ) 在实际的企业环境中,角色是一个非常重要的概念,但臌型与工 作流胶合太紧,也没有一种机制把权限控制映射到人员组织结构上;即并没有将 角色与任务清楚地分离开来,也不支持角色的层次等级。 ( 2 ) 访问控制并非都是主动的,也有属于被动形式的,而t b a c 并不支持被动 访问控制,即t b a c 单纯从任务的角度来建立安全模型;如果数据本身存在很多 约束时,t b a c 模型很不灵活,且不能很好的控制用户对数据自身的访问。 ( 3 ) t b a c 模型增强了信息的完整性和可用性,却没有考虑数据的机密性。 第1 7 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 2 4 、w e bs e r v i c e 2 4 1 、w e bs e r v i c e 的定义 w e b 服务代表一种建立在可扩展标记语言( x m l ) 等技术之上的在网络上开 放服务的技术f 1 6 】。w e b 服务强调的是软件之间的交互,而不是服务的形式。一 个w e b 服务可以是一段简单的脚本,也可以是很复杂的服务。 w e b 服务有如下特征: ( 1 ) 自描述:使得其他软件系统可以了解本服务提供了怎样的服务,如何 获取这些服务等信息。为服务的查询提供支持。 ( 2 ) 可定位:这样在需要该服务的时候才能够获得。 ( 3 ) 可调用:可以被其他软件系统调用,实现该服务的价值。 w e b 服务以一种分布式的方式部署,最为流行的是将w e b 服务部署在万维网上。 在万维网上的w e b 服务提供最大服务范围。 2 4 2 、w e bs e r v i c e 的相关技术 如前所述,w e b 服务有三个必须的特质:自描述,可定位和可被调用。w e b 服务的描述由w s d l 来进行,它详尽的给出服务接口等信息;u d d i 是专门负责 w e b 服务发现与定为的,它实际上是一个注册机构,包含各种w e b 服务的信息: s o a p 规定了交互消息的格式,用来作为在调用者与服务者之间传递的消息的标 准格式。w s d l u d d i 、s o a p 是w e b 服务最重要的基础,丽x m l 是所有以 上技术的基础,其重要性不言而喻。如下我们将一一对它们进行介绍。 2 4 2 1s o a p s o a p 是一种轻量级协议,用于在分散型、分布式环境中交换结构化信息。 s o a p 利用x m l 技术定义一种可扩展消息处理框架,它提供了一种可通过多种 底层协议进行交换的消息结构,这种框架的设计思想是要独立于任何一种特定的 编程模型和其它特定实现的语义。 w e b 本质上是分布式、异构的,这就要求w e b 上的交互必须平台无关、轻 量、尽量国际化的。s o a p 就是满足以上条件的一种交互协议【1 7 】。s o a p 是基 于x m l 的消息与远程过程调用协议( r p c ) 。s o a p 没有定义一种新的传输协议, 而是建立在h i t p 等已有协议之上。 第1 8 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 s o a p 的核心结构实际上相当简单:一个根中包含两个子元素的x m l 文档。 这两个子元素一个是“头”另一个包含“体”,而头与体中的内容又是任意的合 法x m l 格式文档。如下是一个s o a p 基本结构实例文档: ( s o a p :b o d y ( ,s o a p :b o d y e n v e l o p e 元素始终是s o a p 消息的根元素,这就便于应用程序识别“s o a p 消息”,只要检查一下根元素的名称即可。在e n v e l o p e 元素的命名空间中,应用 程序可以获得所使用s o a p 的版本。e n v e l o p e 元素包含一个可选的h e a d e r 元素, 即s o a p 的“消息头”;后跟一个必须的b o d y ,即。消息体”。虽然b o d y 的具体 格式没有规定,但规范指定可以在其中加入f a u l t 元素,用于指出当处理出错时 的出错信息。f a u l t 元素必须包含一个f a u l t c o d e 元素和一个f a u l t s t r i n g 元素。 f a u l t c o d e 元素使用一种符合命名空间的名称对错误进行分类,而f a u l t s t r i n g 元素 提供一种对错误可读的解释。 s o a p 定义了一种处理模型,它大致规定了从s o a p 发送方传输到s o a p 接 受方的过程中对s o a p 消息的处理规则。如下图5 ,给出了s o a p 消息处理方案。 消息可以经过多个中间结点,中间结点位于最初的发送方和最终的接受方之间, 可以截获s o a p 消息。中间结点可同时作为s o a p 发送方和接受方。中间结点 使得有可能设计些有趣且灵活的网络体系结构,而这些体系结构能受接到的消 息内容的影响,s o a p 路由就是一个很好的实例。 h 珊r c p s 柏s t p 客户端消囊 媒介 终点 图5s o a p 路由 消息模型除了基本的消息格式外,还定义了一个告知消息接受者如何处理消 息的模型。消息模型还包含了一个a c t o r s 列表,消息可以识别接受者,根据a c t o r s 的设定来完成各个a c t o r 应处理的消息部分。 第1 9 页共5 8 页 面向特征的w e b 服务角色访问控制模型研究 s o a p 允许与多种底层协议绑定。一种具体的协议绑定准确地定义了应该如 何利用给定的协议来传输s o a p 消息,换言之,它详细定义了s o a p 如何适用 于另一协议的范围,该协议很可能具有自己的消息处理框架以及多种表头。协议 绑定实际所定义的内容很大程度取决于该协议的功能和选项。s o a p1 1 规范仅 规范化了一种用于h t r p 的协议绑定( 由于h t t p 的广泛使用) 。s o a p 已经 用于。i - i t r p 之外的很多协议,但是其实现并未遵循标准化的绑定。当你尝试 与利用相同协议的其他s o a p 实施进行集成时,只要准备好处理各种互操作性 方面的问题,超前一点而不使用标准的协议绑定也未尝不可。 2 4 2 2w s d l s o a p 提供了一种w e b 服务交流“语言”,但它没有体现交换的什么样的、 关于什么的消息,而后者由w s d l 来提供【1 7 】。w s d l 把w e b 服务描述为一组 可以交换信息的终端,换句话说,w s d l 文档描述一个w e b 服务的接口。一个 完整的w s d l 文档提供关于服务的两方面信息:应用级别的描述( 抽象接口) 与和具体协议密切相关的获取服务必须遵守的规约。做如此划分是因为,同样的 服务可能被部署于所用协议略有不同的各种系统中。 抽象接口描述:w s d l 定义了服务的抽象描述,主要通过描述服务的消息交 互来描述服务。抽象接口有三个主要组成部分;词汇表,消息以及交互。遵从同 一词汇表是任何交互的前提。w s d l 用外部类型系统来定义数据类型,w s d l 支持多种类型系统,但大多数服务都用x s d

温馨提示

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

评论

0/150

提交评论