在我从cas服务器验证后,网址改变如下。
http://sso.ecen.com:8080/mip/sys/sys_index.jsp?ticket=ST-2-kHhMa9pYTFuOXVUjJl7x-cas
刷新此页面时出现错误消息。
org.jasig.cas.client.validation.TicketValidationException:CAS Server无法验证票证。 at org.jasig.cas.client.validation.Cas10TicketValidator.parseResponseFromServer(Cas10TicketValidator.java:31) at org.jasig.cas.client.validation.AbstractUrlBasedTicketValidator.validate(AbstractUrlBasedTicketValidator.java:165) 在org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:129) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在org.jasig.cas.client.authentication.AuthenticationFilter.doFilter(AuthenticationFilter.java:103) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在ecen.mip.sys.filter.AutoSetUserAdapterFilter.doFilter(AutoSetUserAdapterFilter.java:134) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) 在org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:208) 在net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:181) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 在org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) 在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) 在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) 在org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) 在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) 在org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:585) 在org.apache.tomcat.util.net.AprEndpoint $ SocketProcessor.run(AprEndpoint.java:1813) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:603) 在java.lang.Thread.run(Thread.java:722)
答案 0 :(得分:0)
可能是因为您向http发送请求而不是https CAS仅适用于 https
看看yalle的人说:
在邮件列表中,我们经常会对SSO似乎无法正常工作的原因提出疑问。默认情况下,CAS仅通过安全连接发送单点登录cookie(CASTGC);换句话说,它不是通过普通的HTTP通道发送的。如果没有SSO cookie,CAS需要对服务票据的每个请求进行重新认证,这解释了缺乏SSO行为。虽然可以禁用此行为,但我们强烈建议您通过SSL / TLS访问CAS和应用程序入口点。
答案 1 :(得分:0)
我知道为什么会这样。 您可以在此处查看ticket expiration policy。然后您就知道如何配置服务票证使用时间。 配置文件路径:
CAS \ WEB-INF \弹簧配置\ ticketExpirationPolicies.xml