统一身份认证服务器研究与实现.docVIP

  • 59
  • 0
  • 约4.31千字
  • 约 10页
  • 2018-09-17 发布于福建
  • 举报
统一身份认证服务器研究与实现

统一身份认证服务器研究与实现   摘 要:目前解决恶意用户非法操作的手段之一为身份认证。经过对访问应用的用户进行认证,保证只有通过认证的用户才能访问指定资源。同时为了保证无需多次注册登录就可以在多个应用之间切换,享受各应用提供的服务,单点登录统一身份认证被广泛应用。本文详细研究了JA-SIG CAS统一身份认证系统的工作原理及其实施部署过程,对其中的关键技术进行了详细描述。   关键词:统一身份认证;CAS;单点登录   中图分类号:G482文献标识码:B 文章编号:1673-8454(2011)03-0016-03      一、引言   为保证只有指定的或者通过认证的用户才能访问系统受保护的资源,以往多数应用程序如Web应用,都采用用户注册机制来进行控制,如只有已注册用户,凭密码登录系统之后,才能访问Web敏感资源。但是随之产生的问题也不容忽视。因为随着网络和各种便携式移动网络终端的普及,Web应用的数量急剧增长。如果在访问Web应用时,都需要注册一次,且每次访问不同Web应用时,都需进行登录操作,这是非常麻烦的事情。因此国内外研究学者们便提出使用户只注册一次并登录一次,就可以在多个应用之间进行访问的思想,因此单点登录统一身份认证技术被广泛地应用起来。其原理如图1所示。   单点登录统一身份认证关键作用在于每个Web应用并不直接认证用户,而是将用户认证委托给一个独立的单点登录服务器完成。这样既可以减轻Web应用的负担,同时认证用户的真实性就更加可靠,因为第三方的认证服务器多数都是可信任的。[1]认证过程如下:[2]   (1)浏览器请求Web应用程序的某个受保护的资源;   (2)Web应用如果发现用户尚未经过认证,就将用户导向到SSO(Single Sign On,单点登录)服务器登录地址;   (3)浏览器被重定向到SSO服务器的登录页面,并提示用户输入用户名和口令;   (4)如果用户名和口令被SSO服务器成功认证,则SSO服务器将浏览器重定向到原Web应用的服务器,并且在URL(统一资源定位符)参数中包含一个票据;   (5)Web应用获得了浏览器传来的票据后,连接SSO服务器,检查票据是否有效;   (6)SSO服务器若验证票据成功,则返回一个肯定的回复给Web应用,整个验证过程接受。   从上面的过程可以看到,用户认证并不是通过Web应用本身完成的,而是委托给SSO服务器完成的,因此,有多个Web应用时,用户始终使用一个用户名和口令通过SSO服务器登录,这就是单点登录的实现。此外,用户看不到第5、6步,即Web应用和SSO服务器通信的过程。由于只有SSO服务器才知道用户名和票据的关系,因此用户无法伪造票据。要保证用户无法猜出SSO服务器生成的票据,SSO服务器生成的票据就必须非常随机,以确保整个系统的安全。   由于单点登录只能解决用户的身份认证问题,所以授权工作则交给其他对象来完成。本文将以JA-SIG CAS3.0协议为技术,实现单点登录统一身份认证的目标。   二、统一身份认证系统工作机制   单点登录统一身份认证的过程意在从入口级保证Web应用的安全。本文将研究采用开源的JA-SIG CAS3.0协议实现单点登录统一身份认证。   从物理体系结构上分析,统一身份认证服包含两个部分: CAS 服务器 和 CAS客服端。CAS 服务端需要独立部署,主要负责对用户的认证工作;CAS客服端负责处理对客户端受保护资源的访问请求,需要登录时,重定向到 CAS 服务器。CAS 最基本的协议过程时序如图2所示。CAS客户端与受保护的客户端应用部署在一起,以过滤器方式保护敏感资源。   在该协议中,所有与 CAS 的交互均采用 SSL 协议,确保服务票据和TGC 的安全性。协议工作过程中会有2次重定向的过程,一次是重定向用户请求到CAS服务器,另一次是将已通过认证的用户请求重定向到其所欲访问的网络地址。CAS服务器和客户端之间的票据验证和重定向过程均不为用户所见,对用户是透明的。   此外,对于更加复杂且安全性要求更高的情况,可是使用CAS协议中为用户提供的代理模式来完成此目标。本文不涉及该代理模式,因此不予具体研究。   在该协议中,所有与CAS的交互均采用SSL协议,确保ST和TGC的安全性。   三、统一身份认证服务器的实现   1.软件的获取   JA-SIG CAS是一款开源的单点登录统一身份认证软件,它为企业提供开源且具有良好结构的协议;且其开源Java服务组件可以为用户提供二次开发的可能;与之相对应的客户端有多种,如Java,.Net,PHP,Perl,Apache,Uportal等。   2.构建用户信息库   CAS服务器的认证依据是保存在服务器上的

文档评论(0)

1亿VIP精品文档

相关文档