CAS是成熟的單點登錄框架之一,官網地址https://www.apereo.org/projects/cas/。github地址https://github.com/apereo/cas。CAS是Central Authentication Service的縮寫,中央認證服務,一種獨立開放指令協議。耶魯大學發起的一個開源項目,旨在爲 Web 應用系統提供一種可靠的單點登錄方法。
一:下載
cas推薦下載使用WAR Overlay Installation 方式部署使用,什麼是overlay,官網說明https://apereo.github.io/cas/development/installation/WAR-Overlay-Installation.html,overlay是一種整合重複代碼或資源的策略,overlays不需要下載CAS源代碼,從源代碼構建,而是可以下載由項目本身提供的預先構建的 CAS web應用程序,並覆蓋或插入新的功能。
overlay下載地址:https://github.com/apereo/cas-overlay-template/tree/5.3
下載完成之後用Intellji Idea打開項目,進行編譯,下載依賴時間較長,需耐心等待,建議使用國內的鏡像.
<repository>
<id>central</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
構建完成後目錄如圖:
然後在src 中新建目錄如下圖
點擊java,右鍵,點擊Mark Directory as 選中Sources Root,同理點擊resources,右鍵,點擊Mark Directory as選中Resources Root
在項目結構中有一個overlays文件夾,我們將需要的資源拷貝到新建的文件夾內,修改同名文件進行CAS資源覆蓋,來修改成我們想要的效果。首先複製圖中選中的文件夾和文件,拷貝到步驟2中新建的resources文件夾下。如下圖(目前先使用這兩個,後期需要其他的在進行復制,不然文件太多。會比較亂
默認是支持https的,我們先不考慮https,修改一下讓它支持http,如下,在剛拷貝的HTTPSandIMAPS-10000001.json文件中,如下修改,xservereid 加上http
{
"@class" : "org.apereo.cas.services.RegexRegisteredService",
"serviceId" : "^(https|http|imaps)://.*",
"name" : "HTTPS and IMAPS",
"id" : 10000001,
"description" : "This service definition authorizes all application urls that support HTTPS and IMAPS protocols.",
"evaluationOrder" : 10000
}
然後再application.properties加上
server.port=8080
server.ssl.enabled=false
運行方式有兩種,一種是使用它提供的腳本,build.cmd run ,另外一種是使用maven 打包,部署到自己的tomcat中,注意jdk要使用1.8以上,tomcat 使用8.5以上
使用maven 編譯完成以後會在target目錄下生成cas.war
然後運行,等待幾分鐘,運行成功以後使用瀏覽器打開,http://localhost:8080/cas 就會打開登陸界面,然後輸入
默認用戶名密碼:casuser:Mellon
再application.properties文件中可以配置
第一篇結束