1,再企业内部网内该预备cas服务器主机中搜索hosts文本文件,添加域名映射对 ip javafenger 2,再客户主机中搜索hosts文本文件,添加相应cas服务器域名映射信息 3,部署CAS3服务器端所需得ssl环境生成
预备生成文件: cacerts server.keystore client.keystore server.cer client.cer
生成服务器端库文件 keytool -genkey -alias tomcat-server -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
导出服务器端证书 keytool -export -alias tomcat-server -storepass changeit -file server.cer -keystore server.keystore 生成客户端库文件 keytool -genkey -alias tomcat-client -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore 导出客户端证书 keytool -export -alias tomcat-client -storepass changeit -file client.cer -keystore client.keystore
导入服务器端证书 keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit 导入客户端证书 keytool -import -trustcacerts -alias client -file client.cer -keystore cacerts -storepass changeit
4将如上生成得cacerts server.keystore client.keystore server.cer client.cer文件分别拷贝到cas服务器以及应用客户端TOMCAT_HOME主目录以及JAVA_HOEM\jre\lib\security文件下
5 再客户端应用程序得web.xml文件中加入如下:
<!-- CAS Filters --> <filter> <filter-name>CASFilter</filter-name> <filter-class> edu.yale.its.tp.cas.client.filter.CASFilter </filter-class> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.loginUrl </param-name> <param-value>https://javafenger:8443/cas/login</param-value> </init-param><!--这里的server是服务端的IP--> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.validateUrl </param-name> <param-value> https://javafenger:8443/cas/proxyValidate </param-value> </init-param><!--这里的serName是服务端的主机名,而且必须是--> <init-param> <param-name> edu.yale.its.tp.cas.client.filter.serverName </param-name> <param-value>localhost:8080</param-value><!--client:port就是需要CAS需要拦截的地址和端口,一般就是这个TOMCAT所启动的IP和port--> </init-param> </filter>
<filter-mapping> <filter-name>CASFilter</filter-name> <url-pattern>/secure/*</url-pattern><!--这里的设置是针对servlets-examples的,针对jsp-examples设置为/*--> </filter-mapping>
注意其中cas服务器端主机名javafenger为cas服务器主机中hosts文件所添加得域名映射对
6 首先启动cas服务器之tomcat,运行cas主web应用
然后再客户端机器启动tomcat,直接http://localhost:8080/webapp访问你得子应用程序,即可
注意cas服务器是否独立部署的问题