目錄
1、常用資源訪問地址:
服務端源碼官網地址(最有用):
https://github.com/apereo/cas-overlay-template
客戶端官方下載(示例demo):
https://github.com/cas-projects/cas-sample-java-webapp
客戶端配置官方文檔:
https://github.com/apereo/java-cas-client
application.properties配置文檔CAS屬性:
https://apereo.github.io/cas/5.0.x/installation/Configuration-Properties.html
CAS REST-protocol認證官方文檔:
https://apereo.github.io/cas/5.0.x/protocol/REST-Protocol.html
2、開發環境:
開發環境需用到jdk1.8+、maven、tomcat8.x及開發工具idea等。
3、源碼下載:
服務端源碼官網地址(最有用):
https://github.com/apereo/cas-overlay-template
說明:不同大版本的源碼差別很大,個人本次使用的是5.1.x系列的版本,具體版本爲5.1.5或5.1.9都是一樣的。
4、源碼導入idea:
將下載好的cas-overlay-template源碼進行解壓,然後用idea開發工具打開。
5、源碼結構簡介:
早起版本比較小的3.x系列的cas還沒有采用overlay無侵入式的項目結構,整合cas服務端比較費勁點。
自從4.1版本開始cas服務端就採用了overlay無侵入式的項目結構了,這樣整合cas服務端就非常簡單方便了。如下是將官網源碼解壓導入idea後的目錄結構:
官網源碼解壓導入到idea後,猛一看沒有一個代碼,實質上是沒有一個開發的代碼類,html、js、class等文件都編譯隱藏在overlays中,在overlays下對應版本的中的class內,類似於平時部署項目在tomcat中解壓後的結構。採用overlays的一種好處就是無侵入,如果需要自定義修改和開發,只需要在相同的路徑下命名相同的文件就會進行覆蓋。因此按照這個思路,我們一般都是在根目錄下創建文件夾:src/main/java和src/main/sources兩個文件路徑,並在idea中將兩個文件路徑設置爲source路徑。Java文件下創建各種package進行自定義代碼上的開發,sources文件下移動overlays下對應版本中的services、static、template、application.properties、log4j2.xml、message.properties等文件,在需要的時候修改sources下的各種文件,然後在idea中clean下項目,然後啓動,即可看到修改後的效果。注意:如果不clean,直接啓動,修改的效果可能看不出來。一般自定義開發的目錄結構如下:
6、源碼配置支持http:
修改services/HTTPSandIMAPS-10000001.json文件,添加http:
修改application.properties配置文件增加如下兩個參數:
cas.tgc.secure=false
cas.serviceRegistry.initFromJson=true
7、源碼啓動訪問:
在idea中配置tomcat8.x啓動cas源碼項目即可:
8、源碼部署:
在terminal中,也就是進入到項目根文件夾中,執行cmd命令:
build.cmd package
就會在target中生成一個cas.war包,然後將該war包部署到tomcat8.x中即可。
9、訪問測試:
在idea中啓動的項目在啓動完成後會自動在瀏覽器中彈出cas登錄頁,如果沒有彈出那麼就訪問啓動的端口號/login即可。
在tomcat8.x中部署的項目,需要手動在瀏覽器中輸入cas登錄頁訪問地址:http://localhost:8080/cas/login即可。
在application.properties中配置了默認的登錄用戶參數:cas.authn.accept.users=casuser::Mellon,使用casuser/Mellon即可成功登錄進入到cas服務端。