CAS單點登入開源框架解讀(一) 模式說明

2021-10-10 04:02:07 字數 2259 閱讀 1995

cas單點登入下存在兩種登入認證模式,第一種我姑且叫它為普通模式吧,因為這種型別是我們使用的最多的場景;另外一種是**模式,這種模式不常見,但是cas單點登入是支援的,也在這裡一併說明。採用時序圖來進行相關的說明,展示兩種模式的不同點。

在說展示具體的時序圖之前,先把幾個概念表達一下。

st(service ticket )。st是cas為使用者簽發的訪問某一service的票據。使用者訪問service時,service發現使用者沒有st,則要求使用者去cas獲取st。使用者向cas發出獲取st的請求,cas發現使用者有tgt,則簽發乙個st,返回給使用者。使用者拿著st去訪問service,service拿st去cas驗證,驗證通過後,允許使用者訪問資源。

tgt(ticket grangting ticket )。tgt是cas為使用者簽發的登入票據,擁有了tgt,使用者就可以證明自己在cas成功登入過。tgt封裝了cookie值以及此cookie值對應的使用者資訊。當http請求到來時,cas以此cookie值為key查詢快取中有無tgt ,如果有的話,則相信使用者已登入過。

pgt(proxy ticketgranting ticket)。proxy service認證成功後,cas會生成pgt,並將值回傳給proxy service 。proxy service拿到pgt後,就可以為target service做**,為其申請pt。

pgtiou(proxy ticketgranting ticket iou)。pgtiou是cas協議中定義的一種附加票據,它增強了傳輸、獲取pgt的安全性。

pt(proxy ticket)。pt是使用者訪問target serivce的票據。使用者經由proxy service去cas獲取到pt後,再訪問target serivce,target serivce去cas驗證pt成功後,才允許使用者訪問。

1、cas單點登入普通模式時序圖

2、cas單點登入**模式時序圖

基於個人總結,可能有不足之處,詳細的可以參考官方**上對應的單點登入時序圖。具體位址為:[cas protocol登入時序圖](

cas單點登入下存在兩種登入認證模式,第一種我姑且叫它為普通模式吧,因為這種型別是我們使用的最多的場景;另外一種是**模式,這種模式不常見,但是cas單點登入是支援的,也在這裡一併說明。採用時序圖來進行相關的說明,展示兩種模式的不同點。

在說展示具體的時序圖之前,先把幾個概念表達一下。

st(service ticket )。st是cas為使用者簽發的訪問某一service的票據。使用者訪問service時,service發現使用者沒有st,則要求使用者去cas獲取st。使用者向cas發出獲取st的請求,cas發現使用者有tgt,則簽發乙個st,返回給使用者。使用者拿著st去訪問service,service拿st去cas驗證,驗證通過後,允許使用者訪問資源。

tgt(ticket grangting ticket )。tgt是cas為使用者簽發的登入票據,擁有了tgt,使用者就可以證明自己在cas成功登入過。tgt封裝了cookie值以及此cookie值對應的使用者資訊。當http請求到來時,cas以此cookie值為key查詢快取中有無tgt ,如果有的話,則相信使用者已登入過。

pgt(proxy ticketgranting ticket)。proxy service認證成功後,cas會生成pgt,並將值回傳給proxy service 。proxy service拿到pgt後,就可以為target service做**,為其申請pt。

pgtiou(proxy ticketgranting ticket iou)。pgtiou是cas協議中定義的一種附加票據,它增強了傳輸、獲取pgt的安全性。

pt(proxy ticket)。pt是使用者訪問target serivce的票據。使用者經由proxy service去cas獲取到pt後,再訪問target serivce,target serivce去cas驗證pt成功後,才允許使用者訪問。

1、cas單點登入普通模式時序圖

2、cas單點登入**模式時序圖

基於個人總結,可能有不足之處,詳細的可以參考官方**上對應的單點登入時序圖。具體位址為:[cas protocol登入時序圖](

CAS單點登入開源框架解讀(一) 模式說明

cas單點登入下存在兩種登入認證模式,第一種我姑且叫它為普通模式吧,因為這種型別是我們使用的最多的場景 另外一種是 模式,這種模式不常見,但是cas單點登入是支援的,也在這裡一併說明。採用時序圖來進行相關的說明,展示兩種模式的不同點。在說展示具體的時序圖之前,先把幾個概念表達一下。st servic...

go gin框架使用cas單點登入

最近在用gin框架,想路由乙個路徑到cas單點登入發現有個小坑,小小的記錄一下。func 某方法 官方的 如果不用gin框架的話沒有問題,因為是單獨監聽8080埠,然後捕捉到請求就執行handlefunc方法,這裡cas是使用了 gopkg.in cas.v2 這個包,封裝了自己的handle和se...

CAS單點登入 簡介(一)

我們這次實戰用的版本為cas 5.1.3 cas是乙個單點登入框架,開始是由耶魯大學的乙個組織開發,後來歸到apereo去管。同時cas也是開源,遵循著apache 2.0協議,目前是在github上管理。單點登入 single sign on,簡稱sso,sso使得在多個應用系統中,使用者只需要登...