1. 程式人生 > >CAS 5.x搭建常見問題系列(1).未認證的授權服務

CAS 5.x搭建常見問題系列(1).未認證的授權服務

AS web-inf 必須 問題 ini prot 定義 技術分享 web

錯誤內容


錯誤信息如下:

未認證授權的服務
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了

CAS 5.x搭建常見問題系列(1).未認證的授權服務