一、资源版本:<o:p></o:p>
Tomcat<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">5.0.28</st1:chsdate><o:p></o:p>
cas-server-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">3.0.7</st1:chsdate><o:p></o:p>
cas-client-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">2.0.11</st1:chsdate><o:p></o:p>
<o:p> </o:p>
二、Tomcat部署环境:<o:p></o:p>
casserver——cas服务器部署环境<o:p></o:p>
casclient——cas客户机部署环境(发布jsp-examples)<o:p></o:p>
casclient1——cas客户机部署环境(发布servlets-examples)<o:p></o:p>
<o:p> </o:p>
三、SSL文件准备:<o:p></o:p>
server.keystore——服务器端库文件<o:p></o:p>
client.keystore——客户端库文件<o:p></o:p>
server.cer——服务器端证书(自制)<o:p></o:p>
client.cer——客户端证书(自制)<o:p></o:p>
cacerts——证书链<o:p></o:p>
1、生成服务器端库文件<o:p></o:p>
keytool -genkey -alias tomcat-server -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore <o:p></o:p>
2、导出服务器端证书<o:p></o:p>
keytool -export -alias tomcat-server -storepass changeit -file server.cer -keystore server.keystore <o:p></o:p>
<o:p> </o:p>
3、生成客户端库文件<o:p></o:p>
keytool -genkey -alias tomcat-client -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore <o:p></o:p>
<o:p> </o:p>
4、导出客户端证书<o:p></o:p>
keytool -export -alias tomcat-client -storepass changeit -file client.cer -keystore client.keystore <o:p></o:p>
5、导入服务器端证书到cacerts<o:p></o:p>
keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit <o:p></o:p>
<o:p> </o:p>
6、导入客户端证书到cacerts<o:p></o:p>
keytool -import -trustcacerts -alias client -file client.cer -keystore cacerts -storepass changeit <o:p></o:p>
将server.keystore、client.keystore、erver.cer、client.cer、cacerts文件复制到cas服务器、cas客户机、cas客户机1的TOMCAT_HOME主目录及JAVA_HOEM\jre\lib\security目录下。<o:p></o:p>
四、Tomcat下cas安装部署<o:p></o:p>
1、casserver配置<o:p></o:p>
采用jakarta-tomcat-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">5.0.28</st1:chsdate>.zip解压后默认配置,重点注意Server port="8005"<o:p></o:p>
及Connector port="8080" redirectPort="8443"(cas客户端需改端口号)。<o:p></o:p>
A、 编辑.\casserver\conf目录下server.xml文件并保存。<o:p></o:p>
找到如下片段,红色字体为新增内容。<o:p></o:p>
<!----><o:p></o:p>
<connector port="8443"></connector>
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"<o:p></o:p>
enableLookups="false" disableUploadTimeout="true"<o:p></o:p>
acceptCount="100" debug="0" scheme="https" secure="true"<o:p></o:p>
clientAuth="false" sslProtocol="TLS" <o:p></o:p>
keystoreFile="/server.keystore" keystorePass="changeit"/><o:p></o:p>
<o:p> </o:p>
B、拷贝cas.war至.\casserver\webapps目录。<o:p></o:p>
至此,cas服务器部署完毕。启动服务器,访问https://localhost:8443如能显示Tomcat首页则表示cas部署成功。<o:p></o:p>
<o:p> </o:p>
2、casclient配置<o:p></o:p>
jakarta-tomcat-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">5.0.28</st1:chsdate>.zip解压后修改根目录名为casclient。<o:p></o:p>
A、编辑.\casclient\conf目录下server.xml文件并保存。<o:p></o:p>
找到如下片段,红色字体为修改内容。<o:p></o:p>
<server port="&lt;span style="></server>8006" shutdown="SHUTDOWN" debug="0"><o:p></o:p>
<connector port="&lt;span style="></connector>8081"<o:p></o:p>
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"<o:p></o:p>
enableLookups="false" redirectPort="8080" acceptCount="100"<o:p></o:p>
debug="0" connectionTimeout="20000" <o:p></o:p>
disableUploadTimeout="true" /><o:p></o:p>
B、编辑.\casclient\webapps\jsp-examples\WEB-INF目录下web.xml文件并保存。<o:p></o:p>
加入如下片段,重点注意红色字体部分。<o:p></o:p>
<filter></filter> <o:p></o:p>
<filter-name></filter-name>CASFilter <o:p></o:p>
<filter-class></filter-class>edu.yale.its.tp.cas.client.filter.CASFilter <o:p></o:p>
<init-param></init-param> <o:p></o:p>
<param-name></param-name>
edu.yale.its.tp.cas.client.filter.loginUrl <o:p></o:p>
<param-value></param-value>
https://localhost:8443/cas/login <o:p></o:p>
<o:p></o:p>
<init-param></init-param> <o:p></o:p>
<param-name></param-name>
edu.yale.its.tp.cas.client.filter.validateUrl <o:p></o:p>
<param-value></param-value>
https://localhost:8443/cas/proxyValidate <o:p></o:p>
<o:p></o:p>
<init-param></init-param> <o:p></o:p>
<param-name></param-name>
edu.yale.its.tp.cas.client.filter.serverName <o:p></o:p>
<param-value></param-value>
localhost:8081 <o:p></o:p>
<o:p></o:p>
<o:p></o:p>
<filter-mapping></filter-mapping> <o:p></o:p>
<filter-name></filter-name>CASFilter <o:p></o:p>
<url-pattern></url-pattern>/* <o:p></o:p>
<o:p></o:p>
<o:p> </o:p>
C、将casclient.jar拷贝至.\casclient\webapps\jsp-examples\WEB-INF\lib目录下。<o:p></o:p>
至此,cas客户端部署完毕。启动客户服务器,访问http://localhost:8081/jsp-examples正常情况会弹出安全警报,点击确认后转向cas登录页面。此时casserver采用默认验证,用户名、口令输入相同的字符串即可,验证通过后转向jsp-examples应用的默认页面。<o:p></o:p>
<o:p> </o:p>
3、casclient1配置<o:p></o:p>
jakarta-tomcat-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">5.0.28</st1:chsdate>.zip解压后修改根目录名为casclient1。<o:p></o:p>
D、编辑.\casclient1\conf目录下server.xml文件并保存。<o:p></o:p>
找到如下片段,红色字体为修改内容。<o:p></o:p>
<server port="&lt;span style="></server>8007" shutdown="SHUTDOWN" debug="0"><o:p></o:p>
<connector port="&lt;span style="></connector>8082"<o:p></o:p>
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"<o:p></o:p>
enableLookups="false" redirectPort="8080" acceptCount="100"<o:p></o:p>
debug="0" connectionTimeout="20000" <o:p></o:p>
disableUploadTimeout="true" /><o:p></o:p>
E、编辑.\casclient1\webapps\servlets-examples\WEB-INF目录下web.xml文件并保存。<o:p></o:p>
加入如下片段,重点注意红色字体部分。<o:p></o:p>
<filter></filter> <o:p></o:p>
<filter-name></filter-name>CASFilter <o:p></o:p>
<filter-class></filter-class>edu.yale.its.tp.cas.client.filter.CASFilter <o:p></o:p>
<init-param></init-param> <o:p></o:p>
<param-name></param-name>
edu.yale.its.tp.cas.client.filter.loginUrl <o:p></o:p>
<param-value></param-value>
https://localhost:8443/cas/login <o:p></o:p>
<o:p></o:p>
<init-param></init-param> <o:p></o:p>
<param-name></param-name>
edu.yale.its.tp.cas.client.filter.validateUrl <o:p></o:p>
<param-value></param-value>
https://localhost:8443/cas/proxyValidate <o:p></o:p>
<o:p></o:p>
<init-param></init-param> <o:p></o:p>
<param-name></param-name>
edu.yale.its.tp.cas.client.filter.serverName <o:p></o:p>
<param-value></param-value>
localhost:8082 <o:p></o:p>
<o:p></o:p>
<o:p></o:p>
<filter-mapping></filter-mapping> <o:p></o:p>
<filter-name></filter-name>CASFilter <o:p></o:p>
<url-pattern></url-pattern>/servlet/* <o:p></o:p>
<o:p></o:p>
<o:p> </o:p>
将casclient.jar拷贝至.\casclient1\webapps\servlets-examples\WEB-INF\lib目录下。至此,cas客户端1部署完毕。启动cas客户1服务器,访问http://localhost:8082/servlets-examples/servlet/HelloWorldExample正常情况会弹出安全警报,点击确认后转向servlets-examples应用的HelloWorld页面(此时由于cas客户服务器已经登录,因此访问servlets-examples时无需再进行登录)。<o:p></o:p>
cas服务器、客户端部署完成后即可实现统一认证服务。案例中把登录认证部分的逻辑从jsp-examples、servlets-examples应用(此应用系统并无登录逻辑,在实际应用中需修改相应的登录验证逻辑)中剥离,交由cas认证服务器完成。<o:p></o:p>
以上配置在windows XP professional上测试通过。
<o:p></o:p>
分享到:
相关推荐
这篇文章将详细介绍如何部署Yale CAS Server以及如何在Java应用中使用cas-java-client 3.2进行集成。 首先,我们需要了解Yale CAS Server的部署过程。这通常包括以下几个步骤: 1. **环境准备**:确保你有一个适合...
总的来说,通过在Tomcat服务器上部署Yale CAS,并进行相应的SSL配置,可以为多个Web应用提供安全、便捷的单点登录体验。这个过程涉及到了Web容器的管理、SSL证书的生成和配置,以及客户端过滤器的设定,是实现SSO的...
本篇将详细探讨Yale CAS的最佳实践,包括环境准备、Java环境的SSL配置、证书验证、Tomcat服务器的配置以及针对Tomcat JMX Bug的解决方案。** ### 一、环境准备 在开始配置Yale CAS之前,确保你有以下基础环境: 1. ...
通过以上步骤,可以成功地部署和配置Yale CAS以实现单点登录功能。这个过程涉及到服务器配置、安全协议设置、数据库集成以及客户端应用的改造,确保了整个SSO系统的安全性和可靠性。在实际应用中,还需要考虑错误...
Weblogic 使用 YALE CAS 实现 SSO 单点登录的方法 一、Yale CAS 简介 Yale CAS 是耶鲁大学开发的一种开源的单点登录(SSO)解决方案,提供了一个通用的身份验证框架,允许用户使用单个身份验证来访问多个应用程序。...
然后,CAS Server作为Java Web应用部署在Tomcat上,通常需要根据具体需求扩展用户验证接口,以适应不同组织的认证策略。 部署CAS Server的步骤包括: 1. 配置Tomcat使用HTTPS,这涉及到生成SSL证书和修改Tomcat的`...
总结来说,实现使用CAS在Tomcat6中进行单点登录,需要理解SSO的基本概念,熟悉CAS的工作原理和协议流程,掌握CAS Server的部署和配置,以及CAS Client在Tomcat中的集成。通过这些步骤,可以构建一个安全且方便的单点...
- **部署CAS.war文件**:将CAS服务部署到Tomcat中。 - 解压`cas-server-3.0.6.zip`包,将其中的`cas.war`文件复制到Tomcat的`webapps`目录下。 ##### 4. 配置Tomcat - **启用HTTPS**:编辑Tomcat的`conf/server....
CAS(Central Authentication Service...总的来说,这些文档提供了全面的指导,帮助开发者在Linux上的Tomcat环境中实现CAS单点登录,涵盖了从基础理论到具体实践的各个层面,对于理解SSO机制和实际操作具有很大的价值。
【CAS实践配置】 在实际配置中,例如使用Tomcat 6.0,需要分别部署CAS Server和CAS Client。这通常涉及到以下步骤: 1. 下载并解压cas-server-3.5.2和cas-client-3.2.1。 2. 配置CAS Server,包括修改配置文件、...
CAS 是 Central Authentication Service 的缩写 —— 中央认证服务,一种独立开放指令协议,是 Yale 大学发起的一个企业级开源项目,旨在为 Web 应用系统提供一种可靠的 SSO 解决方案。 CAS 支持以下特性: CAS v1, ...
"Yale CAS最佳实践 --全部 - SOA - Java - JavaEye论坛.mht"提供了Yale大学关于CAS部署和管理的最佳实践,涵盖了安全、性能优化和故障排查等方面,对实际操作具有指导意义。 7. **取消HTTPS认证**: 在某些场景下...
该资源不仅提供部署在Tomcat服务器上的cas.war包(解压缩后在webapps目录下),而且创建Mysql数据源,完成用户表中用户信息的认证。 deployerConfigContext.xml中创建MySql数据源如下: <value>...
2. 下载并部署CAS Server:从官方下载CAS Server的WAR文件,将其放入Tomcat的webapps目录,Tomcat会自动解压并启动应用。 3. 扩展用户验证接口:根据实际需求,可能需要自定义用户认证逻辑,如连接数据库或LDAP...
- 灵活的部署方式:CAS可以部署在各种Web服务器上,如Tomcat等。 #### CAS 的部署步骤详解 为了更好地理解CAS的工作流程和具体实施步骤,以下将详细介绍如何搭建一套简单的CAS环境: 1. **下载CAS Server与Client...
- **部署CAS Server**:将CAS Server的WAR文件复制到Tomcat的webapps目录下,并启动Tomcat服务器。 - **配置数据库访问**:根据所使用的数据库类型,例如本例中的Oracle数据库,需要将相应的数据库驱动程序(如class...
1. CAS服务器搭建:将CAS服务器部署在Tomcat服务器上是实现这一整合的第一步。具体的搭建步骤包括下载并部署Tomcat服务器,确认安装成功后进行配置以使用SSL(安全套接字层),以确保通信的安全性。然后,下载CAS...
4. 部署CAS Server:将CAS Server作为一个普通的Java Web应用部署到Tomcat上,但需注意,由于涉及SSL,所以配置文件需要相应调整。 5. 自定义认证:根据实际需求扩展CAS Server的用户验证接口,以匹配组织的用户认证...