1. 程式人生 > >cas+shiro+springboot+pac4j 自定義登陸介面以及驗證碼等

cas+shiro+springboot+pac4j 自定義登陸介面以及驗證碼等

首先 我把主要參考的文章貼出來:

https://blog.csdn.net/weixin_39819191/article/details/80361301

https://blog.csdn.net/u010588262/article/category/7548325

 雖然有以上專案 而且還有zip包 但是還是讓我吃盡了苦頭  忙了不到一個禮拜的樣子

所有程式碼 zip   如沒有積分/C幣 ,可以聯絡我 !

https://download.csdn.net/download/wuhaotian1996/10746653

github

客戶端   服務端上傳遇到問題(請先用zip包解壓後使用)

https://github.com/1194449282/shiro-cas-pac4j.git

本文非常適合新手 小白等  有些操作沒有細究  有歧義或者錯誤地方請指出!

cas 分為服務端和客戶端   

首先是服務端

解壓縮cas-overlay-template-5.3   cmd命令到壓縮後的資料夾下  

mvn clean package

 1生成keystore   

keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "D:\keystore\tomcat.keystore"

 

 名稱與姓氏 : passport.sso.com    其他的隨便輸入  密碼123456

2 生成crt

keytool -export -file D:\keystore\cas.crt -keystore D:\keystore\tomcat.keystore -alias tomcat

 第1 2 步完成後 會出現

 

第三步 重要   一定要放在jre下 我之前直接放在lib下,認證cas後 一直callback錯誤

 

keytool -import -file D:\keystore\cas.crt -alias tomcat -keystore D:\developSoft\Softs\JDK\jdk1.8.0_77\jre\lib\security\cacerts -storepass 123456

 

 然後我說說明一下 生成這三個檔案的作用

keystore 配置tomcat 中server.xml用到

crt  證書 給瀏覽器 防止瀏覽器攔截(個人認為意義不大) 一般瀏覽器點高階 放開就可以了

cacerts 這個不需要其他配置 只需要執行時 用這個jdk即可

下一步配置本地tomcat  server.xml

刪除:

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

新增: keystoreFile為自己的 keystore目錄

<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol" port="8443" maxThreads="200" scheme="https" secure="true" SSLEnabled="true" keystoreFile="D:\keystore\tomcat.keystore" keystorePass="123456" clientAuth="false" sslProtocol="TLS"/>

還有一個地方 忘記什麼時候配置的了  複製即可:

    <Connector  port="8090"    protocol="HTTP/1.1"

connectionTimeout="20000"

SSLEnabled="true"     maxThreads="150"

scheme="https"    secure="true"    clientAuth="false"    sslProtocol="TLS"

keystoreFile="D:\\keystore\\tomcat.keystore"      keystorePass="123456" />

下一步配置tomcat

 

 執行之前需要把overlays的lib 新增到本地   不然包路徑報紅色

右鍵lib

 客戶端是不需要做任何改動的

host本地 

	127.0.0.1       passport.sso.com
	127.0.0.1       www.casclient1.com
	127.0.0.1       www.hugeo.com

 輸入 http://www.casclient1.com:8082/xxxx  

 都會跳轉至cas登陸頁面

 

 登陸之後會到客戶端     登出需要passport.sso.com:9898/cas/logout