SSO單點登入

2021-07-05 22:08:08 字數 911 閱讀 4905

單點登入sso(single sign on)就是在多個系統共存的環境下,使用者在一處登入 ,就不用在其他系統中登入,也就是使用者的一次登入就可以得到其他所有系統的信任。

要點:

儲存信任

驗證信任

最簡單實現sso的方法就是cookie,實現流程:

然而cookie有如下缺點:

1、cookie不安全

2、不能跨域免登

對於第乙個問題一般採用cookie加密,第二個問題是硬傷,其實是用cookie的原理是把登入資訊儲存在客戶端,要實現這種用flash也能實現,flash的shared object api就提供了儲存能力。

以上方案就是把信任關係儲存在單獨的sso系統中,簡單說來就是從客戶端移到了服務端,但其中有幾個問題需要重點解決:

1、如何高效儲存大量臨時性的信任資料

2、如何防止資訊傳遞過程中被篡改

3、如何讓sso系統信任登入系統和免登系統

對於第乙個問題,一般採用類似於memcached的分布式快取的方案,既能提供可擴充套件資料量的機制,也能提供高效訪問。對於第二個問題,一般採取數字簽名的方法,要麼通過數字證書簽名,要麼通過像md5的方式,這就需要sso系統返回免登url的時候對需驗證的引數進行md5加密,並帶上token一起返回,最後需免登的系統進行驗證信任關係的時候,需把這個token傳給sso系統,sso系統通過對token的驗證就可以辨別資訊是否被改過。對於最後乙個問題,可以通過白名單來處理,說簡單點只有在白名單上的系統才能請求生產信任關係,同理只有在白名單上的系統才能被免登入。

sso單點登入

一 什麼是單點登入sso single sign on sso是一種統一認證和授權機制,指訪問同一伺服器不同應用中的受保護資源的同一使用者,只需要登入一次,即通過乙個應用中的安全驗證後,再訪問其他應用中的受保護資源時,不再需要重新登入驗證。二 單點登入解決了什麼問題 解決了使用者只需要登入一次就可以...

sso單點登入

1 sso single sign on 單點登入 解決了使用者只需要登入一次就可以訪問所有相互信任的應用系統,而不用重複登入,對使用者資訊進行統一管理。2 session共享 分布式中,為了提公升集群效能,我把使用者的session資訊儲存到redis中,key的格式例如 user session...

SSO單點登入

今天,當我們提起 sso的時候,我們通常是指 web sso 它的主要特點是,sso應用之間走 web協議 如 並且sso 都只有乙個登入入口。簡單的sso 的體系中,會有下面三種角色 1,user 多個 2,web 應用 多個 3,sso 認證中心 1個 雖然sso 實現模式千奇百怪,但萬變不離其...