1. 程式人生 > >單點登入cas從部署到應用和cas和spring security的整合 ------1

單點登入cas從部署到應用和cas和spring security的整合 ------1

程式碼下載地址 沒法上傳不要積分的,,我也很無奈

單點登入cas從部署到應用和cas和spring security的整合 ------2

單點登入cas從部署到應用和cas和spring security的整合 ------3

第一步下載 war 包 

解壓純淨的tomcat(可以更改 個簡單的名字便於訪問)

(先啟動一下 tomcat 把war 解壓開)為了 便於自己訪問 把 安全證書驗證去掉

更改配置檔案

此處新增配置 

此處的配置 意思是是否需要安全驗證。預設為true 即是需要安全驗證  需要是https訪問

 還有就是 我們一般不想用 預設的8080埠 需要修改8080 埠

tomcat修改埠就不在寫上

當修改過tomcat埠後

對應的cas配置資訊也要對應的修改

修改為自己的埠(和tomcat對應) 

 啟動tomcat 登入上去進行測試

出現這個介面表示 啟動成功 

這個賬號和密碼從哪裡來?還在cas 的配置檔案中,會有一個預設的賬號和密碼(deployerConfigContext.xml)

預設的賬號 密碼 可以登入上去,可以對應的新增一個我們自己的賬號方便登入 

重啟tomcat 測試使用者 

使用admin 的登入成功 

現在簡單的修改已經成功,下面做個簡單小案例 來測試

下面是簡單的使用

搭建maven工程 使用war 包方式

在pom中新增依賴

<dependencies>

<!-- cas -->  

<dependency>  

    <groupId>org.jasig.cas.client</groupId>  

    <artifactId>cas-client-core</artifactId>  

    <version>3.3.3</version>  

</dependency>  

<dependency>

<groupId>javax.servlet

</groupId>

<artifactId>servlet-api</artifactId>

<version>2.5</version>  

<scope>provided</scope>

</dependency>

</dependencies>  

<build>  

 新增tomcat外掛

  <plugins>

      <plugin>  

          <groupId>org.apache.maven.plugins</groupId>  

          <artifactId>maven-compiler-plugin</artifactId>  

          <version>2.3.2</version>  

          <configuration>  

              <source>1.7</source>  

              <target>1.7</target>  

          </configuration>  

      </plugin>  

      <plugin>

<groupId>org.apache.tomcat.maven</groupId>

<artifactId>tomcat7-maven-plugin</artifactId>

<configuration>

<!-- 指定埠 -->

<port>9001</port>

<!-- 請求路徑 -->

<path>/</path>

</configuration>

     </plugin>

  </plugins>  

    </build>

 新增web.xm(檔案過長 放在檔案中供下載)(介紹下配置資訊)

在配置檔案中全部都是 攔截器

這兩個攔截器 就是用於單點登出的效果 是可選選項(建議加上) 可以選擇一個就行的   

l

認證攔截器(必須啟動)    <param-value>http://localhost:9100/cas/login</param-value>   這裡是伺服器地址埠號要和你修改過的相對應  <param-value>http://localhost:9001</param-value>  這是你的客戶端的地址

攔截規則 攔截所有請求

 

票據的驗證工作 必須的選項 地址和上面的對應    這個是 cas 的核心 票據就是cas 的核心  

票據的攔截規則 

 獲取使用者登入名 的兩種方式 兩種方式 作用相同 只是方法不同 可選操作

至此配置檔案已經好了 我們建立兩個相同的maven工程 驗證單點登入的實現

埠修改不同  相應 的 web.xml中也進行修改 

啟動兩個工程

發現兩個工程 都會到這個地址

最好加個測試介面  然後顯示一下登入名 (當然測試下登入名顯示了) 

 顯示使用者名稱再次測試

效果 出來了   

兩個都可以訪問

退出成功 

我們更希望 退出的時候退出顯示的頁面是 登入頁面怎麼辦呢?

修改cas-servlet.xml 的檔案  false  改為true 

修改後別忘了 重啟cas 服務 

新增一個退出 連線 也可以在位址列寫

退出到百度,, 至此 簡單應用 介紹完畢 下面就是 從 資料庫 查詢使用者名稱和密碼 替換登入介面 和  spring security 整合