我們的系統(以下簡稱A),其各個子系統之間使用CAS(簡稱CAS-A)來共享身份。現在A要以一個子系統的角色加入到一個更大的系統(簡稱B)之中,而B也使用CAS(簡稱CAS-B)。能否實現不修改A中的各個子系統,而是讓CAS-A級聯到CAS-B,即:A中的各個子系統仍然使用CAS-ACAS-A使用CAS-B來做身份驗證
1 回答

瀟湘沐
TA貢獻1816條經驗 獲得超6個贊
1. 既然都是CAS,既然認證源要全部使用B的,可以考慮直接將CAS-A的域名切到CAS-B上,這應該是最簡單的辦法
2. 如果確實希望有兩臺并行的CAS Server,那么有以下兩點需要完成:
1) 用戶名密碼統一
由于CAS本身不對外發布認證源內容(這樣也非常不安全),所以不能直接將CAS-A的認證源指向CAS-B前端服務,但可以指向其后端的認證源。例如CAS-B用的某一個LDAP做認證,CAS-A就也配置成指向那個LDAP,這樣用戶名密碼就統一了。
2) 登錄狀態一致
如果你希望兩個CAS上登錄的人可以保持登錄狀態一致(即在B登錄過的人訪問A的Service時自動登陸,反之亦然),那么除了做到第二點外還需要將CAS-A的Ticket Registry切到與CAS-B一模一樣,以保證TGT和ST的共享。如果希望各自登錄狀態保持獨立,只是用戶名密碼一致,CAS-A就必須繼續使用一個自有的Ticket Registry。
- 1 回答
- 0 關注
- 246 瀏覽
添加回答
舉報
0/150
提交
取消