锁定老帖子 主题:单点登录CAS的使用方法
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-07-06
出自:http://www.blogjava.net/oksonic/archive/2007/04/02/107854.html 一.环境 a) Windows 2003 sp1 b) JDK<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">1.5.0</st1:chsdate>_11 c) Tomcat <st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">5.5.23</st1:chsdate> d) MySql5.0 二.准备 a) cas-server-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">3.0.6</st1:chsdate>.zip 下载地址:http://www.ja-sig.org/products/cas/index.html b) cas-client-java-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">2.1.1</st1:chsdate>.zip 下载地址:同上 c) 安装完jdk和jre后,需要配置JAVA_HOME和PATH=%JAVA_HOME%\bin 三.步骤 a) 配置Tomcat使用SSL安全认证 i. 使用命令提示符进入到Tomcat安装目录 b) 配置客户端应用 ii. 生成服务端密匙,执行以下命令 keytool -genkey -alias 别名keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore 例:keytool -genkey -alias casserver -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore 运行后出现提示信息: 输入keystore密码:changeit 这里也填入主机名 您的名字与姓氏是什么? [Unknown]: localhost 这里一定要填写正确的主机名 您的组织单位名称是什么? [Unknown]: oksonic 您的组织名称是什么? [Unknown]: oksonic 您所在的城市或区域名称是什么? [Unknown]: <st1:place w:st="on"><st1:city w:st="on">kunming</st1:city></st1:place> 您所在的州或省份名称是什么? [Unknown]: <st1:place w:st="on"><st1:state w:st="on">yunnan</st1:state></st1:place> 该单位的两字母国家代码是什么 [Unknown]: cn CN=localhost, OU=oksonic, O=oksonic, L=kunming, ST=yunnan, C=cn 正确吗? [否]: y 完成后会在Tomcat目录生成一个名为casserver的文件 iii. 生成服务端证书,执行以下命令 keytool -export -alias casserver -storepass changeit -file server.cer -keystore server.keystore 命令执行后生成一个server.cer的证书文件 iv. 生成客户端密匙,执行以下命令 keytool -genkey -alias casclient -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore v. 生成客户端证书,执行以下命令 keytool -export -alias casclient -storepass changeit -file client.cer -keystore client.keystore 命令执行后生成一个server.cer的证书文件 vi. 导入证书文件到cacerts 文件中,执行以下命令 keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit keytool -import -trustcacerts -alias client -file client.cer -keystore cacerts -storepass changeit 把cacerts文件,拷贝到<java_home></java_home>\jre\lib\security目录下 vii. 拷贝cas-server-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">3.0.6</st1:chsdate>.zip包内的target目录下的cas.war文件到Tomcat目录下的webapps目录下 viii. 修改Tomcat的配置文件server.xml把以下补注释的内容打开 <connector port="8443" span="" maxhttpheadersize="8192"></connector> maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" /> 加入红字部份后的内容如下: <connector port="8443" span="" maxhttpheadersize="8192"></connector> keystorePass="changeit" keystoreFile="/server.keystore" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
i. 使用Tomcat的例子jsp-examples来做客户端 ii. 打开项目中的web.xml文件,加入以下配置信息 <filter></filter> <filter-mapping></filter-mapping> 拷贝cas-client-java-<st1:chsdate w:st="on" isrocdate="False" year="1899" day="30" islunardate="False" month="12">2.1.1</st1:chsdate>.zip包中的casclient.jar到项目的lib目录下 现在可以启动Tomcat来测试一下是否能够进入到登录页 c) 配置CAS使用数据库进行验证 i. 在MySql中的Test库中新建app_user表 CREATE TABLE `app_user` ( ('oksonic','oksonic'), ('oksonic1','oksonic1'); ii. 修改cas项目中的deployerConfigContext.xml文件 <bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" /> 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
浏览 3848 次