使用CAS4.0服务端,部署后,应用A通过cas(http请求)登录成功,然后再访问应用B,老是检测不到登录状态,又跳转去了登录页,通过浏览器工具查看发现可能是访问应用B的时候没有从cookie中找到TGT,但是使用https的时候又是正常的。原来造成这个差别的原因是cas服务端有几个参数没有配置。
要使得cas支持http, 要修改下面参数:
1、修改WEB-INF\deployerConfigContext.xml,加入p:requireSecure="false"
<bean id="proxyAuthenticationHandler"
class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler"
p:httpClient-ref="httpClient" p:requireSecure="false"/>
2. 修改WEB-INF\spring-configuration\ticketGrantingTicketCookieGenerator.xml,修改p:cookieSecure="false"
<bean id="ticketGrantingTicketCookieGenerator" class="org.jasig.c