錯誤內容
錯誤信息如下:
未認證授權的服務
CAS的服務記錄是空的,沒有定義服務。希望通過CAS進行認證的應用程序必須在服務記錄中明確定義
錯誤原因
CAS 5.x 默認情況下不支持HTTP的客戶端接入,建議客戶端采用HTTPS協議。
不過,
確實無法升級為HTTP的,
那也可以把CAS Server開啟支持HTTP的客戶端接入。
具體開發的方法如下:
·1. 修改http支持的配置
打開文件:cas\WEB-INF\classes\services\HTTPSandIMAPS-10000001.json
1 { 2 "@class" : "org.apereo.cas.services.RegexRegisteredService", 3 "serviceId" : "^(https|imaps)://.*", 4 "name" : "HTTPS and IMAPS", 5 "id" : 10000001, 6 "description" : "This service definition authorizes all application urls that support HTTPS and IMAPS protocols.", 7 "evaluationOrder" : 10000
8 }
第三行改為 (https|http|imaps)
即修改后的 文件為
1 { 2 "@class" : "org.apereo.cas.services.RegexRegisteredService", 3 "serviceId" : "^(https|http|imaps)://.*", 4 "name" : "HTTPS and IMAPS", 5 "id" : 10000001, 6 "description" : "This service definition authorizes all application urls that support HTTPS and IMAPS protocols.", 7 "evaluationOrder" : 10000
8 }
·2. 啟用記載JSON配置文件
打開文件cas\WEB-INF\classes\application.properties
增加如下配置
cas.tgc.secure=false cas.serviceRegistry.initFromJson=true
重新啟動cas就ok了