cas 部署过程中遇到的一些问题(持续更新)
cas 部署过程中遇到的一些问题(持续更新)
1、CertificateException
有时候客户端和服务端都部署好了之后,回调回来会报异常
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching localhost found
出现这个问题一般都是因为证书没有配置好,可以尝试重新配置一下证书。
如果一直不行,可能需要配置信任所有回调域名的方式了。请参考:TODO
2、cacerts 拒绝访问
keytool 错误: java.io.FileNotFoundException: C:\Program Files\Java\jdk1.7.0_15\jre\lib\security\cacerts (拒绝访问。)
WIN7下的C:\Program Files以及C:\Program Files(x86)都是只有管理员权限才能访问的目录,所有写、修改操作都会遭遇”拒绝访问”
3、does not match supplied service
HTTP Status 403 - Ticket 'ST-1-YGyBqKkf2AeC5iRKthaF-cas01.example.org' does not match supplied service. The original service was 'http://sso.xxx.com:8080/simple-demo/ServiceServlet/simple-demo/ServiceServlet' and the supplied service was 'http://sso.xxx.com:8080/simple-demo/ServiceServlet/simple-demo/ServiceServlet/simple-demo/ServiceServlet'.
很明显,这里是因为重定向回来得到的路径不匹配了,查看web.xml发现配置的server-name指定到了具体路径,改成服务路径就好了
init-param>
<param-name>serverName</param-name>
<param-value>http://sso.i61.com:8080/simple-demo/ServiceServlet</param-value>
</init-param>
改成如下即可:
<init-param>
<param-name>serverName</param-name>
<param-value>http://sso.i61.com:8080</param-value>
</init-param>
4、无法进行单点登出的问题
在访问子系统时使用的IP为localhost或127.0.0.1,如果cas 服务部署到其它机器的话,那么单点登出的回调将无法被回调回来。
使用IP访问就好了。
还没有评论,来说两句吧...