NGINX社区官方微服务训练营,深入了解K8s网络,线上课程+专家答疑,立即加入>>>
我在本机测试cas的部署,客户端和服务端同时安装在我本机(win7),使用了两个tomcat(6.0.7)分别对应cas客户端(3.2.1)和cas服务端(3.4),
同时安装了两个jdk,一个是jdk1.6(设置成了环境变量),一个是jdk1.5;
cas服务端tomcat对应的是jdk1.6版本(默认的),cas客户端tomcat使用jdk1.5。
我也把使用jdk1.6的keytool生成的证书导入到了cas客户端要使用的jdk1.5的cacerts里面。
cas服务端和cas客户端按网上大家说的配置,在服务端生成ticket成功,跳转到客户端,客户端再向服务端验证ticket时报错,具体如下:
根据网上所说,是在第5步: Step 5: CAS客户端取出ticket,生成“ticket验证URL”,然后向"ticket验证URL"发起http GET请求 "ticket验证URL": http://${cas-server-host}:${cas-server-port}/cas-server /serviceValidate?ticket=${service-ticket}&service=${client-service-url} 出的错,然后我把ticket取出,单独放到这个url里面去,页面提示:
大虾们知道的教教小弟。
猜测是证书引起的。 可以试试不用证书的时候是否正常。我记得以前本机测试的时候没用证书都正常, 用了证书就有类似的错误。
记不清了
终于解决了,这个错误怎么就没人发现呢,哎。最后还是看:http://jasig.275507.n4.nabble.com/No-principal-was-found-in-the-response-from-the-CAS-server-td1011262.html找到的方法,现把原因贴出来:
cas客户的的web.xml文件:
您好,我也碰到了相同的问题,但是按照你的解决方法,我还是会出错。错误信息如下: