使用 cas 在 tomcat 中实现单点登录

使用 cas 在 tomcat 中实现单点登录

ID:36048000

大小:1.76 MB

页数:156页

时间:2019-04-29

使用  cas  在 tomcat 中实现单点登录_第1页
使用  cas  在 tomcat 中实现单点登录_第2页
使用  cas  在 tomcat 中实现单点登录_第3页
使用  cas  在 tomcat 中实现单点登录_第4页
使用  cas  在 tomcat 中实现单点登录_第5页
资源描述:

《使用 cas 在 tomcat 中实现单点登录》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一、使用CAS在Tomcat中实现单点登录CAS介绍CAS是Yale大学发起的一个开源项目,旨在为Web应用系统提供一种可靠的单点登录方法,CAS在2004年12月正式成为JA-SIG的一个项目。CAS具有以下特点:·开源的企业级单点登录解决方案。·CASServer为需要独立部署的Web应用。·CASClient支持非常多的客户端(这里指单点登录系统中的各个Web应用),包括Java,.Net,PHP,Perl,Apache,uPortal,Ruby等。CAS原理和协议从结构上看,CAS包含两个部分:C

2、ASServer和CASClient。CASServer需要独立部署,主要负责对用户的认证工作;CASClient负责处理对客户端受保护资源的访问请求,需要登录时,重定向到CASServer。图1是CAS最基本的协议过程:图1.CAS基础协议CASClient与受保护的客户端应用部署在一起,以Filter方式保护受保护的资源。对于访问受保护资源的每个Web请求,CASClient会分析该请求的Http请求中是否包含ServiceTicket,如果没有,则说明当前用户尚未登录,于是将请求重定向到指定好的CA

3、SServer登录地址,并传递Service(也就是要访问的目的资源地址),以便登录成功过后转回该地址。用户在第3步中输入认证信息,如果登录成功,CASServer随机产生一个相当长度、唯一、不可伪造的ServiceTicket,并缓存以待将来验证,之后系统自动重定向到Service所在地址,并为客户端浏览器设置一个TicketGrantedCookie(TGC),CASClient在拿到Service和新产生的Ticket过后,在第5,6步中与CASServer进行身份合适,以确保ServiceTick

4、et的合法性。在该协议中,所有与CAS的交互均采用SSL协议,确保,ST和TGC的安全性。协议工作过程中会有2次重定向的过程,但是CASClient与CASServer之间进行Ticket验证的过程对于用户是透明的。另外,CAS协议中还提供了Proxy(代理)模式,以适应更加高级、复杂的应用场景,具体介绍可以参考CAS官方网站上的相关文档。准备工作本文中的例子以tomcat5.5为例进行讲解,下载地址:http://tomcat.apache.org/download-55.cgi到CAS官方网站下载CA

5、SServer和Client,地址分别为:http://www.ja-sig.org/downloads/cas/cas-server-3.1.1-release.ziphttp://www.ja-sig.org/downloads/cas-clients/cas-client-java-2.1.1.zip部署CASServerCASServer是一套基于Java实现的服务,该服务以一个JavaWebApplication单独部署在与servlet2.3兼容的Web服务器上,另外,由于Client与CAS

6、Server之间的交互采用Https协议,因此部署CASServer的服务器还需要支持SSL协议。当SSL配置成功过后,像普通Web应用一样将CASServer部署在服务器上就能正常运行了,不过,在真正使用之前,还需要扩展验证用户的接口。在Tomcat上部署一个完整的CASServer主要按照以下几个步骤:配置Tomcat使用Https协议如果希望Tomcat支持Https,主要的工作是配置SSL协议,其配置过程和配置方法可以参考Tomcat的相关文档。不过在生成证书的过程中,会有需要用到主机名的地方,C

7、AS建议不要使用IP地址,而要使用机器名或域名。部署CASServerCASServer是一个Web应用包,将前面下载的cas-server-3.1.1-release.zip解开,把其中的cas-server-webapp-3.1.1.war拷贝到tomcat的webapps目录,并更名为cas.war。由于前面已配置好tomcat的https协议,可以重新启动tomcat,然后访问:https://localhost:8443/cas,如果能出现正常的CAS登录页面,则说明CASServer已经部署成

8、功。虽然CASServer已经部署成功,但这只是一个缺省的实现,在实际使用的时候,还需要根据实际概况做扩展和定制,最主要的是扩展认证(Authentication)接口和CASServer的界面。扩展认证接口CASServer负责完成对用户的认证工作,它会处理登录时的用户凭证(Credentials)信息,用户名/密码对是最常见的凭证信息。CASServer可能需要到数据库检索一条用户帐号信息,也可能在XML文件中检索用户名/

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。