1. 程式人生 > >SSO之CAS去掉HTTPS協議

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