Jsf 使用ApacheShiro和CAS为Webapp重定向SSO上的循环
我正在开发一个典型的Web应用程序,但通过Shiro和JASIG CAS SSO执行身份验证和授权。我的应用程序是一个运行在Tomcat7上的JSF2WebApp。我已经启用了Shiro,在我的Shiro配置中,我已经连接到了CAS领域。一切都很好。。。也就是说,web应用程序运行良好,shiro正在重定向到CAS登录页面。反过来,CAS将我重定向回最初请求的URL那么什么都不会发生我得到一个重定向循环Jsf 使用ApacheShiro和CAS为Webapp重定向SSO上的循环,jsf,cas,shiro,Jsf,Cas,Shiro,我正在开发一个典型的Web应用程序,但通过Shiro和JASIG CAS SSO执行身份验证和授权。我的应用程序是一个运行在Tomcat7上的JSF2WebApp。我已经启用了Shiro,在我的Shiro配置中,我已经连接到了CAS领域。一切都很好。。。也就是说,web应用程序运行良好,shiro正在重定向到CAS登录页面。反过来,CAS将我重定向回最初请求的URL那么什么都不会发生我得到一个重定向循环 https://myhost:8443/gdsicache/secured/index?ti
https://myhost:8443/gdsicache/secured/index?ticket=ST-37-L2N7SCVtHxHWENqBfpOY-cas01.example.org
从链接中可以看到:我被重定向到请求的安全资源https://myhost/gdsicache/secured/index
,我也得到了一张罚单,但结果却成了一个循环
有人知道为什么流会以重定向循环结束吗?我不再进行任何重定向,因为我的Web.xml文件中除了shiro筛选器之外没有任何其他筛选器。此重定向循环通常是由JVM(主要是客户机JVM)无法识别的服务器证书引起的。如果应用程序与服务器(尤其是JVM)分离,则应确保您拥有CA颁发的导入根证书、中间证书(有时是交叉证书)。否则,CAS客户端将执行循环,因为它无法识别服务器上的证书 请注意,引起问题的不是浏览器证书,而是JVM 另外,您可能还需要将根证书、交叉证书(以及某些交叉证书)导入CAS服务器JVM