2008-01-09
cas acegy and cas proxy
关键字: cas
剖析CAS Proxy的设计原理
http://www.blogjava.net/security/archive/2006/04/26/SSO_CASProxy.html
http://afareg.javaeye.com/blog/89823
http://blog.csdn.net/maxgong2005/archive/2005/12/20/557052.aspx
**
http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=29304&threadID=36013
我现在将CAS 服务部署在一台WAS上,这台WAS是还部署另外几个应用,现在要在这几个应用配置SSO,现在要在CAS服务端和应用的客户端间建立SSL应用..那么应该怎么做证书这块的配置?(如果要把证书导入JVM,那在一台WAS上,应该如何导入呢?)
我的想法是:在应用上casclient.jar里可以配置读取证书路径.这样WAS上配置服务端的证书,各个应用根据配置的证书路径读取客户端的证书.
现在折中解决了,
通过KEYTOOL生成STORETYPE JKS的的证书,再按照WAS要求的建立密钥文件,以及信任文件,再将信任文件导为CERT格式,然后导入到WAS的JVM的cacerts中.
CAS CLIENT默认读取的证书的是JVM中cacerts中,所以采取这样的方法,WAS管理台上配置KEYTOOL生成的JKS的证书,导入到JVM中cert证书..
下面是部分keytool生成命令:
keytool -genkey -v -alias casserver -keypass 123456 -keystore casserver.jks -storepass 123456 -storetype jks -dname "cn=casserver,c=cn" -keyalg "RSA"
keytool -export -v -alias casserver -file casserver.cert -rfc -keystore casserver.jks -storepass 123456 -storetype jks
keytool -import -v -noprompt -alias casserver -file casserver.cert -keystore casclienttrusts.jks -storepass 123456 -storetype jks
keytool -import -keystore /opt/WebSphere/AppServer/java/jre/lib/security/cacerts -alias casserver -file /opt/WebSphere/AppServer/java/bin/casserver.cert -storepass changeit
=======================================================
我的步骤是:
进入D:\WebSphere\AppServer\java\jre\bin输入命令.
keytool -genkey -v -alias casserver -keypass 123456 -keystore casserver.jks -storepass 123456 -storetype jks -dname "cn=localhost,c=cn" -keyalg "RSA"
keytool -export -v -alias casserver -file casserver.cert -rfc -keystore casserver.jks -storepass 123456 -storetype jks
keytool -import -v -noprompt -alias casserver -file casserver.cert -keystore casclienttrusts.jks -storepass 123456 -storetype jks
keytool -import -keystore d:/WebSphere/AppServer/java/jre/lib/security/cacerts -alias casserver -file d:/WebSphere/AppServer/java/bin/casserver.cert -storepass changeit
然后,在控制台SSL里新建JSSE配置表,指定密钥文件${WAS_INSTALL_ROOT}/java/jre/bin/casserver.jks,信任文件
${WAS_INSTALL_ROOT}/java/jre/bin/casclienttrusts.jks.
最后修改应用服务器的Web 容器传输链为新建的配置表.
完成后,通过CAS server端验证后,返回客户端时,出错,
[Servlet 错误]-[Unable to validate ProxyTicketValidator
at edu.yale.its.tp.cas.client.CASReceipt.getReceipt(CASReceipt.java:52)
还是证书的问题.请问楼主,我的步骤哪里不对?谢谢.
http://www.blogjava.net/security/archive/2006/04/26/SSO_CASProxy.html
http://afareg.javaeye.com/blog/89823
http://blog.csdn.net/maxgong2005/archive/2005/12/20/557052.aspx
**
http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=29304&threadID=36013
我现在将CAS 服务部署在一台WAS上,这台WAS是还部署另外几个应用,现在要在这几个应用配置SSO,现在要在CAS服务端和应用的客户端间建立SSL应用..那么应该怎么做证书这块的配置?(如果要把证书导入JVM,那在一台WAS上,应该如何导入呢?)
我的想法是:在应用上casclient.jar里可以配置读取证书路径.这样WAS上配置服务端的证书,各个应用根据配置的证书路径读取客户端的证书.
现在折中解决了,
通过KEYTOOL生成STORETYPE JKS的的证书,再按照WAS要求的建立密钥文件,以及信任文件,再将信任文件导为CERT格式,然后导入到WAS的JVM的cacerts中.
CAS CLIENT默认读取的证书的是JVM中cacerts中,所以采取这样的方法,WAS管理台上配置KEYTOOL生成的JKS的证书,导入到JVM中cert证书..
下面是部分keytool生成命令:
keytool -genkey -v -alias casserver -keypass 123456 -keystore casserver.jks -storepass 123456 -storetype jks -dname "cn=casserver,c=cn" -keyalg "RSA"
keytool -export -v -alias casserver -file casserver.cert -rfc -keystore casserver.jks -storepass 123456 -storetype jks
keytool -import -v -noprompt -alias casserver -file casserver.cert -keystore casclienttrusts.jks -storepass 123456 -storetype jks
keytool -import -keystore /opt/WebSphere/AppServer/java/jre/lib/security/cacerts -alias casserver -file /opt/WebSphere/AppServer/java/bin/casserver.cert -storepass changeit
=======================================================
我的步骤是:
进入D:\WebSphere\AppServer\java\jre\bin输入命令.
keytool -genkey -v -alias casserver -keypass 123456 -keystore casserver.jks -storepass 123456 -storetype jks -dname "cn=localhost,c=cn" -keyalg "RSA"
keytool -export -v -alias casserver -file casserver.cert -rfc -keystore casserver.jks -storepass 123456 -storetype jks
keytool -import -v -noprompt -alias casserver -file casserver.cert -keystore casclienttrusts.jks -storepass 123456 -storetype jks
keytool -import -keystore d:/WebSphere/AppServer/java/jre/lib/security/cacerts -alias casserver -file d:/WebSphere/AppServer/java/bin/casserver.cert -storepass changeit
然后,在控制台SSL里新建JSSE配置表,指定密钥文件${WAS_INSTALL_ROOT}/java/jre/bin/casserver.jks,信任文件
${WAS_INSTALL_ROOT}/java/jre/bin/casclienttrusts.jks.
最后修改应用服务器的Web 容器传输链为新建的配置表.
完成后,通过CAS server端验证后,返回客户端时,出错,
[Servlet 错误]-[Unable to validate ProxyTicketValidator
at edu.yale.its.tp.cas.client.CASReceipt.getReceipt(CASReceipt.java:52)
还是证书的问题.请问楼主,我的步骤哪里不对?谢谢.







评论排行榜