單點登入一

2021-08-29 18:23:28 字數 1513 閱讀 5731

單點登入是什麼

單點登入(single sign on),簡稱為 sso,是目前比較流行的企業業務整合的解決方案之一。sso的定義是在多個應用系統中,使用者只需要登入一次就可以訪問所有相互信任的應用系統,即使用者只需要記住一組使用者名稱和密碼就可以登入所有有許可權的系統。

如下為乙個單點登入的簡易**: 當使用者第一次訪問應用系統1時,需要進行使用者登入,認證中心通過了使用者的登入資訊後會返回使用者憑證ticket與使用者資訊,當使用者訪問應用系統2或者應用系統3的時候會攜帶使用者憑證ticket,認證中心會驗證ticket的有效性,如果驗證通過則返回當前登入的使用者資訊。

單點登入流轉圖

存在兩個系統oa與pro系統,瀏覽器第一次訪問oa系統的時候需要進行使用者登入,oa系統登入成功後,瀏覽器可以不用登入直接訪問pro系統。

單點登入會話如何統一管理?

單點登入會話通過cookie的方式統一管理,因為cookie是客戶端技術,不同系統之間在同乙個瀏覽器下面可以共享cookie,在cookie中存放使用者登入憑證,服務端獲取cookie中使用者登入憑證後,從而在快取中查詢登入使用者資訊。

為什麼不直接在cookie中存放登入使用者資訊,從而減少在服務端使用快取伺服器來存放登入使用者資訊?

1:cookie的資料存放在客戶的瀏覽器上,可以分析存放本地的cookie從而獲取使用者登入資訊,所以cookie不是很安全。

2:cookie儲存的資料不能超過4k。

使用者未登入的情況如何跳轉到認證中心進行使用者登入?

在***中會判斷cookie中是否存放使用者憑證,使用者未登入則cookie中使用者登入憑證為空,所以可以通過重定向的方式跳轉到認證中心的登入首頁。

}} //重定向到認證中心的登入首頁

}springboot+redis單點登入**實現sso-server為認證中心

sso-oa為oa系統

sso-pro為pro系統

專案在啟動之前需要安裝並啟動redis

單點登入一

我們的專案中使用的版本是3.5.1的 因為已經發布生產了,就沒公升級 由於4.0已經是乙個release 版本了,所以決定這系列文章採用4.0的版本作為記錄 安裝配置jdk 安裝tomcat8,此處不做詳解。部署cas服務端 2.修改cas web inf spring configuration ...

CAS單點登入 簡介(一)

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

redis總結 (一)單點登入

redis單點登入 最近用redis springboot做乙個sso單點登入系統,總結一下。為滿足多個子系統的統一登入認證管理。使用者sso模組登入,先驗證你的使用者名稱和密碼是否正確,如果正確。會產生乙個唯一票據,我們這裡叫他useraccesstoken,把這個useraccesstoken放...