當前位置:首頁>職場>sso 單點登錄原理(說說什么是單點登錄)
發布時間:2024-01-24閱讀(17)
單點登錄(SingleSignOn,SSO),就是通過用戶的一次性鑒別登錄。當用戶在身份認證服務器上登錄一次以后,即可獲得訪問單點登錄系統中其他關聯系統和應用軟件的權限,同時這種實現是不需要管理員對用戶的登錄狀態或其他信息進行修改的,這意味著在多個應用系統中,用戶只需一次登錄就可以訪問所有相互信任的應用系統。這種方式減少了由登錄產生的時間消耗,輔助了用戶管理,是目前比較流行的。
A.傳統登錄流程圖:

SSO是目前比較流行的服務于企業業務整合的解決方案之一, SSO 使得在多個應用系統中,用戶只需要 登錄一次 就可以訪問所有相互信任的應用系統。

CAS 是 Yale 大學發起的一個企業級的、開源的項目,旨在為 Web 應用系統提供一種可靠的單點登錄解決方法(SSO的一種框架)
CAS 包括兩部分:CAS Server 和 CAS Client
階段匯總集合:一年內容,200期Java面試題階段匯總
單點登錄適合什么場景拿新浪舉個單點登錄的例子

新浪微博與新浪博客是相互信任的應用系統:
沒有設置獨立的 SSO 服務器,因為業務后臺服務器本身就足以承擔 SSO 的職能。
2.同父域SSO和同域SSO不同在于,服務器在返回 cookie 的時候,要把cookie 的 domain 設置為其父域。
3.跨域SSO(CAS)設置專門SSO服務器,當兩個產品不同域時,cookie無法共享,從而我們就需要搭建SSO服務器。
CAS的幾個重要知識點接口:/login:登錄接口,用于登錄到中心服務器。/logout:登出接口,用于從中心服務器登出。
票據1. TGT (Ticket Grangting Ticket) :
TGT 是 CAS 為用戶簽發的登錄票據,擁有了 TGT,用戶就可以證明自己在 CAS 成功登錄過。TGT 封裝了 Cookie 值以及此 Cookie 值對應的用戶信息。
2.TGC(Ticket Granting Cookie) :
CAS Server 生成TGT放入自己的 Session 中,而 TGC 就是這個 Session 的唯一標識(SessionId),以 Cookie 形式放到瀏覽器端。
3.ST(service Ticket) :
ST 是 CAS 為用戶簽發的訪問某一 service 的票據。用戶訪問 service 時,service 發現用戶沒有 ST,則要求用戶去 CAS 獲取 ST。


作者:Java面試題精選
鏈接:https://mp.weixin.qq.com/s/Fcd7626X18_hwRRL_T88Og
Copyright ? 2024 有趣生活 All Rights Reserve吉ICP備19000289號-5 TXT地圖HTML地圖XML地圖