(计算机应用技术专业论文)基于saml联合身份认证和访问控制的研究.pdf_第1页
(计算机应用技术专业论文)基于saml联合身份认证和访问控制的研究.pdf_第2页
(计算机应用技术专业论文)基于saml联合身份认证和访问控制的研究.pdf_第3页
(计算机应用技术专业论文)基于saml联合身份认证和访问控制的研究.pdf_第4页
(计算机应用技术专业论文)基于saml联合身份认证和访问控制的研究.pdf_第5页
已阅读5页,还剩81页未读, 继续免费阅读

(计算机应用技术专业论文)基于saml联合身份认证和访问控制的研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 随着对网络的普及应用,人们对网络的需求已经不再仅仅局限于独立的系统 功能上,更多的是多系统联合的使用。多系统的联合使用,除了要求对系统服务 进行重新整合外,为了降低系统的安全风险,需要一种统一的,具有较高安全性 的,在分布式环境下的身份认证和访问控制体系。 服务提供者( 提供服务的实体,参与者可以通过特定的各种方式来访问,但 是服务提供者并不对其他提供者保证参与者身份的可靠性。) 联盟式的身份认证 和访问控制的出现,解决了一个组织中经常困扰他们的多个系统统一安全管理的 技术问题。但当组织问的业务需要一种范围更广的安全保障时,传统的服务提供 者联盟对此变得无能为力。 当前统一身份认证和访问控制的研究是安全研究的一大热点,不断出现的新 技术,新规范,如基于s o a p 的w e bs e r v i c e 协议簇,s a m l ,x a c m l ,s p m l ,w s - f e d e r a t i o n 等保证了这一领域的应用可以持续发展下去。 本文通过对现存的各种统一身份认证和访问控制解决方案的研究,结合现有 的技术:s a m l ,x a c m l ,j a x r p c ,s p m l ,提出一种基于身份提供者( 为其他提供者提 供保证,保证使用服务的参与者身份的可靠性。) 联盟的适合在组织间运作的新 型统一身份认证和访问控制的安全管理方案。 在整个系统中,将设计一种双层联合的身份认证方案,一种多策略层的访问 控制,并设计定制的辅助机制来加强认证和访问控制的可用性和健壮性。其中, 第一层身份认证采用了基于p k i 体系的双向身份认证协议l o t u sn o t e s 协议并结 合新的客户端技术a j a x 、a p p l e t 来实现一种安全性高,响应速度快异步处理信 息的认证解决方案;第二层身份认证结合了挑战应答认证方式和j m s 技术实现消 息异步处理的认证解决方案。通过结合使用s a m l 框架,把两层认证通过凭证,断 言粘连成一体。根据需要程度和粒度把访问控制策略定义为多层,以适应不同的 控制需求。为了保障联合身份认证和访问控制的正常工作,设计了新的会话机制, 全局注销,用户供应管理和策略协商。定制的新会话机制将不依赖于浏览器c o o k i e ,会话跟踪能力更好,安全性更高,对信息的容量更大;用户供应管理使用了s 广东t 业大学工学硕士学位论文 p m l 技术实现了用户注册,用户帐号跨信任圈创建,用户对应各帐号密码同步更 新;策略协商使用x a c m l 技术设计一种有利于不同信任圈认证点策略的兼容;通 过分层使用服务定位技术,并局部独立地注销会话,实现会话从局部发起到全局 注销。 关键字:身份认证访问控制s s o 联合身份认证s a m ls p m lx a c m l h a b s t r a c t a b s t r a c t w i t ht h ep o p u l i z a t i o no fn e t w o r k ,m o r ea n dm o r es y s t e m sh a v e b e e n c l a i m e dw h i c hf i n a l l yb e c o m et h em u l t i s y s t e mu s ei na l l i a n c e t h ec o m b i n e du s e o fm u l t i s y s t e m ,i na d d i t i o nt ot h ec o n f o r m i t yo ft h ee x i s t i n gs y s t e m s ,m o r ed e s i r a b l y i st ob e c o m et h eu n i f i e d ,s a f ea u t h e n t i c a t i o na n da c c e s sc o n t r o ls y s t e m ,i nt h e p u r p o s eo fc u t t i n gd o w nt h es e c u r i t yr i s ko ft h es y s t e m s t h ee x i s t e n c eo ft h ea u t h e n t i c a t i o na n da c c e s sc o n t r o lb a s e do ns e r v i c e p r o v i d e ra l l i a n c e ,t e c h n i c a l l yr e s o l v e st h ep r o b l e mo fs e c u r i t ym a n a g e m e n t h o w e v e r , w h e nad e m a n do fm o r es e c u r i t yg u a r a n t e ei nm o r es c o p ed u r i n go r g a n i z a t i o n s h a p p e n s , t r a d i t i o n a ls e r v i c ep r o v i d e ra l l i a n c eb e c o m e sn o t h i n g n o w a d a y s ,t h e r e s e a r c ho fa u t h e n t i c a t i o na n da c c e s sc o n t r o li sh o t ,a n d m o r ea n dm o r en e wt e c h n i q u e ,n e wc r i t e r i o nt e r m s ,s u c ha sw e bs e r v i c ep r o t o c o l b a s e do ns o a p ,s a m l ,x a c m l ,s p m l ,w s - f e d e r a t i o nw h i c hf o r c et h ea p p l i c a t i o n o ft h i sd o m a i n a f t e rt h ec o l l e c t i n ga n ds t u d y i n go nt h ee x i s t i n gs c h e m e s ,a n dc o m b i n i n g t h en e wt e c h n i c ( s a m l ,x a c m l ,j a x - r p c ,s p m l ) ,ia d v a n c ean e ws e c u r i t ym a n a g e - m e n t s c h e m eo fi d e n t i t yp r o v i d e ra l l i a n c eb a s e do na u t h e n t i c a t i o na n da c c e s sc o n t r o l w h i c hi sg o o df o rt h es e c u r i t ym a n a g e m e n td u r i n go r g a n i z a t i o n s i nt h es c h e m e ,an e ws e s s i o nm a n a g e m e n tm e c h a n i s mw i l lb es e tt oa d a p t t os e s s i o nm a n a g e m e n td u r i n gt r u s tc i r c l e s ,i no r d e rt ok e e pt h ec o n s i s t e n c y ,c o n f i d e n - t i a l i t y ,a n dt o e n s u r et h ec r e d e n c e c r e a t i o n ,c r e d e n c et r a n s f o r m a t i o n ,c r e d e n c e u s e f u l l n e s s i ts u p p o r t so v e r a l l l o g o u t ,a c c o u n te s t a b l i s h ,p a s s w o r ds y n c h r o n i z a t i o n d e s i g nan e ws c h e m eo np o l i c yn e g o t i a t i o nb a s e do nm u l t i t i e ra c c e s sc o n t r 0 1 k e y w o r d s :i d e n t i t ya u t h e n t i c a t i o n ,a c c e s sc o n t r o l ,s s o ,u n i t e di d e n t i t ya u t h e n t i c a t i o n ,s a m l ,s p m l ,x a c m l 独立性声明 独立性声明 秉承学校严谨的学风与优良的科学道德,本人声明所呈交的论文是我个人在 导师的指导下进行研究工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,不包含 本人或其他用途使用过的成果。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明,并表示了致谢。 本学位论文成果是本人在广东工业大学读书期问在导师的指导下取得的,论 文成果归广东工业大学所有。 申请学位论文与资料若有不实之处,本人承担一切相关责任,特此声明。 指导老师签字: 论文作者签字: 年月日 ) | 、 限纠暂 ;了、穆 第1 章绪论 1 1 课题的来源 第一章绪论 随着整个社会信息化的快速发展,各组织内部纷纷搭建起自己的应用系统, 组织内部各种功能的系统逐渐增多,安全管理变得越来越困难,于是,出现了统 一身份认证和访问控制,原来的多个系统的安全被统一起来,出现了“服务提供 者联盟 。接着,当组织间的合作变得越来越紧密时,出现了一种状况:组织间 大量的资料,即时的信息需要共享,但传统的“服务提供者联盟” t 却把他们的 信息捆绑在各自的信任圈范围内,当向有业务关系的组织公开一点内部信息时, 又得经受巨大的安全风险。于是,出现如下的供需矛盾: 1 传统服务提供者联盟,解决不了跨信任圈的组织间身份认证和访问控制, 有时候无法适应地域分布上的问题,也就是说,实现不了分布在全球各个角落的 组织间实现服务联盟。 2 由于要满足的是多个组织的安全问题,组织间的关系是变化不定的,所 以,实现的这种身份提供者联盟【l 】必须是一种低耦合的信息供应者和信息消费者 关系,即,实现各个信任圈c - 】用户对不同信任圈内资源的使用时,用户的原始信 息归原来的注册点( 各信任圈的身份提供者) 管理。 3 对于全局性动作( 全局注销 2 】,密码更改,策略变动等) 要求实现同一 用户在不同信任圈,不同应用服务系统处要得到统一的处理。 因此,为了解决这些安全需求,急需一种新的解决方案。 1 2 国外研究应用现状 统一身份认证 。 和访问控制 a 的相关工作,在近几年不断升温,并形成了两 大竞争的身份管理标准s a m l 5 和w s f e d e r a t i o n 6 】,很多业界巨头和著名开源社 区 , 对于身份认证、单点登录 s 和访问控制都各自提出了解决方案。 1 s u no n e i d e n t i f ys e r v e r m 广东工业大学工学硕士学位论文 s u n 公司的i d e n t i f ys e r v e r 支持自由软件联盟( l i b e r t ya l l i a n c ep r o j e c t ) 发布的基于s a m l 的l i b e r t y 身份识别标准。它提供了一个开放性的综合网络身 份管理方案,包括目录策略和证书发放等多个功能。 ( 目前为止基于s a m l 的身份识别标准还没有涉及身份认证联盟。) 2 m i c r o s o f t n e tp a s s p o r 0 1 q n e tp a s s p o r t 是m i c r o s o f t 对外提供的服务。n e tp a s s p o r t 的关键是h t t p 重定向,当用户访问p a s s p o r t 参与站点时,会被重定向到p a s s p o r t 登陆页面, 通过认证后,认证信息将会保存到用户的c o o k i e s 中,最后,重定向回用户请求 的w e b 站点。n e tp a s s p o r t 要求所有参与的站点,把它们的用户信息存储在微 软的服务器上。 3 l mw e b s p h e r ep o r t a ls e r v e r l l l l i b m 的w e b s p h e r e 服务器实现了单点登录,它的实现关键是通过采用l t p a ( l i g h t w e i g h tt h i r d p a r t ya u t h e n t i c a t i o n ) 对c o o k i e 中的用户信息进行 加密来保证的。所有参与的服务器,享有相同的密钥对,用户访问应用系统时, 必须先认证,当认证通过后,用l t p a 私钥加密用户认证信息,并写回用户的浏 览器的c o o k i e s 中,而其它参与服务器拥用这个共享的l t p a 密钥,故可以认证 存放在c o o k i e s 中的用户信息,最终可以确定用户身份是否合法。 1 3 研究的内容与意义 1 3 1 研究内容 1 联合单点登录,就是用户代理从所在信任圈单点登录到其他信任圈中, 实现跨安全域的资源访问,简单的说就是跨两个身份提供者进行资源的访问。目 前,没有相关的协议交换和概要交换的定义。其实,用户和站点,两个身份认证 点之间的交互,关键的问题是如何保障联合单点登录的安全,其中,包括 三大问题: a 如何实现在整个登录过程中会话的安全和会话的转化。 b 如何实现登录期间确保凭证的交换和安全。 c 用户与站点,站点与站点间安全认证的实现。 2 第一章绪论 2 联合身份管理,它是一个庞大的功能组。传统意义上,包括:用户供应, 角色和组,帐户服务,委派管理,单点登录,全局注销。由于联合身份认证是基 于单点登录和身份认证基础之上的身份认证,所以,除了全局注销,用户供应和 帐户服务部分,其余功能组仍可以沿用使用。因此,如何实现在不同信任圈内同 步全局退出,用户账号维护和密码更改将是解决联合身份管理的关键点。 3 联合访问控制,对于资源被访问控制的权限问题,解决的方法包括:容 器中实施配置文件的设置以达到声明粗粒度的访问控制。通过编程的方式实现较 好的细粒度访问控制。使用策略语言,策略数据仓库实现支持大容量,高精确度 的访问控制。但是,要实现多站点使用不同策略,高精确度的联合访问控制存在 的问题是: 需要协调各个信任圈内策略的变动,如,当k 用户在a ,b 两个信任圈内存 有帐户,其中,k 用户在a 信任圈内注册,在b 信任圈是临时用户身份。而且, b 信任圈只对a 信任圈的用户部分开放。某天,当k 退出a 信任圈时( 在a 信任 圈不再有帐户) ,如果a 信任圈没有立刻通知b 信任圈注销k 的帐户,b 信任圈 的资料就能被k 非法使用( 当k 没有离开a 信任圈,只是被调离原来的职位,a 信任圈决定重新制定对k 的访问控制策略,这种情况下,也会影响到b 对k 的策 略) 。因此,信任圈之间策略的协商,对于使用复杂策略,策略库实现细粒度, 大范围的访问控制很是重要。本文将在基于现有的s a m l 和x a c m l 的技术规范基 础上设计一种新的解决方案。 1 3 2 课题特色 1 设计一个联合单点登录模型,其中包括对s s o 代理,断言构造器,c o n t e x t 交换器,拦截检查器之间的具体互联和各自的内部实施。利用了w e b 服务中的 集成设计模式一应用到应用模式,并通过j a x p 1 2 实现灵活的数据转换,通过 j a x r p c 实现异种平台互联。 3 广东工业大学工学硕士学位论文 2 由于联合单点登录有别于一般的单点登录,需要重新考虑当用户进行联 合单点登录时所面临的会话安全和转化等相关问题,因此,将对会话管理机制实 行自定义( 不使用容器默认给出的会话管理机制) 。并保证凭证令牌的安全转换。 3 结合联合单点登录模型,对跨信任圈全局注销 提出一种设计模型。 4 设计一种联合,跨信任圈的用户帐户管理 ,s 模型,给出具体的实施过程。 5 基于现有的s a m l 和x a c m l 1 4 规范,设计一种适合于多个信任圈之间进行 策略协商的模型。 1 4 论文的组织 针对以上主要任务,对本文的内容进行划分后,按以下章节组织,共有五章: 第一章绪论主要介绍了课题的来源、国外的研究应用现状、研究的内容和意 义,并分析了课题的特色之处。 第二章对于本课题涉及到的相关技术进行了介绍。 第三章是介绍了整个系统实现的体系结构及各个模块实现的功能。 第四章是关键模块设计。 第五章是关键实现及部署。 最后对全文的工作进行总结,并对这一研究课题的前景进行展望,对尚需做 的进一步完善工作进行了讨论。 4 第二章相关技术概述 2 1s 朋l 第二章相关技术概述 安全断言标记语言( s e c u r i t ya s s e r t i o nm a r k u pl a n g u a g e ,s a m l ) ,是由两 项较早的安全提议( s e c u r i t ys e r v i c em a r k u pl a n g u a g e ,s 2 m l 和a u t h o r i z a t i o n m a r k u pl a n g u a g e ,a u t h x m l ) 1 t 5 派生出来的基于x m l 的标准。作为一种安全框架, 其主要目的是用于交换相关主体( 指拥有特定于某安全领域的身份信息实体) 的 安全断言信息。使用于用户认证、授权和属性信息的通信中。通过使用h t t p - p o s t 或s o a p 消息报头,使得应用可以参与单点登录。s a m l 不需要安全机制及相关联 的目录信息的副本,但要求用户至少向一个支持s a m l 的身份提供者注册,身份 提供者的主要任务是向用户提供认证服务。而且,s a m l 也没有定义如何实现认 证和授权服务。 s a m l 到目前为止共出了三个版本,s a m l i 0 ,s a m l l 1 ,s a m l 2 0 。 2 0 0 2 年1 1 月,s a m l l 0 被批准为o a s i s 标准,主要解决了的问题是关于身 份管理方面的,即怎样在域之间传递身份信息。 2 0 0 3 年9 月2 日o a s i s 发布了s a m l i 1 1 t ; ,主要是增加了对l i b e r t ya l l i a n c e 规范定义的“网络身份”的支持,这样一来,允许通过w e b 帐户链接和基于角色 的联合,通过i n t e r n e t 在同一个组织内或不同组织的网站间安全地交换用户认 证和授权信息。同时,还制定了数字证书 t , 使用指南,从而可以使用数字签名 t 8 】 来作用于s a m l 断言。 2 0 0 5 年3 月,o a s i s 批准发布s a m l 2 0 ,它新增了全局注销,会话管理,支 持跨网站帐号链接身份联合h g 框架的扩展。 s a m l 架构,包括凭证收集器( c r e d e n t i a lc o l l e c t o r ) 2 0 ,认证实体 ( a u t h e n t i c a t i o na u t h o r i t y ) 2 0 l ,会话实体( s e s s i o na u t h o r i t y ,s a ) 2o i ,属 性实体( a t t r i b u t ea u t h o r i t y ) 2 0 和策略决策点( p o l i c yd e c i s i o np o i n t ,p d p ) 2 0 】。其中,凭证收集器用于收集用户凭证以便向相关认证实体、属性实体和策 略决策点认证系统对象。认证实体,生成认证断言的系统实体。会话实体,负责 5 广东工业大学工学硕士学位论文 维护会话状态的系统实体,如身份提供者。属性实体,生成属性断言的系统实体。 策略仓库,存储策略的仓库。属性仓库,存储属性断言的仓库。策略决策点( p d p 是实施安全策略的系统实体,不允许未授权的服务请求者访问或使用目标资源, 实际上是处理资源访问请求并与s a m l 实体进行通信以得到s a m l 授权决策断言的 s a m l 响应器) ,为自己或其他请求授权的系统实体做出授权决策的系统实体。策 略实施点( p e p 是在具体的应用环境中执行访问控制的实体,将具体应用环境下 访问控制请求转换为适应x a c m l 要求的决策请求,然后根据决策请求的判决结果 执行相应的动作。) ,向服务请求者授予或撤销资源访问权限的系统实体。策略 管理点( p a p 是提供管理功能的系统实体,用于维护策略信息。) ,定义和维护策 略的系统实体。 s a m l 断言由s a m l 实体生成,分三种断言:认证断言,含有主体成功通过认 证的业务数据。授权决策断言,包含有关授权决策的业务数据。属性断言,包含 有关主体属性的业务数据。 如下是s a m l 的域模型,s a m l 架构中有两个与凭证有关的组件,凭证产生器 i t s ( i n t e r - s i t et r a n s f e r ) ,凭证收集器a r s ( a s s e r t i o nr e t r i e v a ls e r v i c e ) 前者用于根据s u b j e c t 的信息生成凭证,后者是根据凭证得到断言服务。 图2 1s a m l 域模型 f i g u r e 2 1s a m l d o m a i nm o d e l 其机理是:系统实体( 客户端) 发送访问系统资源的请求,请求中含有用户 凭证,凭证收集器收到凭证,并对相关联的认证实体、属性实体、策略决策点 p d p 进行认证,然后授权给客户端相应的访问权限。 6 第二章相关技术概述 为了说明清楚如何使用s a m l 架构实现两个站点的协同工作,如何s a m l 域模 型映射到s a m l 逻辑架构,下面列举例子来说明: 图2 - 2s a m l 逻辑架构 f i g u r e2 - 2s a m ll o g i c a la r c h i t e c t u r e 如上图所示,在基于s a m l 的架构下,系统实体的交互如下: 1 客户端通过r e s o u r c es i t e 的认证服务。 2 客户端创建请求,访问t a r g e ts i t e 的资源,s a m l 使用本地的j a a s 认证 模块或其他认证方法生成认证断言。 3 资源使得请求重定向回s a m l 响应器。 4 s a m l 响应器向r e s o u r c es i t e 发送s a m l 认证声明请求( 其中,请求的组 成为封装成安全令牌的用户凭证,请求数据( 一般为密码认证) ,数字签名,它 们都一起封装到s o a p 主体中,并通过h t t p 发送出去) 。 5 r e s o u r c es i t e 中的认证服务处理s a m l 认证声明请求,并返回s a m l 认证 声明响应( 包括数字签名,响应数据,都封装到s o a p 主体中) 。 基于h t t p 的统一身份认证存在两种方式来实施断言信息的传送: l 。身份提供者的推方式【。- 】 1 1 身份提供者直接将断言推给应用服务提供者 1 2 a c s 校验断言,如果成功,将把用户的请求重定向到目标u r l 7 fj 广东r t 业大学t 学硕十学位论文 图2 - 3 身份提供者推方式 f i g u r e 2 3i d e n t i t yp r o v i d e rp u s hm e t h o d 1 用户代理向目标站发送服务请求。 2 不管请求发往哪个目标站,目标站都会通过浏览器转向将请求发往源站 做用户认证工作,源站将通过i t s 将通过用户的身份信息生成断言。 3 源站将生成一个h t m l 的表单( 包含了断言信息) ,然后被重定向到浏览 器。 4 浏览器收到断言信息后,自动提交该表单到目标站,目标站根据断言进 行模拟登录操作,然后得到服务结果。 5 目标站把最后的响应结果返回给浏览器,完成统一身份认证的过程。 2 服务提供者的拉方式( 这是本设计中要用到的方式) 【2 l 】 2 1 服务提供者通过凭证( a r t i f a c t ) 在身份提供者上获得断言。 2 2 a c s 与a r s 打开一个通道,根据凭证内容产生相应的断言,如果校 验成功将用户的请求重定向到目标u r l 。 8 第二章相火技术概述 图2 - 4 服务提供者拉方式 f i g u r e 2 4s e r v i c e p r o v i d e rp u l lm e t h o d 1 用户代理( 浏览器) 向目标站发出服务请求。 2 不管请求发往哪个应用系统服务( 目标站) ,应用服务系统( 目标站) 都会通过浏览器转向将请求发往源站做用户认证工作,源站将通过i t s 将通 过用户的身份信息生成凭证( a r t i f a c t ) 。 3 源站将请求( 带有凭证) 重定向到浏览器,然后通过浏览器重定向到目 标站。 4 目标站将请求转发到a c s ( a s s r t i o nc o n s u m e rs e r v i c e ) 。 5 a c s ( a s s r t i o nc o n s u m e rs e r v i c e ) 与源站的a r s ( a s s e r t i o nr e t r i e v a l s e r v i c e ) 建立专用通道,根据刚得到的凭证查询断言。 6 请求( 带断言) 被发送给目标站,目标站通过断言认证用户,并且模拟 用户登录,完成服务请求。 7 将应用系统的服务结果重定向到用户代理( 浏览器) ,统一认证过程完 成。 s a m l 没有取代认证服务,仍然可以使用认证基础设旌,如j 从s 2 2 认证模块、 9 广东t 业大学工学硕士学位论文 内部使用l d a p 目录服务器 2 3 开发的认证框架。也没有取代策略引擎,自定义p a p 和p e p 来实施安全策略规则还是必要的。 s a m l 满足了单点登录安全的基本要求,它允许在同一个安全会话中将身份 信息从一个站点传递到另一个站点,而无需用户重新登录。同时,还支持远程授 权,服务提供者要求另一个服务提供者认证用户,并可能检索用户的信息或属性。 服务提供者无效搭建新的认证基础设施,主服务提供者可使用现有的安全基础设 施或第三方服务提供者来验证消费者的身份。这样,主服务提供者认证消费者后, 所有加盟服务提供者就可以使用s a m l 认证和授权断言,从而允许用户无缝的访 问多个应用系统服务。由于无需多次登录多个应用系统服务,用户的体验得以改 善。 2 2x a c m l 可扩展访问控制标记语言 2 4 ( e x t e n s i b l ea c c e s sc o n t r o lm a r k u pl a n g u a g e , x a c m l ) 现在最新版为x a c m l 2 0 1 2 5 ,是由o a s i s 批准的一项安全策略管理标准。 是一种基于x m l 的策略语言和访问控制决策请求响应的语言,主要定义了一种 表示授权规则和策略的标准格式,还定义了一种评估规则和策略以做出授权决策 的标准方法。x a c m l 提供了处理复杂策略集合规则的功能,补充了s a m l 2 0 的不 足,而这一点,很适合使用到大型的访问控制应用中,对于实现跨多个信任圈 粥】 联盟的联合访问控制起着重要作用。 2 2 1 策略语言模型 作为一种策略语言,其模型【删的表示如下: l o 第二章相天技术概述 攫尉( 目标釜件效用) 体资源,环境,行动) x a 锄l 重醢盈主撞翌 图2 - 5x a c m l 策略语言模型 f i g u r e2 - 5x a c m lp o l i c yl a n g u a g em o d e l 1 策略:是使用一组规则表示的访问控制策略。 2 职责:是在策略或策略集中指定的应在执行授权决策时执行的操作。 3 策略集:由策略组合算法,职责,策略,目标组成。 4 规n - 概要了条件表达式,决定是否允许资源访问的请求。 5 目标:一组简化的条件,包括主体,资源,环境,行动。 6 主体,资源,行动,环境:是在具体的请求,响应中使用的,属性是他 们在具体使用情景的特征表现。p e p 向p o p 发送的请求中,主要的组成就是这些 属性。 2 2 2x a c m l 的流程和架构 以下使用图来说明一下x a c m l 的逻辑组件及组件间的交互卿 )1;, ( q 9 影 广东工业大学工学硕士学位论文 1 定 义 焉一 略 s u b j , 娃 兰i 黧| 辇,厂 :壁茎苎苎 二蒯上下文处理器商 ! 垒:逗型基丝l 上7 x 艇理2 i ! 墨堕廛遮蓼 ! ! :垄兰堕窒圭! 型 1 矧 哪例斓哥 弋性一 静i l r il 图2 6 数据流程 f i g u r e2 - 6d a t af l o w 1 策略被定义保存到策略管理点p a p 。 2 c l i e n tr e q u e s t 向p e p 请求访问资源,以求获得相关联的目标属性和策略。 3 p e p 以本地请求的格式发送访问请求到x a c m l 上下文处理器。 4 上下文处理器创建x a c m l 请求上下文,向p d p 发送策略评估请求。 5 p d p 向上下文处理器查询评估策略所需的目标属性。 6 上下文处理器在第4 步创建的请求上下文中获得属性,或向p i p 查询属性。 7 p i p 收集从主体,环境,资源中的属性,并返回给上下文处理器。 8 上下文处理器把资源包含进上下文中。 9 资源移入上下文处理器的上下文中。 1 0 上下文处理器把请求的属性返回给p d p 。p d p 继续进行策略评估。 1 1 上下文处理器把响应上下文转换为p e p 本地可接受的格式。 1 2 上下文处理器把处理结果返回给p e p 。 1 3 p e p 利用处理结果执行相应的责任。 1 2 哪里一 一 一置 = l 1 乙 聊二“霍 第二章相关技术概述 2 2 3x a c m l 2 0 中x a c m l 与$ a m l 的交互 图2 - 7x a c m l 与s a m l 交互 2 8 1 f i g u r e2 - 7x a c m l a n ds a m l c o m m u n i c a t i o n s 1 服务请求者请求访问特定资源,p e p 将资源访问请求以s a m l 授权决策查询的 方式发送给x a c m l 策略决策点p d p 。 l a 策略实施点可以使用属性查询直接从在线属性实体中获耿属性。 2 a 作为响应,将以s a m l 响应方式返回a t t r i b u t e s t a t e m e n t 。 4 ap e p 可以从属性仓库中获得属性,它们是以s a m l 属性断言的形式存储到仓 库中的。 2 x a c m l 的p d p 可以使用a t t r i b u t e q u e r y 直接从在线属性实体中获取属性。 3 以s a m l 响应方式返回a t t r i b u t e s t a t e m e n t 4 x a c m l 的p d p 也可以从仓库中得到相应策略。 5 p a p 从策略仓库中搜索到所要的策略。 5 a p d p 所需要的属性可以从属性仓库中搜索获得。 6 p a p 返回p d p 需要的策略声明。 7 返回p d p 需要的策略。 8 当得到相关的策略和属性后,x a c m l 的p d p 可以用s a m l 授权决策断言来响应 x a c m l 的p e p 。 广东工业大学工学硕士学位论文 2 3s p m l 服务供应标记语言( s e r v i c ep r o v i s i o n i n gm a r k u pl a n g u a g e ,s p m l ) 1 2 9 1 , 是一种x m l 表示法,主要用于创建用户帐号供应服务请求或处理与用户帐号服务 管理相关的服务请求。目前的版本是s p m l l 0 。 使用s p m l 的目的,是为了两个:一是,自动化i t 配置任务,通过标准化配 置工作,使其更容易封装配置系统的安全和审计需求。二是,实现不同配置系统 间的互操作性,可以通过公开标准的s p m l 接口来实现。 2 3 1s p b l 的组成和各部分间的关系 主要有三部分:请求机构( r e q u e s t i n ga u t h o r i t y ,r a ) 制,配置服务 点( p r o v i s i o n i n gs e r v i c ep o i n t ,p s p ) 3 0 ,配置服务目标( p r o v i s i o n i n gs e r v i c e t a r g e t ,p s t ) 删。 图2 - 8s p m l 组成及关系 f i g u r e2 - 8s p m lc o n s t r u c t i o n sa n d r e l a t i o n 2 3 2 主要的组成 上图中,主要的组成为r a ,p s p ,p s t : 1 4 第二章相关技术概述 r a 是s p m l 中的c l i e n t ,它创建并发送s p m l 文档给s p m l 服务点p s p ,在请 求中包含有在特定服务点上执行的操作。p s p 具有双重的身份,他可以是p s p , 也可以像r a 一样向其他p s p 发送s p m l 请求。 p s p 主要负责监听并处理r a 或其他p s p 发送过来的请求,然后返回请求相 应的结果。 p s t 是执行p s p 请求的具体功能部分。 2 4 身份认证和单点登录 2 4 1 身份认证 身份认证作为应用系统安全的首个安全设点,怎样有效的保证身份认证的 可靠性、安全性和高效性是实现w e b 应用系统重点。身份认证的实现有多种方式, 以下列举一二: 口令认证 3 l 】:是一种常用身份认证方式,用户向认证服务器提供口令,认证 服务器收到口令后,和系统存储口令比较,确认用户是否为合法用户。口令认证 非常简单,易于在开发中实现,但由于保密性差,极不安全,对于需要极高安全 性的企业应用来说,不是合适的选择。 双因子认证【3 l 】:采用两个因子认证,其中一个因子是只有用户本身知道的密 码,它可以是个人认证号p i n 或口令,另一个因子则是只有该用户拥有的外部物 理实体一智能安全存储介质。采用了双因子认证后,虽然安全性成倍增加了,但 它要求有智能安全存储介质,使用不方便,成本也较高。 s k e y t 3 1 :通过该方式进行身份认证时,客户方需要进行多次进行h a s h 运算, 服务器要记录每次登录的口令,并且,每经过一段时问后就要重新初始化系统, 整个认证过程的运算量较大,造成服务器的额外开销提高。 挑战握手认证 s l 】认证对象向被认证对象发送每次认证都不同的挑战消息, 被认证对象对挑战消息和密钥计算哈希值,并把该值作为挑战的应答消息。最后 认证方计算挑战消息和用户密钥的哈希值,和被认证对象发送的应答消息比较, 如相符,则认证成功。优点:加密算法使用了散列函数,认证速度快,客户密码 经散列后才在网络中传输,由于散列函数是单向的,在网络截获该值,是无法还 1 5 广东t 业大学工学硕士学位论文 原客户的密码。缺点是在b s 架构中,由于不同的浏览器都有自己的实现方案, 无法在b s 架构中实现通用的认证。 基于h t t p s 的单向s s l 身份认证( 3 l 】:一般建立在p k i 基础上,服务器需要先 申请数字证书,并保存在服务器中。当然,也可以使用自签名的数字证书。客户 端负责验证服务器的数字证书,认证过程中服务器向客户端发送证书链,客户端 检查服务器发过来的证书链,如果证书链中包含了客户端已经保存根证书签名, 客户端将认为服务器身份是可信的,同时建立一个共享秘钥。如果证书链中没有 客户端保存根证书的签名,或者服务器证书是一个自签名的证书,用户则需要判 断是否信任该服务器的证书。用户发送用共享密钥加密的用户名和密码散列值, 请求服务器认证,服务器查找身份数据库,如果存在该用户且密码散列值和用户 传送过来的一致,则服务器确认客户的身份是真实的。 基于h t t p s 的双向s s l 身份认证 3 l 】:不仅是客户端要验证服务器的证书,而 且服务器端也要验证客户端的数字证书,但前提条件是客户端必须先保存自己的 私钥到浏览器中。如果客户在公共场所,则并不是很安全的选择。 由于s s l 协议是一种完全公开的开放性协议,并通过了非常严格的审查。所 以在企业中,要实现安全的身份认证,多采用基于h t t p s 的单向s s l 身份认证。 不过,在s s l 协议中,由于使用了公钥加密算法和对称密钥加密算法,对服务器 负载能力要求会较大。 2 4 2 单点登录 单点登录( s i n g l es i g n o n ,s s o ) 3 2 是指用户只需一次身份认证,就可以 无缝访问被授权的多个系统或多个资源。使得用户避免了重复多次登录,记忆多 个不同应用系统的用户名和密码,从而,一定程度上提高了系统整体的安全性。 因为,用户登录的次数越多,密码被盗用的概率越高,用户为了好记忆,可能多 个系统使用同一的密码,或者登录上某个系统的安全性很弱,导致这个系统被入 侵,当黑客从这个系统中偷窃到用户密码时,转过来会对同一用户使用的其他系 1 6 第二章相父技术概述 统构成严重威胁( 都使用同一密码) 。 图2 - 9 传统单点登录 f i g u r e2 - 9t r a d i t i o n a ls s o 门户单点登录:当用户通过特定资源认证后,再次访问该资源时不需重新登 录。其原理是,门户中的资源应用都使用安全令牌来验证验证用户的身份,其中, 使用了拦截器,对用户的资源请求( 带安全令牌) 进行令牌验证,令牌有效的可 以通过,无效的,将被重定向。 跨域单点登录( c r o s s - d o m a i ns s o ,c d g s o ) :该登录方式允许用户在一个域 认证后,可以使用其它域中的应用而无需再次认证。当前,对于通过浏览器为客 户提供跨域单点登录还是一个严峻问题。它应包含两个组件:跨域控制器和跨域 单点登录组件。跨域控制器负责将请求重定向到认证服务或跨域单点登录组件。 跨域单点登录组件负责为所属的域设置s e s s i o n 信息。 联合单点登录 身份提供者联盟:两个w e b 应用之问可以保留原来的用户认证机制,通过建 立它们各自身份的对应关系来达到s s o 的目的。s s o 并不集中于某个点上,但在 极端情况下,网络中仅存在一个身份提供者( i d p ,也就是认证服务器) ,而所有 的服务提供者( s p ) 都依赖于同一个i d p 进行身份验证。当用户通个某个i d p 身份认证后,就可以直接访问该i d p 所在信任圈( 联盟) 的其它应用。 1 7 广东工业大学工学硕士学位论文 缝 图2 - 1 0 使用身份提供者进行跨信任圈单点登录 f i g u r e2 - lou t i l i z ei d e n t i t yp r o v i d e rt os s o i n s t e a do fc u s t o m e r sa g e m 跨域联盟:允许每个身份提供者充当身份断言的生产者和消费者。也就是实 现多个信任圈中的身份提供者对身份管理的协同操作。 2 5 访问控制 所谓访问控常1 3 3 3 是指,它决定了谁可以访问系统,谁能访问系统的何种资 源以及如何使用这些资源。适当的访问控制能够阻止未经允许的用户有意或无意 地获取数据。访问控制的手段包括有:用户识别代码、口令、登录控制、资源授 权( 例如用户配置文件、资源配置文件和控制列表) 、授权核查、日志和审计等。 在访问控制技术发展过程中,出现了多种重要的访问控制技术,如自主访问控制 ( 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 s c o n t r o l ,m a c ) 和基于角色的访问控制( r o l e - b a s e da c c e s sc o n t r o l ,r b a c ) , 这些访问控制技术的主要目的都是防止非法用户访问系统和合法用户对系统资 源的非法使用。然而,三种访问控制技术各具特点: 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

温馨提示

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

评论

0/150

提交评论