CAS單點登陸系列:html
CAS 5.1.x 的搭建和使用(一)—— 經過Overlay搭建服務端 CAS 5.1.x 的搭建和使用(二)—— 經過Overlay搭建服務端-其它配置說明 CAS 5.1.x 的搭建和使用(三)—— 官方示例來熟悉客戶端搭建 CAS 5.1.x 的搭建和使用(四)—— 配置使用HTTP協議訪問的服務端
這節比較簡單。git
前面第一篇說道了配置HTTPS訪問須要三件事:github
一、生成keystore,keystore的域(CN,若是不知道CN是哪一個,請參看http://www.cnblogs.com/flying607/p/7598248.html#keystore)要和客戶端的配置的過濾器中的各個服務端地址的域保持一致,且不能是IP。json
二、配置Tomcat使用該keystore來支持https瀏覽器
三、客戶端的jre的證書倉庫(cacerts)要加上該keystore生成的證書cookie
若是咱們的客戶端就是要使用IP來訪問服務端,怎麼辦?app
答案就是配置成HTTP訪問,若是你以前配置了HTTPS,那麼步驟以下:spa
一、服務端的Tomcat改回普通的http Connector訪問,好比用原來的8080端口配置方式。
二、建議從客戶端jre的證書倉庫中刪掉以前爲作HTTPS單點登陸加的那個證書:code
keytool -delete -alias cas -keystore C:/Java/jdk1.8.0_91/jre/lib/security/cacerts
作完這兩步還不夠,你會發現每一個客戶端的訪問雖然都須要登陸服務端,可是彼此的登陸狀態是不互通的。因此還有第三步htm
三、在application.properties里加上這麼一句:
cas.tgc.secure=false
若是登陸狀態仍是不互通,請清空瀏覽器的cookie,重開瀏覽器試試。
參考:https://apereo.github.io/cas/5.1.x/installation/Configuration-Properties.html#ticket-granting-cookie
若是你以前沒配置HTTPS,就是用的HTTP,那麼你只須要上文的第三步,也就是加個配置:cas.tgc.secure=false
2019年7月23日補充:
考慮到一些人沒有看過前邊的文章,這裏補充一下,還有一個地方須要修改,參看 http://www.javashuo.com/article/p-bwsnmnmz-bo.html 第一段內容
——在HTTPSandIMAPS-100xxxxxx.json中配置"serviceId" : "^(https|imaps|http)://.*"