耶魯
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
中