耶鲁 CAS 配置
拷贝 cas.war 到 tomcat/webapps
拷贝 casclient.jar 到 tomcat/common/lib 下
添加下面的配置到自己 war 中 web.xml 顶部
<filter>
<filter-name>CAS Filter</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://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>localhost:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CAS Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
tomcat/conf/server.xml 打开 8443 那个 connector.
如果没有就添加 :
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
执行 :
%java_home%\bin\keytool -genkey -alias tomcat -keyalg RSA
名字 : localhost.
密码 :changeit
其他 , 随便
Export the certificate from the .keystore file to a file called server.crt.
%java_home%\bin\keytool -export -alias tomcat -file server.crt
Import the certificate into the default jvm truststore.
%java_home%\bin\keytool -import -file server.crt -keystore ./jre/lib/security/cacerts
密码 :changeit
Test the SSL configuration by entering https://localhost:8443.
访问应用 :http://localhost:8080/…..
配置是经常遇到的报错:
1 、 C:\Program Files\Java\jdk1.5.0_06\bin>keytool -genkey -alias tomcat -keyalg RSA
输入 keystore 密码: changeit
keytool 错误: java.io.IOException: Keystore was tampered with, or password was i
ncorrect
原因:系统中有了 *.keystore 文件,删除此文件可解决问题。此文件通常在 C:\Documents and Settings\Administrator 目录之下。
2 、 C:\Program Files\Java\jdk1.5.0_06>keytool -import -file server.crt -keystore ./j
re/lib/security/cacerts
输入 keystore 密码: changeit
keytool 错误: java.io.FileNotFoundException: server.crt ( 系统找不到指定的文件。 )
原因:
是否做了下面这一步:
C:\Program Files\Java\jdk1.5.0_06\bin>keytool -export -alias tomcat -file server
.crt
输入 keystore 密码: changeit
保存在文件中的认证 <server.crt>
做完这步之后,稍等片刻,因为 server.crt 是在这步生成的,但是生成的时间比较长。通常在你操作下一步的时候它还没有生成,因此在配置的时候可能报错。
操作过程:
1 、 C:\Program Files\Java\jdk1.5.0_06\bin>keytool -genkey -alias tomcat -keyalg RSA
输入 keystore 密码: changeit
您的名字与姓氏是什么?
[Unknown] : localhost
您的组织单位名称是什么?
[Unknown] : er
您的组织名称是什么?
[Unknown] : se
您所在的城市或区域名称是什么?
[Unknown] : sd
您所在的州或省份名称是什么?
[Unknown] : sdf
该单位的两字母国家代码是什么
[Unknown] : sdf
CN=localhost, OU=er, O=se, L=sd, ST=sdf, C=sdf 正确吗?
[ 否 ] : y
2 、输入 <tomcat> 的主密码
(如果和 keystore 密码相同,按回车): changeit
3 、 C:\Program Files\Java\jdk1.5.0_06\bin>keytool -export -alias tomcat -file server
.crt
输入 keystore 密码: changeit
保存在文件中的认证 <server.crt>
4 、 C:\Program Files\Java\jdk1.5.0_06>keytool -import -file server.crt -keystore ./j
re/lib/security/cacerts
输入 keystore 密码: changeit
Owner: CN=localhost, OU=er, O=se, L=sd, ST=sdf, C=sdf
发照者: CN=localhost, OU=er, O=se, L=sd, ST=sdf, C=sdf
序号: 4504c0e7
有效期间: Mon Sep 11 09:50:31 CST 2006 至: Sun Dec 10 09:50:31 CST 2006
认证指纹:
MD5 : 58:1E:6A:C2:9C:BB:8C:DF:5B:5C:79:B9:2E:FF:EE:45
SHA1 : 02:7C:32:16:24:B1:7F:32:8C:84:96:E6:77:87:0A:1C:31:7B:C8:32
信任这个认证? [ 否 ] : y
认证已添加至 keystore 中