基于SAML及Web Service统一身份认证接口设计.docVIP

基于SAML及Web Service统一身份认证接口设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于SAML及Web Service统一身份认证接口设计

基于SAML及Web Service统一身份认证接口设计摘要:同一用户拥有多个账号使用单点登录技术已应运而生,如何更好地实现站点之间的资源共享与授权控制一直是提高网络应用性能所需考虑的重要问题。本文采用了SAML和Shibboleth技术为基础,结合了Web Service,设计出了跨域异构系统之间的统一身份认证与授权方案,既为不同系统之间搭建了一个桥梁,也保证了各自系统的安全性与稳定性。 关键词:Shibboleth;Web Service;SAML;跨域访问;单点登录;统一身份认证 中图分类号:TP311 文献标识码:B 文章编号:1673-8454(2012)19-0076-03 一、概述 随着网络技术的发展,网络资源日益丰富,各个领域行业都相继实现数字化。随着各种不同功用、不同结构的网络应用越来越多,系统之间的数据交互愈发频繁,系统之间需要不同程度的协作,用户的身份和权限管理就成为了异构系统进行交互与协作的关键点。不同的系统拥有自己的一套用户名和密码,在协作的情况下,一个用户需要登录多个系统进行数据的管理,需要记住多个用户名和密码并且多次登录。为了保证数据的安全性,各系统采取了屏蔽部分功能的做法。这样,系统必须同时考虑内部人员与外部人员的权限问题,工作十分繁重,同时也降低了信息化管理的效率。单点登录(Single Sign—On,简称SSO)理念应运而生,单点登录解决了系统协作时的统一身份认证问题,只需一次登录,就可以访问所有相互信任的系统。目前实现SSO的具体技术有很多种,也有很多不同的解决方案,下面选几个典型分析其优势与不足: 1.ID开放URL的数字身份识别框架 用户提供一个URL给外部站点,外部站点通过用户身份地址取得OpenID验证服务器地址,通过外部站点重定向到OpenID验证再重定向回外部站点,取得验证结果。这种方式的特点是把负担分散在用户端,防止服务器拥塞,但因为URL是用户提供的,由于验证服务器的性能限制,会使得验证效率变得很低。 2.基于Session共享的跨域身份验证 在一个站点内部,用户每次登录都会产生一个会话号(SessionID),在站点内部可以保持登录状态信息,但是一般情况下不可以跨域。利用了Session共享技术之后,通过XML在不同服务器之间传递Session有关参数,实现单点登录。但在传递参数的过程中,一旦数据被截取,那么这次会话的安全性就得不到保障了。 3.基于Cookie令牌形式的身份认证 Cookie是写在客户端的信息,并且有独立的全局唯一的编号,而且可以在客户端存储编号以外的其他字符信息,便于单点登录及其应用系统的利用。但是它也有一个重大的缺点,当单点登录系统与应用系统不在同一个域时,由于考虑系统安全的原因,应用系统服务程序是无法访问其它域的Cookie信息。[1] 4.基于SAML(安全断言标记语言)的Subject和资源授权模型 SAML是由结构化信息标准促进组织(OaSlS)建立的一套安全标准。是基于XML(可扩展标记语言)面向Web服务的架构,用于在网络间交换安全信息。SAML包含三种实体:Subject(参与信息交换的实体)、Relying Party(信任方既提供服务的一方)、Asserting Party(断言方既提供验证的一方)。这种方式兼有OpenID的灵活性和Cookie保持用户信息状态的稳定性,稍有欠缺的是这种状态是一个布尔值,无法将其信任程度量化,不能很好的实现跨域用户权限级别控制。 综合比较上述方案,本文采用以SAML描述的Shibboleth框架作为基础技术平台。SAML是基于XML的标记语言,所以其具有很强的扩展性,结合目前分布式异构环境下构建复杂系统的重要技术Web Service,可以很好地弥补SAML的不足之处。据此,本文设计出一套SAML+Web Service的认证系统,解决了联盟机构统一身份认证及其权限级别控制问题。 二、解决方案设计 从SAML的三种实体进行分析,参与信息交换的实体是各个异构系统的用户,这些用户需要对相互信任的几个系统进行单点登录访问。信任方则是一个相对的概念,对于用户来说,非自身所在域的系统都属于信任方。身份验证服务由机构本身提供断言方,所以断言方在这里指用户所在的机构。下面先简单介绍本方案涉及的几种关键技术: SAML已经在前面提到,此处不再赘述。Shibboleth是一个针对SSO的开源项目,主要应用在校园内Web资源共享,以及校园间的应用系统的用户身份联合认证。Shibboleth的主要特点是将认证模块放在用户所属域的认证服务端,可以把不同机构的身份认证工作交给各个机构本身,这样就可以让认证工作分散而不是集中,进而解决了用户访问量大时认证工作的瓶

文档评论(0)

docman126 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7042123103000003

1亿VIP精品文档

相关文档