Yale cas安裝

看了網上很多CAS安裝的步驟,結合自己的經驗總結如下:

一、配置Tomcat,啓用SSL協議。

1.在CAS要安裝的機器上(也就是服務端)爲Tomcat生成用於SSL通訊的密鑰:keytool -genkey -alias tomcat -keyalg RSA,輸入密鑰密碼和相應參數,(注意:第一個參數CN一定要輸入CAS安裝機器名,其他參數就隨便了),結果是在用戶目錄中創建了名爲.keystore的密鑰文件。

2.從服務端導出密鑰文件:keytool -export -file server.crt -alias tomcat,輸入上一步中的密碼,結果在當前目錄生成server.crt密鑰文件。(注意:這個文件是要導入客戶端的JVM上的)

3.爲客戶端的JVM導入密鑰:keytool -import -keystore $JAVA_HOME/jre/lib/security/cacerts -file server.crt -alias tomcat,輸入密碼(注意:這裏的密碼不是上面設定的密碼,而是changeit),將創建cacerts文件。

4.修改服務端的Tomcat配置文件server.xml,去掉對於SSL的註釋,即開放8443端口,注意這裏需要在connector字段中加入keystorePass="password"參數,password即爲上面幾步中涉及到的密碼,keystoreFile=".keystorePath",.keystorePath即爲在第一步中生成的文件.keystore的全路徑,如/usr/java/bin/.keystore。

5.啓動Tomcat,測試https://server:8443/是否是需經過驗證方可訪問(注意:server爲服務端的IP地址或機器名)

二、部署CAS Server 2.0.12到Tomcat

1.一種簡單的方法是將下載包中的cas.war文件直接複製到Tomcat的webapps目錄下。

2.另外一種方法,從sourceforge上找到ESUP-Portail CAS Generic Handler項目,利用esup-cas-quick-start生成一個最簡的TOMCAT,詳見我的下一篇文章。

3.啓動Tomcat,測試https://server:8443/cas,是否可訪問CAS主頁面(注意:server爲服務端的IP地址或機器名)

三、部署CAS Client 2.0.11到Servlet-Examples

1.利用Servlet-Examples實例進行測試,將下載包中的casclient.jar文件複製到Servlet-Examples中WEB-INF目錄的lib下,這裏需要手工建立lib目錄。

2.修改Servlet-Examples的配置文件web.xml,加入以下的過濾器:

<!-- CAS Filters -->
    <filter>
        <filter-name>CASFilter</filter-name>
        <filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
        <init-param>
            <param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
            <param-value>https://server:8443/cas/login</param-value>
        </init-param><!--這裏的server是服務端的IP-->
        <init-param>
            <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
            <param-value>https://serName:8443/cas/proxyValidate</param-value>
        </init-param><!--這裏的serName是服務端的主機名,而且必須是-->
        <init-param>
          <param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
          <param-value>client:port</param-value><!--client:port就是需要CAS需要攔截的地址和端口,一般就是這個TOMCAT所啓動的IP和port-->
        </init-param>
    </filter>
    
    <filter-mapping>
        <filter-name>CASFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

四、測試

1.啓動Tomcat,定位到Servlet-Examples應用,點擊Execute;

2.瀏覽器跳轉至CAS登錄首頁,注意在URL中已經附上了Servlet-Examples的Service名

3.輸入用戶名和密碼,這裏沒有對其驗證條件做修改,因此只要用戶名和密碼相同即可通過驗證。

4.驗證通過後瀏覽器又重新定位至Servlet-Examples並顯示該Servlet的內容。

5.點擊Http Header的Servlet應用,可以看到裏面對當前用戶的用戶名信息做了記錄。

6.以後訪問Servlet-Examples應用都無需再次輸入用戶名和密碼了。

至此,CAS Server和Client已經在Tomcat上成功部署與配置,並達到了預期的SSO效果。 



發佈了0 篇原創文章 · 獲贊 1 · 訪問量 6655
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章