CAS SSO单点登录基础实践,配置CAS 服务器和CAS客户端
参考网址:http://www.ibm.com/developerworks/cn/opensource/os-cn-cas/index.html
到 CAS 官方网站下载 CAS Server 和 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-3.0.0.zip????? CAS Server 是一套基于 Java 实现的服务,该服务以一个 Java Web Application 单独部署在与 servlet2.3 兼容的 Web 服务器上,另外,由于 Client 与 CAS Server 之间的交互采用 Https 协议,因此部署 CAS Server 的服务器还需要支持 SSL 协议。当 SSL 配置成功过后,像普通 Web 应用一样将 CAS Server 部署在服务器上就能正常运行了,不过,在真正使用之前,还需要扩展验证用户的接口。在 Tomcat 上部署一个完整的 CAS Server 主要按照以下几个步骤:??? ?? 1、配置使用 Https 协议如果希望 Tomcat 支持 Https,主要的工作是配置 SSL 协议,其配置过程和配置方法可以参考 Tomcat 的相关文档。不过在生成证书的过程中,会有需要用到主机名的地方,CAS 建议不要使用 IP 地址,而要使用机器名或域名。具体配置可参考以下内容我们使用keytool工具创建keystore文件。可以在<JAVA_HOME>/bin目录中找到keytool工具。
1.???? 生成密钥对
keytool -genkey -alias tomcat-server -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
2? 将服务器证书导出为证书文件:
keytool -export -alias tomcat-server -storepass changeit -file server.cer -keystore server.keystore
?输入密码(changeit):
Keytool返回下列消息:
Certificate stored in file <server.cer>
3 用keytool在所选的keystore文件中创建客户端证书:
keytool -genkey -alias tomcat-client -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore
4 将新客户端证书从keystore导出到证书文件:
keytool -export -alias tomcat-client -storepass changeit -file client.cer -keystore client.keystore
输入keystore密码(changeit)。Keytool将返回该消息:
Certificate stored in file <client.cer>
5 将上述步骤所得到的tomcat根目录下server.cer以及client.cer证书文件导入到cacerts 文件中,
cacerts文件默认生成在tomcat根目录下
keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit
keytool -import -trustcacerts -alias client -file client.cer -keystore cacerts -storepass changeit
6在tomcat根目录下找到cacerts文件,拷贝到<JAVA_HOME>\jre\lib\security文件下
从下载得?????????????? maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
?????????????? enableLookups="false" disableUploadTimeout="true"
?????????????? acceptCount="100" scheme="https" secure="true"
?????????????? clientAuth="false" sslProtocol="TLS" keystoreFile="/server.keystore" keystorePass="changeit"/>
session.getAttribute(CASFilter.CAS_FILTER_USER);
session.getAttribute("edu.yale.its.tp.cas.client.filter.user");简单的、基本的就介绍这么多了,更多内容请链接。