SSO之CAS去掉HTTPS協議
前言
CAS預設使用的是HTTPS協議,如果使用https協議需要SSL安全證書,需要申請購買,如果不想配置https協議,本文將介紹如果去掉CAS的https協議。
進入tomcat中的cas專案中:
1)修改WEB-INF/deployerConfigContext.xml
找到
<bean class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler" p:httpClient-ref="httpClient"/>
增加引數p:requireSecure="false",requireSecure屬性意思為是否需要安全驗證,即HTTPS,false為不採用
<!-- Required for proxy ticket mechanism. --> <bean id="proxyAuthenticationHandler" class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler" p:httpClient-ref="httpClient" p:requireSecure="false" />
2)修改cas的/WEB-INF/spring-configuration/ticketGrantingTicketCookieGenerator.xml找到下面配置
引數p:cookieSecure="true",同理為HTTPS驗證相關,TRUE為採用HTTPS驗證,FALSE為不採用https驗證。
引數p:cookieMaxAge="-1",是COOKIE的最大生命週期,-1為無生命週期,即只在當前開啟的視窗有效,關閉或重新開啟其它視窗,仍會要求驗證。可以根據需要修改為大於0的數字,比如3600等,意思是在3600秒內,開啟任意視窗,都不需要驗證。
我們這裡將cookieSecure改為false , cookieMaxAge 改為3600
<bean id="ticketGrantingTicketCookieGenerator" class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator" p:cookieSecure="false" p:cookieMaxAge="3600" p:cookieName="CASTGC" p:cookiePath="/cas" />
3)修改cas的WEB-INF/spring-configuration/warnCookieGenerator.xml找到下面配置
引數修改為和上面2一致
<bean id="warnCookieGenerator" class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator" p:cookieSecure="false" p:cookieMaxAge="3600" p:cookieName="CASPRIVACY" p:cookiePath="/cas" />
將cookieSecure改為false , cookieMaxAge 改為3600