关于单点登陆(SSO)的开源项目CAS的一个问题, 用过yale大学CAS的帮帮忙吧,先谢啦,哈哈

CAS是Yale大学的一个SSO开源项目
我在配置简单的HelloWorld的时候,遇到了问题
我是按照这篇文章进行配置的
http://www-128.ibm.com/developerworks/web/library/wa-singlesign/

1.首先我打开tomcat5.5的SSL
就是uncomment掉server.xml里的那段注释

2.生成安全证书

%java_home%\bin\keytool -genkey -alias tomcat -keyalg RSA

密码是:changeit
姓名是:localhost
其他随便写的
之后是
%java_home%\bin\keytool -export -alias tomcat -file server.crt

%java_home%\bin\keytool -import -file server.crt -keystore %java_home%/jre/lib/security/cacerts
然后启动tomcat, 打开ie, 输入https://localhost:8443, 成功进入tomcat的welcome页!

3.将CAS server3.0.2中target目录中的CAS.war复制到%tomcat_home%\webapps目录下.

4.将cas-client-java-2.1.1\dist\casclient.jar文件复制到%tomcat_home%\common\lib中

5.修改tomcat自带的servlet-examples的web.xml, 加入cas的过滤器:


<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</param-value>
</init-param>
</filter>

<filter-mapping>
<filter-name>CAS Filter</filter-name>
<url-pattern>
/*</url-pattern>
</filter-mapping>

6.启动tomcat !,CAS.war文件被自动在webapps下释放出CAS目录
进入https://localhost:8443/servlets-examples, 被自动转发到CAS的登陆页面.
到这里都一切正常啊!

7.在CAS登陆页面中输入用户名和密码相同的字符串,然后点"login"按钮
问题出现了:请求没有被转到servlets-examples页面, 却是"找不到服务器 无法显示网页"的空白页

高人指点一下, 我到底是什么地方出错了呀

急的都上火啦 5555555555555~~~~~

搞CAS是钻牛角尖,有多少网站需要安全证书?就是有不能破吗?

直接使用客户端的cookie保存登陆信息即可,或者学习IBM采取applet即可。
对不起,没帮到忙。

谢谢 老大

问题已经解决了

我也遇到这个问题了
请楼上的dx把解决的方法给出来吧:)

或发到我的email中:tang-qj@sohu.com

3Q

小弟现在也正在处理SSO 方面的问题,望各位给点指点
MSN :yuling1216@hotmail.com

我也遇到了同样的问题,能不能请楼主把解决方案告知。谢谢!
我的E-mail:gladone2@sohu.com

这也许是一个bug,注意一下url,把前面多余的部分去掉即可.

<init-param><param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name><param-value>localhost</param-value></init-param>
localhost改成localhost:8443