更新時間:2022-04-02 09:31:04 來源:動力節(jié)點 瀏覽2810次
單點登錄 (SSO) 是一種身份驗證方法,它使用戶能夠使用一組憑據(jù)安全地對多個應(yīng)用程序和網(wǎng)站進行身份驗證。
SSO 的工作基于應(yīng)用程序(稱為服務(wù)提供者)和身份提供者(如 OneLogin)之間建立的信任關(guān)系。這種信任關(guān)系通常基于身份提供者和服務(wù)提供者之間交換的證書。此證書可用于簽署從身份提供者發(fā)送到服務(wù)提供者的身份信息,以便服務(wù)提供者知道它來自受信任的來源。在 SSO 中,此身份數(shù)據(jù)采用令牌的形式,其中包含有關(guān)用戶的識別信息位,例如用戶的電子郵件地址或用戶名。
登錄流程通常如下所示:
1.用戶瀏覽到他們想要訪問的應(yīng)用程序或網(wǎng)站,也就是服務(wù)提供商。
2.作為對用戶進行身份驗證的請求的一部分,服務(wù)提供者向 SSO 系統(tǒng)(即身份提供者)發(fā)送包含有關(guān)用戶的一些信息(例如他們的電子郵件地址)的令牌。
3.身份提供者首先檢查用戶是否已經(jīng)通過身份驗證,在這種情況下,它將授予用戶訪問服務(wù)提供者應(yīng)用程序的權(quán)限并跳到第 5 步。
4.如果用戶尚未登錄,則會通過提供身份提供者所需的憑據(jù)來提示他們這樣做。這可能只是用戶名和密碼,也可能包括其他形式的身份驗證,例如一次性密碼 (OTP)。
5.身份提供者驗證提供的憑據(jù)后,它將向服務(wù)提供者發(fā)送一個令牌,確認身份驗證成功。
6.該令牌通過用戶的瀏覽器傳遞給服務(wù)提供者。
7.服務(wù)提供者收到的令牌根據(jù)初始配置期間服務(wù)提供者和身份提供者之間建立的信任關(guān)系進行驗證。
8.用戶被授予訪問服務(wù)提供者的權(quán)限。
當用戶嘗試訪問不同的網(wǎng)站時,新網(wǎng)站必須具有使用 SSO 解決方案配置的類似信任關(guān)系,并且身份驗證流程將遵循相同的步驟。
SSO 令牌是在 SSO 過程中從一個系統(tǒng)傳遞到另一個系統(tǒng)的數(shù)據(jù)或信息的集合。數(shù)據(jù)可以只是用戶的電子郵件地址和有關(guān)哪個系統(tǒng)正在發(fā)送令牌的信息。令牌必須為令牌接收者進行數(shù)字簽名,以驗證令牌來自受信任的來源。用于此數(shù)字簽名的證書在初始配置過程中進行交換。
這個問題的答案是“視情況而定”。
SSO 可以提高安全性的原因有很多。單點登錄解決方案可以簡化用戶和管理員的用戶名和密碼管理。用戶不再需要跟蹤不同的憑據(jù)集,只需記住一個更復雜的密碼。SSO 通常使用戶能夠更快地訪問他們的應(yīng)用程序。
SSO 還可以減少幫助臺花費在幫助用戶丟失密碼上的時間。管理員可以集中控制密碼復雜性和多因素身份驗證 (MFA)等要求。當用戶離開組織時,管理員還可以更快地全面放棄登錄權(quán)限。
單點登錄確實有一些缺點。例如,您可能希望將應(yīng)用程序鎖定更多。出于這個原因,選擇一個 SSO 解決方案非常重要,該解決方案使您能夠在用戶登錄特定應(yīng)用程序之前要求額外的身份驗證因素,或者阻止用戶訪問某些應(yīng)用程序,除非他們連接到安全的網(wǎng)絡(luò)。
SSO 解決方案如何實施的具體細節(jié)將根據(jù)您使用的確切 SSO 解決方案而有所不同。但無論具體步驟是什么,您都需要確保為您的實施設(shè)定了明確的目標和目標。確保您回答以下問題:
您為哪些不同類型的用戶提供服務(wù),他們的不同要求是什么?
您在尋找 On Prem 解決方案還是基于云的解決方案?
該解決方案能否與您的公司和您的需求一起發(fā)展?
您正在尋找哪些功能來確保只有受信任的用戶才能登錄?MFA、自適應(yīng)身份驗證、設(shè)備信任、IP 地址白名單等?
您需要與哪些系統(tǒng)集成?
您需要 API 訪問權(quán)限嗎?
了解單點登錄和密碼保管或密碼管理器之間的區(qū)別很重要,它們有時被稱為 SSO,這可能意味著相同的登錄而不是單點登錄。使用密碼保管,您可能擁有相同的用戶名和密碼,但每次移動到不同的應(yīng)用程序或網(wǎng)站時都需要輸入它們。密碼保管系統(tǒng)只是為所有不同的應(yīng)用程序存儲您的憑據(jù),并在必要時插入它們。應(yīng)用程序和密碼保管系統(tǒng)之間沒有建立信任關(guān)系。
使用 SSO,即單點登錄,通過 SSO 解決方案登錄后,您可以訪問所有公司批準的應(yīng)用程序和網(wǎng)站,而無需再次登錄。這包括云應(yīng)用程序以及本地應(yīng)用程序,通常可通過 SSO 門戶(也稱為登錄門戶)獲得。
在研究可用的 SSO 選項時,您可能會看到它們有時被稱為 SSO 軟件 vs SSO 解決方案 vs SSO 提供商。在許多情況下,差異可能僅僅在于公司對自己進行分類的方式。一個軟件建議安裝在本地的東西。它通常旨在執(zhí)行一組特定的任務(wù),僅此而已。一種解決方案表明可以擴展或定制核心產(chǎn)品的功能。提供者是指生產(chǎn)或托管解決方案的公司的一種方式。例如,OneLogin 被稱為 SSO 解決方案提供商。
當我們談?wù)搯吸c登錄 (SSO) 時,會使用很多術(shù)語。
聯(lián)合身份管理 (FIM)
OAuth(現(xiàn)在特別是 OAuth 2.0)
OpenID 連接 (OIDC)
安全訪問標記語言 (SAML)
相同登錄 (SSO)
SSO 實際上是稱為聯(lián)合身份管理的更大概念的一部分,因此有時 SSO 被稱為聯(lián)合 SSO。FIM 只是指在兩個或多個域或身份管理系統(tǒng)之間創(chuàng)建的信任關(guān)系。單點登錄通常是 FIM 體系結(jié)構(gòu)中可用的功能。
OAuth 2.0 是一個特定的框架,也可以被視為 FIM 架構(gòu)的一部分。OAuth 專注于信任關(guān)系,允許跨域共享用戶身份信息。
OpenID Connect (OIDC)是建立在 OAuth 2.0 之上的身份驗證層,用于提供單點登錄功能。
通常也稱為 SSO 的相同登錄實際上與單點登錄不同,因為它不涉及進行身份驗證的實體之間的任何信任關(guān)系。它更依賴于在系統(tǒng)之間復制的憑據(jù),并在必要時簡單地傳遞這些憑據(jù)。它不如任何單點登錄解決方案安全。
當我們討論單點登錄時,通常還會出現(xiàn)一些特定的系統(tǒng):Active Directory、Active Directory 聯(lián)合服務(wù) (ADFS) 和輕量級目錄訪問協(xié)議 (LDAP)。
Active Directory,現(xiàn)在專門稱為 Active Directory 目錄服務(wù) (ADDS),是 Microsoft 的集中式目錄服務(wù)。用戶和資源被添加到目錄服務(wù)以進行集中管理,并且 ADDS 與 NTLM 和 Kerberos 等身份驗證協(xié)議一起使用。因此,屬于 ADDS 的用戶可以從他們的機器進行身份驗證,并可以訪問與 ADDS 集成的其他系統(tǒng)。這是單點登錄的一種形式。
Active Directory 聯(lián)合身份驗證服務(wù) (ADFS) 是一種聯(lián)合身份管理系統(tǒng),還提供單點登錄功能。它同時支持 SAML 和 OIDC。ADFS 主要用于在 ADDS 與其他系統(tǒng)(如 Azure AD 或其他 ADDS 林)之間建立信任。
輕量級目錄訪問協(xié)議 (LDAP) 只是一個行業(yè)標準,它定義了一種組織和查詢目錄信息的方式。LDAP 允許您集中管理用戶和系統(tǒng)等資源。然而,LDAP 并沒有定義您如何登錄這些系統(tǒng),這意味著它沒有定義在身份驗證中使用的實際協(xié)議。但是,它通常用作身份驗證過程和訪問控制過程的一部分。例如,在用戶可以訪問特定資源之前,可以使用 LDAP 查詢該用戶及其所屬的任何組,以查看該用戶是否有權(quán)訪問該資源。像 OpenLDAP 這樣的 LDAP 解決方案確實通過支持簡單身份驗證和安全層 (SASL) 等身份驗證協(xié)議來提供身份驗證。
以上就是關(guān)于“SSO單點登錄原理的詳細介紹”,大家如果想了解更多相關(guān)知識,可以關(guān)注一下動力節(jié)點的Java在線學習,里面內(nèi)容由淺到深,通俗易懂,很適合沒有基礎(chǔ)的小伙伴學習,希望對大家能夠有所幫助哦。