1. 程式人生 > >單點登錄sso核心步驟

單點登錄sso核心步驟

是把 服務 bsp 狀態 檢測 寫入 保持 會話 顯示

單點登錄的核心步驟

1 用戶未登錄時訪問子站一,子站一服務器檢測到用戶沒登錄(沒有本站session,因為沒傳過來session對應cookie),於是通知瀏覽器跳轉到SSO服務站點,並在跳轉的URL參數中帶上當前頁面地址,以便登錄後自動跳轉回本頁。

2 SSO服務站點檢測到用戶沒有登錄,於是顯示登錄界面。

用戶提交登錄請求到服務端,服務端驗證通過,創建和賬號對應的用戶登錄憑據(token)。

然後,服務端通知瀏覽器把該token作為SSO服務站點的cookie存儲起來,並跳轉回子站一,跳回子站一的URL參數中會帶上這個token。

3 瀏覽器在寫SSO服務站點cookie後,跳轉回子站一。

子站一服務端檢測到瀏覽器請求的URL中帶了單點登錄的token,於是把這個token發到SSO服務站點驗證。

SSO服務端站點拿token解密出用戶賬號,把賬號信息中允許子站一訪問的部分返回給子站一。

子站一根據返回的信息生成用戶在本站的會話,把會話對應cookie寫入瀏覽器,從而完成在本站的登入以及會話保持。之後用戶訪問再子站一時,都會帶上這個cookie,從而保持在本站的登錄狀態。

4 用戶再訪問子站二。子站二服務器檢測到用戶沒登錄,於是通知瀏覽器跳轉到SSO服務站點。

5 瀏覽器訪問SSO服務站點時會帶上上述2環節創建的token這個cookie。SSO服務站點根據該token能找到對應用戶,於是通知瀏覽器跳轉回子站二,並在跳轉回去的URL參數中帶上這個token。

6 子站二服務端檢測到瀏覽器請求的URL中帶上了單點登錄的token,於是又會走上述3對應步驟,完成用戶在本站的自動登錄

單點登錄sso核心步驟