(计算机软件与理论专业论文)基于liberty的统一身份管理平台设计.pdf_第1页
(计算机软件与理论专业论文)基于liberty的统一身份管理平台设计.pdf_第2页
(计算机软件与理论专业论文)基于liberty的统一身份管理平台设计.pdf_第3页
(计算机软件与理论专业论文)基于liberty的统一身份管理平台设计.pdf_第4页
(计算机软件与理论专业论文)基于liberty的统一身份管理平台设计.pdf_第5页
已阅读5页,还剩77页未读 继续免费阅读

(计算机软件与理论专业论文)基于liberty的统一身份管理平台设计.pdf.pdf 免费下载

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

文档简介

摘要 摘要 计算机网络和信息技术的迅速发展使得企业信息化的程度不断提高,在企业 信息化过程中,诸如o a 、c r m 、e r p 、o s s 等越来越多的业务系统应运而生,提 高了企业的管理水平和运行效率。与此同时,各个应用系统都有自己的认证体系, 随着应用系统的不断增加,一方面企业员工在业务系统的访问过程中,不得不记 忆大量的帐户口令,而口令又极易遗忘或泄露,为企业带来损失:另一方面,企 业信息的获取途径不断增多,但是缺乏对这些信息进行综合展示的门户。 据此,单点登录技术和和支持跨域的用户身份管理技术应运而生。微软的 p a l s s p o r t 即是其中之一,它以集中式的方式将用户的身份密码以及其它的一些信息 存储在一个单一的大型数据库里。用户只要在任何一个微软授权的站点获取通行 证( p a l s s p o r t ) ,就可以自由地访问任何其它微软授权的站点。这种集中的身份验证 机制需要用户放心地将他们所有的认证信息交付给一个单一的服务器,这增大了 风险。目前,随着s a m l 标准的广泛推广,分布式的身份管理技术得到越来越多 的专业人士和机构和企业的认可。这种技术提倡用户将认证信息存储到许多分散 的数据库,将用户的若干身份形成身份联邦,以此来实现单点登录和统一身份认 证。从目前该领域的发展现状来看,联邦已经逐渐成为身份管理领域的主要研究 问题。 本文首先分析了身份管理的发展趋势,由此引出了本文的研究内容和主要工 作。然后介绍本文的设计的基础s a m l 2 0 标准和“b e n v 身份联邦框架1 2 , 并且结合实际的一些案例进行系统分析。深入研究了统一身份管理平台,主要包 括几种传统的统一身份管理系统。在此基础上提出了自己基于信任组+ 信任域双层 信任网络的身份联邦信息交换模型以及系统框架设计,并对系统的主要功能模块, 包括帐户关联、单点登录、单点注销、用户注册、关联取消、隐私保护等等,进 行了说明。接下来着重介绍各模块的设计。在本文的最后,做出结论和展望。 关键词:身份管理,s a m l 2 o ,l i b e n y ,身份联邦,信任组 a b s t r a ( 了r a b s t r a c t w 油t h er a p i dd e v e l o p m e mo ft h ec o m p u t e rn e m o r k 锄di n f b n i l a t i o nt e c h n o l o g y , t l l ei i l f o m a t i o m z a t i o no ft h ee n t e 印r i s e sh a si m p r 0 v e d 伊e a t l y m o 陀赳l dm o r eb u s i n c s s s y s t 锄s ,s u c h 嬲o a 、c r m 、e r p 、o s s ,h a v eb r o u g h to u ta n di m p r o v e dt i l e m 锄a g 锄e n tl e v e ia n dw o r ke 伍c i e n c y b u t ,e a c ho ft h 锄h a st h e i ro w ni d e i l t i t ) r s y s t e m s i tl e a d st om a n yp m b l e m s o nm eo n eh 锄d ,p e o p l eh a v et 0k e e pl o t so f a c c o u i l tp a s s w o r d si nm i n d i ft h ep a s s w o r di ss t o l e 珥也ee 1 1 t e 币r i s e sw i l ll o s es om u c k o n m eo t h e rh a n d ,t h ee n t e 叩r i s e sg e tm o r ea i l dm o r ei i l f o 姗a t i o ni nd i 伟e r e n tw a y s ,b u t m e y l a c kau i l i f o 肌p o n a l t os h o wt h ei n f o m a t i o i l a s 南rm e s ep r o b l e m s ,s s o ( s i n 舀es i g n e d - o n ) t e c h n 0 1 0 9 y 锄du s e ri d e n t i t y m 柚a g 锄e i l tt e c t u l o l o g ys u p p o r t i i l ga c r o s sd o m a j nh a v er a p i d l yd e v e l o p e d m i c r o s o 俞s p a s s p o r to n c ew e n s 0 l v e dt 1 1 ep r o b l e m s i ts t o r e st h eu s e r s i d 训t yp a s s 、v o r d sa n do m e r i n 佑r n l a t i o ni nas i n 硝el a r 萨d a t a b a s e t h eu s e r so r d yh a v et og c tap a s s w r o r di i l a l l y m i c m s o ra u t h o r i z e dw e b s i t e a r i dt h e nt h e yc a n 丘优l ya c c e s s 锄ym i c r o s o 盘a u t h o f i z e d w e b s i t c t h i sc e n 昀l 沱e di d e n t 时a u t h e n t i c a t i o ns y s t e mn e c d su s e 岱t 0h a n di nm e i ra n a u m e i l t i c a t i o ni n f o 册a t i o nt oas i n 酉es e r v a n di tc e n a i l l l yi n c r e a l s e st h er i s k a t p r e s e i l t ,诵mm ed e v e l o p m e n to fs a m ls t a n d 枷,m a i l yp r o f e s s i o n a l s ,0 唱a n i z a t i o n s 姐d t e 叩r i s e sh a v e 叩p r o v e dm et e c h n o l o g ) ro fm ei d e n t i t yf 甜e r a t i o mt h i st e c h n o l o g ) r a d v o c a t e si l s e r st os c a t t e rm e i rv 丽f i e di n f b n n a t i o ni nm 锄yd i s 伍b u t e dd a t a b a s e sa n d f o n l l 锄i d e n t i t yv e r i f i c a t i o n 伽e r a t i o n i nt h i sw a y w ec a nr e a l i z es s oa n dt h eu n i t e d i d e n t i t ya u h o d t y i t lv i e wo fc u l l r e n ts i t u a t i o no ft h i sf i e l d ,i d e n t i t yf 酣e r a t i o nh a s b e c o m em em a i l lp r o b i e m so ft l l ei d e n t i t ym a n a g e i n e n t i i l 峨st h e s i s ,n l et e n d e n c yo ft h ei d e n t i 妙m a l l a g e m e l l tw i l lb e 锄a l y z e df i r s t l y a i l d l e a dt 0r e s e 嬲hc o n t e i l ta n dm a i nw o r k t 1 1 e 凡s o m eb a s i ck n o w l e d g ei n v o l v e di nt l l i s m e s i si sp i i e s e n t e d ,i n c l u d i n gs 蝴l 2 0 锄da 仔锄eo ft h ei d e n t i t yf 酣e r a t i o n l i b e n y 1 2 ,a n ds o m er e a l c a s ew i l lb e a 1 1 a l y z e dt o o a r e r “s ,t 1 1 eu 1 1 i f o mi d e n t i t y i n a i l a g e n l e n tp l a t f o m ,i n c l u d i n gs e v e r a l 仃a d i t i o n a l i d e n t i t ym a i l a g e m e i l ts y s t e m s ,w i l l b ed i s c u s s e dd e e p iy l a t 锄i d e n t i t yi i l f o n l l a t i o ne x c h a n g em o d e lb a s 。do n 衄l s t a b s t r a c t g r o u pa n dt m s td o m a i nn e m o r ka n d l ed e s i 印o ft h es y s t e ma r ep m p o s e d ,a n dt h e m a i nm n c t i o n a lm o d u l e so fm es y s t 锄a r ea l s o i n t r o d u c e d ,i n c l u d i n ga c c o u n t a s s o c i a t i o 珥s s o , s l o( s i n 百e l 0 9 0 u t ) ,u s e rr e 百s t a s s o c i a t i o nc a n c e l l a t i o na 1 1 d p r i v a c yp r o t e c t i o na n ds oo n a tt l e 饥do f “st h e s i s ,ac o n c l u s i o n 觚da i lo u t l o o kw i l i b e m a d e k e y w o r d s :i d e n t i t ) ,m a j l a g e i l l e n t ,s a m l 2 0 ,l i b e i _ 吼i d e n t i t yf e d e r a t i o n ,t r u s tg r o u p 【i i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名:丛墅丝日期:年月日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:导师签名: 日期: 第一章引言 1 1 研究背景 第一章引言 随着信息化的迅猛发展,政府、企业、机构等不断增加基于i n t e n l e t i n t m e t 的 业务系统,如各类网上申报系统,网上审批系统,o a 系统等。系统的业务性质, 一般都要求实现用户管理、身份认证、授权等必不可少的安全措施;而新系统的 涌现,在与已有系统的集成或融合上,特别是针对相同的用户群,会带来以下的 问题: 1 如果每个系统都开发各自的身份认证系统将造成资源的浪费,消耗开发 成本,并延缓开发进度; 2 多个身份认证系统会增加整个系统的管理工作成本; 3 用户需要记忆多个帐户和口令,使用极为不便,同时由于用户口令遗忘 而导致的支持费用不断上涨; 4 无法实现统一认证和授权,多个身份认证系统使安全策略必须逐个在不 同的系统内进行设置,因而造成修改策略的进度可能跟不上策略的变化; 因此,对于有多个业务系统应用需求的政府、企业或机构等,需要配置一套 统一的身份管理系统,以实现集中统一的身份管理,并减少整个系统运营的成本。 1 2 国内外研究现状 微软的p 2 l s s p o r t 曾经比较好的解决了统一身份管理的问题【。它以集中式的 方式将用户的身份密码以及其它的一些信息存储在一个单一的大型数据库里。用 户只要在任何一个微软授权的站点获取通行证( p a s s p o r t ) ,就可以自由地访问任何 其它微软授权的站点。这种集中的身份验证机制需要用户放心的将他们所有的认 证信息交付给一个单一的服务器,这增大了风险。 目前随着s a m l 标准的广泛推广,分布式的身份管理技术得到越来越多的 专业人士和机构、企业的认可。这种技术提倡用户将认证信息存储到许多分散的 数据库,将用户的许多身份形成身份联邦,以此来实现单点登录和统一身份认证。 从目前该领域的发展现状来看,联邦已经逐渐成为身份管理领域的主要研究问题。 国外目前已经广泛运用的联邦身份管理标准有s a m l ( s e c 嘶t ya s s e n i o n s 电子科技人学硕士学位论文 m a r k u pl a n g u a g e ,安全断言标记语言) 、i d f f ( i d e n t i t yf e d e r a t i o nf r 锄e 、v o r k , 自由身份联邦框架) 、i d w s f ( l i b e r t yw 曲s e r v i c ef r 锄e w o r k ,身份w 曲服务框 架) 和w s f e d e r a t i o n ( w 曲服务联合语言) 。所有这些联邦i d 管理标准都建立在 多项w 曲服务标准上,例如) ( m l 、s o a p 、w s s e c 嘶t y 等掣2 1 。在第二章将分 别对其介绍。 1 2 1s a m i , 安全性断言标记语言( s e c u r ea s s e i t i o nm 矾( u pl a j l g u a g e ,简称s a m l ) 把 s 2 m l 和a u u 州l 规范结合在一起,是o a s i s 发布的一个复杂规范。顾名思义, s a m l 是一种标记安全断言的x m l 扩展,它提供了一种封装验证、授权等安全 信息的形式,已经被用来解决s s o ( 单点登录) 和w 曲服务安全等重要问题。 最初的s a m l 是由s 2 m l 和a u t l 两种规范结合形成的。2 0 0 1 年1 月, o a s i s 成立了s s t c 小组,并且在2 0 0 2 年1 1 月推出了s a m l1 0 规范。它的主 要目标是解决s s o 问题,以及分布式环境下验证授权信息交换的问题。2 0 0 3 年 9 月,s s t c 推出了s a m l 的1 1 版本。1 1 版本针对互动性和明确性方面做了改 进,并加强了s a m l 与x m l 签名的联系。这个版本在x m l 签名相关的地方与 1 1 版本有略微的冲突。2 0 0 5 年3 月,推出了s a m l 2 0 ,作了较大的改动,在很 多地方与s a m l1 x 版本不兼容。本文主要针对s a m l2 0 版本。 s a m l 的优点包括: 平台无关性:s a m l 的设计屏蔽了任何平台架构的特殊性。 松耦合性:s a m l 不需要用户信息的同步更新等复杂的实现。 便捷性:终端用户只需登录一次即可访问所有服务( 即s s o ) 。 管理方便性:服务提供商对用户的管理将更加方便。 减少风险:服务提供商可以将验证的工作交给身份验证服务提供商。 1 2 2l i b e r t v “b e n y 是自由联盟组织( l i b e n ya l l i a n c e ) 提出的身份管理架构,以此来帮 助企业解决在建设w e b 服务基础时遇到的技术困难。“b e n y 规范的目标包括: 使网络上的消费者能够保护其隐私和身份信息的安全; 提供在不同的服务提供者间进行非集中式的统一认证的一个开放标准; 创建一个网络身份基础架构,使服务提供者能够与i d p 协同合作,管理 2 第一章引言 和维护其与用户的关系,并实现各种基于身份的增值应用。 图l - l 是整个l i b e i t y 规范的主要构成: l i b e 啊l d s i s 服务接口规范 提供创建可互操作的基于身份的 服务如:个人档案服务、通信录 服务、位簧服务、状态服务等 l i b e 哪i d w s fw e b 服务框架 提供框架用于构建可互操作的身 份服务:可控制的属性数据共 享,身份服务描述、登记、查找 等1 下 图l - l :l 帅规范 l i b e n y 规范充分考虑利用已有国际标准的重要性,构建在s a m l 、s o a p 、 w s s e c 晡t y 、x m l 和h t t p 等国际标准之上。 l i b e 啊规范分为三大部分,分别是i d f f ( 身份联盟框架) ,i d w s f ( w 曲 服务框架) ,i d s i s ( 服务接口规范) 。 i d f f 主要解决了不同组织,不同管理域之间的统一认证问题,i d w s f 是一 套w 曲服务框架,以支持与用户身份相关的各种身份服务,i d s i s 基于i d w s f 框架定义了一系列标准的w 曲服务接口,所支持的增值应用包括个人通讯录、状 态通知、地理位置服务等等,它将随着应用需求不断扩展。 增值服务的发展趋势是针对个人的个性化服务,l i b e 晰通过定义一系列公开 和标准化的接口,使各种增值服务提供商能够互通,并共同提供各种身份服务。 1 2 3 s h i b b o l e t h s h i b b o l e m 是h l t e n l e t 2 】忱托e 的一个开源项目【3 1 。用于实现组织间的身份认 证信息共享,从而实现单点登录。 3 电子科技大学硕十学位论文 s h i b b o l e t h 的目前版本为1 3 ,2 0 版本尚在规划之中,将实现更多的s a m l 2 特性和新功能。目前的版本已有部分s a m l 2 的特性,如m e t a d a t a 等,但由于 c 1 1 ) e n s 锄1 2 0 这个支撑工程的不完善,s h i b b o l e t h l 3 对s a m l 2 的支持并不完善, 还有待于s h i b b o l e t h 2 o 版本中的进一步改进。 s h i b b o l e t h 由c p e n s 锄1 2 ,c p e n w s ,m l t o o l i n g 三个工程和w a y f ,i d p ,s p 三大功能模块组成。这几个工程和模块之间通过良好的接口定义,下层为上层提 供支持,其层次关系如图1 2 所示: 1 2 4o p e n i d s a m 【l 引擎 图l - 2s k b b o l e m 层次关系 o p e n i d 是由l i v e j o u m a l 和s i x a p a n 开发的一套身份验证系统【4 j 。与目前流 行的网站账号系统( p a s s p o r t ) 相比,o p e n i d 具有开放性以及分散式的特点。它 并不基于某一应用网站的注册程序,而且不限制于单一网站的登录使用。o p e n i d 账号可以在任何o p e n i d 应用网站使用,从而避免了多次注册、填写身份资料的 繁琐过程。简单言之,o p e n i d 就是一套以用户为中心的分散式身份验证系统,用 户只需要注册获取o p e n i d 之后,就可以凭借这个o p e n i d 账号在多个网站之间自 4 第一章引言 由登录使用,而不需要每上一个网站都需要注册账号。 1 3 论文研究内容与主要贡献 本人在攻读硕士学位期间,对基于s a m l 2 0 的统一身份管理开源项目l i b 鲥v 作了深入的了解,并且综合了几种典型的统一身份管理系统的优点,对传统的身 份管理模型进行了改进,旨在更好的解决跨域的统一身份管理与统一认证问题。 本人在该项目中主要负责提出项目解决方案,并在此基础上进行系统架构设计和 部分功能模块的设计,解决其中的关键技术。主要的研究内容如下: 1 在s a m l 2 o 、i d f f 、w s s e c 嘶t y 等一系列标准的基础上实现单点登录 ( s s o ) 、单点注销( s l o ) 、身份联邦的建立与管理、用户注册等一系列 功能。 2 在需要跨域的环境中( 这个环境可以是同一公司的不同部门,也可以是 地域不同的两个公司) 如何实现用户的帐户关联、用户身份的保密传输 等功能; 3 如何实现对用户会话的管理。当用户提出注销请求后,不仅仅要在提出 注销的资源上对用户的会话进行撤销,并且还要对之前用户访问过的所 有其它资源发出注销请求,清除整个环境中为该用户保存的认证信息、 身份信息等“垃圾信息”,保证系统的资源利用率。 论文围绕以上研究内容进行一系列的研究工作,其主要的创新点如下: 1 提出信任环+ 信任域的双层结构的身份联邦网络。在这个网络中,所有相 互信任的i d p 都属于同一个信任域,而每个i d p 都有可能联系着一个或 多个s p ,这些s p 与i d p 一起组成一个个低一级的信任环。这种网络模 型更加符合实际的应用环境。 2 提出了基于以上身份联邦网络的联邦信息交换模型。 1 4 论文组织结构 论文共分为六章,各章节组织如下: 1 第一章为绪论,首先介绍了课题的研究背景,以整个统一身份管理技术 的发展为主线,着重就身份联邦,以及实现它的基础s a m l 标准和l i b e 啊 规范进行了简要的叙述,并且介绍了目前比较有名的两个身份管理项目 5 电子科技人学硕七学位论文 s h i b b o l e m 和o p e l l i d 。最后指出论文的研究内容和贡献。 2 第二章主要介绍了s a m l 2 0 标准和l i b e r t v l 2 规范。首先介绍了s a m l 的基本内容、主要实体和它的工作原理;接下来介绍了l i b e 晰的三个组 成部分i d f f 、i d - w s f 和i d s i s 。通过以上介绍,使读者对本文实现的 基础有个初步的了解。 3 第三章对统一身份管理中的研究内容作了深入分析。从身份联邦的背景、 功能结构,到联邦单点登录中的些关键技术,都进行了分析和介绍。 接下来再对w 曲s e i c e 作了简要介绍,结合身份联邦技术在w 曲s e r v i c e 应用中的安全作了详细分析。 4 第四章着重介绍了系统的解决方案。主要包括:需求分析、模型设计、 框架组件以及一些关键功能的实现方法。 5 第五章给出了系统的设计思路,模块说明,以及设计时遇到的几个关键 技术问题。最后介绍了本系统的部署方式。 6 最后一章是结论和展望,对本论文进行了总结,并展望了进一步的研究 工作。 1 5 本章小结 本章首先介绍本课题的研究背景,通过指出目前企业身份管理中遇到的问题, 以此来引出了目前统一身份管理技术中的一个大的趋势一身份联邦。紧接着在 第二节,就身份联邦目前的主要标准规范和有名的开源项目,向读者进行了介绍, 使读者对目前该技术领域的情况有一个初步的了解。第三节介绍了本文作者在攻 读硕士学位期间在该课题上做过的主要研究内容和主要的一些成果。第四节介绍 了本文的组织结构。 6 第二章统一身份管理模型、s a m l 和l i b e n y 第二章统一身份管理模型、s a m l 和“b e 啊 2 1 统一身份管理模型 目前在统一身份管理技术中有基于经纪人的统一身份管理模型 ( b r o k 昏b a l s e d ) 、基于代理人的统一身份管理模型( a g e n t - b a s e d ) 、基于令牌的 统一身份管理模型( t 0 k e n - b a s e d ) 、基于网关的统一身份管理模型 ( g a l e w a y - b a s e d ) 以及基于s a m l 的统一身份管理模型这5 种具有代表性的模 型,下面将分别对其进行简要介绍。 2 1 1b r o k e r b a s e d 基于经纪人( b r o k * b a s e d ) 的统一身份管理,有一个集中的认证和用户账 户管理的服务器。经纪人对提出进一步请求的用户的身份进行存取。中央数据库 的使用减少了管理的代价,并为认证提供一个公共和独立的第三方【5 1 。基于此模 型的典型方案是k e r b e r o s 。 k e 南e r o s 是由美国麻省理工学院提出的基于可信赖的第三方的认证系统。 l r b e r o s 提供了一种在开放式网络环境下进行身份认证的方法,它使网络上的用 户可以相互证明自己的身份【6 】。 k e r b e r o s 采用对称密钥体制对信息进行加密。其基本思想是:能正确对信息 进行解密的用户就是合法用户。用户在对应用服务器进行访问之前,必须先从第 三方( k e 而e r o s 服务器) 获取该应用服务器的访问许可证( t i c k e t ) 。 2 1 2a g e n t b a s e d 基于代理人( a g e n t b a s e d ) 的统一身份管理,使用一个代理程序自动地为不 同的应用提供用户身份认证。这个代理程序需要设计有不同的功能。比如,它可 以使用口令表或加密密钥来自动地将认证的负担从用户移开【7 】。代理人也可以被 放在服务器一端,在服务器的认证系统和客户端认证方法之间充当一个”翻译”。 s e c u r es h e l l ( s s h ) 是基于代理人模型的典型方案。s s h 是一个用于在不安 7 电子科技人学硕+ 学位论文 全网络上实施安全访问的协议。通过使用s s h ,可以把所有传输的数据进行加密, 这样就能够防止d n s 和i p 欺骗。这是一个为在网上进行安全连接的客户服务器 类型加密软件,实现了一个密钥交换协议,以及主机及客户端认证协议。s s h 的 用户可以使用包括r s a 算法的不同认证方法。当使用r s a 认证时,代理程序可 以被用于单点登录。代理程序可以在p c ,便携机,或终端上运行,当被认证身份 加入到代理程序中,如果该代理程序有新的子连结产生,则继承原有连结的认证。 远程系统往往需要一个s s h 服务器,用以与代理程序通信。 2 1 3t o k e n b a s e d 针对s m 四e f a c 幻r ( 单因子认证) 口令认证( 如f t p 、邮件服务器等) 更换 频率低,在明文传输的网络环境里容易被窃取等缺点。r s a 公司提出了s e c u r i d 解决方案,方案提供了t w o f a c t o r 双因子认证。构成认证的第一个因素是 p e r s o n n e li d e n t i 6 c a t i o nn u m b e r ( p 呻,即用户身份识别码,这是一串保密的数字, 可由系统管理员订制。第二个要素是s e c w i dt o k e n ,一个小型的数字发生器,这 个发生器的时钟将与网络环境中提供身份鉴别的服务器( a c e ) 保持同步,并且 与a c e 上的用户数据库保持映射。数字发生器每隔一段时问( 比如一分钟) 产生 新的数字,p i n + 同步时钟数字就是用户的登录代码。同时需要在w 曲服务器上 安装一个a c e 服务器的代理程序,用来接受s e c u r i d 。当访问第一个需要认证的 u r l 时,w 曲i d 会由软件产生并加密一个标识,这个标识将在访问其他资源的时 候被用到。 2 1 4g a t e w a v b a s e d 在基于网关的模型中网关是通往所有服务资源必须经过的一道“门”,这些服 务资源处在可被信赖的网络中。网关可以是一台防火墙,也可能是一个精心设计 的加,解密服务器。所有的客户机都与网关相连接,网关再与各种应用服务器进行 连接。网关把外界客户机与内部的服务资源隔离开来。 其工作方式如下:首先,客户机要向网关进行身份验证。为了避免有人假扮 网关来欺骗客户机,同时为了保证客户到网关的连接隧道是安全的,在初始的认 证过程中,客户机可以要求进行互相身份认证,即客户机要向网关证明自己是合 法用户,同时网关也要向客户机证明自己是值得信赖的网关。然后客户机提出自 己访问资源的请求,网关通过用户信息数据库查找该用户,如果该用户存在且通 第二章统一身份管理模型、s a m l 和l i b e n y 过认证,则网关会授权用户使用对应的服务;如果该用户不存在于用户信息数据 库中则拒绝其请求。由于在网关后的所有服务资源处在一个可被信赖的网络中, 所以各种服务可以用其i p 地址来表示,这样把用户的身份信息和其有权访问的服 务资源的i p 地址结合起来,便可以实现单点登录。因为网关只要记住该用户的身 份标识,便可以自动让用户访问其有权访问的资源,而不需要多余的认证过程。 2 1 5s a m l b a s e d 安全断言标记语言( s e c 面t ya s s e f t i o nm 矾唧l a n g u a g e ) 是o a s i s 为企业和 商业伙伴之间交换安全信息定义的一套基于x m l 的框架。在s a m l 的应用中, 安全信息都是通过在互信的区域之间以s a m l 断言( s a m l a s s e i t i o l l s ) 来传递的。 s w l 标准为断言的请求、建立、响应、传递和使用都定义了精确和完整的语义 及准则。 基于s a m l 的统一身份管理模型由以下部分组成: 1 断言与协议:定义x m l 格式的断言的语法语义以及请求和响应协议。 s m a l 主要有三种断言:身份认证断言、属性断言和访问授权断言。 2 绑定与基线:从s 蝴l 请求和响应消息到底层通信协议如s q 或s m t p 的映射。 3 一致性规范:一致性规范设置了一种基本标准,必须满足这一s 蝴l 标 准的实现才能够称为一致性实现。这样有助于提高互操作性和兼容性。 4 安全和保密的问题:s a m l 体系结构中的安全风险,具体而言就是s - 蝴l 如何应对这些风险以及无法解决的风险。 2 2s a m l 2 2 1s a m l 2 0 简介 s a m l 是安全断言标记语言( s e c 嘶t ya s s e n i o nm 破u pl a n g u a g e ) 的简称【8 1 。 目前s a m l 的最新版本是2 0 ,它主要由六个部分组成:断言( a s s e n i o n s ) 、协议 ( p r o t o c 0 l s ) 、绑定( b i n d i n g s ) 、基线( p r o f i l e s ) 、认证上下文( a u t h e n t i c a t i o nc o n t e x t ) 和元数据( m e t a d a t a ) 。如图2 1 所示: 9 电于科技人学硕十学忙论文 p r o e j e s 灌锄 将断言、协议和弊定结备 ,雇来使用的等静;莹i c o n 虹x t ( 认证上下文) 详细规定了认证的方式 和其中的纽节 图2 1s m 【20 基本结构厘简要说明 以下为s a m l 2o 研究内容: 1 断言( a 船酣l o n s ) s a m l 斯言来产生于断言方( “s e n l 。“p a r t y ,义称认证权威( a u 出e n t i c n l o n a u t h o i y ) ) 由断言语句( 札a t n 翩b ) 组成,它携带了关于某个主体( s u q c c t 或 p n n c t p a l l 的断言信息川于表明该主体身份。例如:一条断言可以包含如下信息: 该主体的名字叫“j o i l 【i d o e ”,他的e m 棚地址是j o h nd o e e x 珊p l ec o m ,并且他 足“e r i 目n r ”组的成员,等等。 断言常常产生于依赖方( r e i 如“gp a n y ) 的断言请求,但某肚情况下,也有可能 是认证方主动发起。 s 哪l _ s c h e m a s s e n l o n2ox s d 定义了s a m l 20 断;的标准结构,详见附录一。 s a m l 定义了三种基本的断言语句; 认证断言语句( a u t h c i l 6 c 撕o n n a t 锄c n b ) :用于认证某个主体的身份。 属性断言语句f a “b u t es b t e i t l e n b ) :用丁说明某个主体具有届性,比如 说明j o l l l ld o e 拥有“g o l dc 州”。 授权决策语句( a u m o n z a n o nd e d s l 伽s 恤t c i i l c l l 砷:用于说明某个主体可以 进行的操作,比如确定j o h nd o e 是否有权访问某个特定的资源。 第二章统一身份管理模型、s a m l 和l i b e n y 2 协议( p r o t o c o l s ) 协议用于完成s a m l 断言及其它身份管理信息的请求与响应。 认证请求协议( a u t h e i l t i c a t i o nr 明u e s tp r o t o c o i ) :为某个主体( 或主体的代 理) 请求包含该主体身份信息的断言( 也可能包含属性信息) 。 单点注销协议( s i n 硝el 0 9 0 u tp r o t o c 0 1 ) :定义了一个能够为某个主体实现 近似同步( n e 册s i m u l t a n e o u s ) 注销多个会话的机制。 断言查询及请求协议( a s s 鳅i o nc ! u e 眄锄dr e q u e s tp r o t o c 0 1 ) :为获得某 s a m l 断言提供了一套请求和查询机制。请求协议用于向断言方询问某 个断言i d 所对应的断言;查询协议用于向断言方查询某个主体所对应 的断言信息。 辅件解析协议( a n i f a c tr e s o l u t i o np r o t o c 0 1 ) :辅件是一种对s a m l 协议信 息的引用,其长度较小并且固定,可以通过辅件来间接地传递s 蝴l 协 议。辅件的接收方通过辅件解析协议向消息的发送方询问并获得协议的 真实信息。 i d 管理协议州a m ei d e n t i f i e rm 锄a g e m e i l tp r o t o c 0 1 ) :可以通过该协议更改 主体名字的形式或内容。更改请求的发起方可能是s p ,也可能是i d p 。 i d 映射协议小a m ei d e n t i f i e rm a p p m gp r o t o c 0 1 ) :将某个i d 映射为另一个 i d 。 3 绑定( b i n d i n g s ) s a m l 协议本身是不能被直接传输的,协议信息需要绑定到可传输协议内部 以通过网络进行传递。s a m l 2 0 定义了以下几种绑定: h t i pr e d i r o c tb i n d i n g :s a m l 协议的信息可以通过h 1 t pr c d 慨t 方式 传递,主要用于信息量较少的情况,比如辅件常常采用该绑定形式。 h 1 r r r pp o s tb i n d i n g :s a m l 协议信息可以通过h t m lf 0 咖以b a s e 6 4 编码方式传递。 h t t pa n i f a c tb i n d i n g :定义s a m l 辅件的传输方式,以上两种机制都 可以用于传输。 s a m ls o a pb i n d i n g :s a m l 可以通过s o a p l 1 传输。 r e v e r s es 0 a p ( p a o s ) b i l l d i n g :主要用于增加的客户端或代理配置文件, 主要用在移动终端上。 s a m lu r ib i n d i n g :s a m l 断言信息也可以包含在u r i 中,并通过该协 议进行解析。 电子科技人学硕七学位论文 4 基线( p r 0 6 l e s ) s a m l 定义了一系列的基线( p r o f i l e s ) 以说明断言、协议和绑定在特定的应用 场景中是如何协同工作的。 w - e bb r o w s e rs s op r o f i l e :定义s a m l 实体间如何使用s a m l 请求响应 断言信息以及如何通过标准浏览器实现单点登录。 e i l h a i l c e dc l i e n ta n dp r o x y ( e c p ) p r o f i l e :定义了通过代理实现单点登录的 机制,主要用于有特殊终端的情况,例如手机。 聪e f l t i t yp f o v i ( 1 叫i d p ) d i s c o w 哆p r o 矗l e :为s p 提供一种可以发现用户最 近访问过的i d p 的机制,常常被称为啪e r e 觚y 0 uf r o m ( w a y f ) 。 s i n 西el o g o u tp r o f i l e :定义了在s o a p 、h 1 t r pr e d i r 。c t 等绑定方式下的 单点注销协议的使用方式。 a s s 酣i o nq u e 叫瓜e q u e s tp r o f i l e :定义s a m l 查询请求协议如何获得 s a m l 断言的方式。 a n i f a c tr e s o l u t i o np r o f i l e :定义s a m l 实体间如何在一个同步绑定( 如 s o a p ) 上利用辅件解析协议来获得辅件所引用的断言信息。 5 认证上下文以及元数据 s a m l 2 o 为用户认证定义了一系列共2 6 个s c h e i i l a 文件,包括了口令、证书、 智能卡等多种认证方式。这些认证上下文可以向认证主体或资源主体提供判断依 据,比如说访问权限的授予等。 元数据主要作用是对认证主体或资源主体进行描述,目的是为了能够使主体 之间能够更好的合作。 认证上下文和元数据在本论文中涉及较少,所以在此不做过多的描述。 2 2 2s a m l 中的主体 在一个s a m l 环境中至少要包含以下三个主体: 信任方:也称作依赖方,它主要是利用身份信息;具有代表性的信任方 是s e r v i c ep r o v i d e r ( 以下均简称为s p ) ,它决定可以向用户提供什么服 务; 认证方:提供身份信息;具有代表性的认证方是i d e n t 时p r 0 v i d e r ( 以下 均简称为i d p ) ,由其提供身份认证与管理服务: 认证主体:一般是与身份信息关联的用户u s e r 。 1 2 第二二章统一身份管理模型、s a m l 和i b e 晰 圈2 2 说明了这三者之间的关系 工翁t 图2 0 :s a m l 的主要实体 任何实际环境中都会存在多个认证主体和s p 。也有可能存在多个i d p 。 般 来说,s p 需要了解两个个信息: 身份认证信息; 提供身份认证的i d p 是可信任的; 在s a m l 中,断占是携带信息的实体。断言中包括头信息、用户信息 ( 蹦n a p a i ) 、认证上下文等等。其中头信息中又包括了i d p 的名称以及认证的限 制信息,比如说有效时间。s a m l 除了规范性这个优点以外,最大的优点就是其 灵活性,用户可以根据需要对其进行自由扩展。另外s a m l 对安全性的支持也是 不可忽视的优势,它允许实体之间在传输s a m l 断言之前对其进行签名和加密 并且随着s a m l 2o 的出现,更是提供了对假名联盟的支持,极大地保护了用户 的隐私信息。 2 2 3s a m l 的工作原理 s a m l 标准中提出基于s a m l 的身份认证主要有两种方式,分别是推模式和 拉模式。它们的区别主要是在于推模式时用户是首先访问资源,然后被重定向到 合适的i d p 进行认证,然后由i d p 将认证断言“推给”s p ;而拉模式则是用户首 先到一个i d p 进行认证,由i d p 对用户的认证断言进行暂存,当用户访问s p 时, 电子科技大学硕士学位论文 由s p 主动到i d p “拉回”认证断言 推模式 5 ( a s s

温馨提示

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

评论

0/150

提交评论