自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

單點(diǎn)登錄最全詳解(圖文全面總結(jié))

開發(fā) 前端
單點(diǎn)登錄(SSO)的核心在于:集中式的認(rèn)證服務(wù)器(如 :CAS Server)管理用戶身份,并通過票據(jù)機(jī)制在不同應(yīng)用之間共享認(rèn)證信息。

單點(diǎn)登錄

單點(diǎn)登錄全程是Single Sign On,簡(jiǎn)稱 ”SSO“,是一種認(rèn)證機(jī)制,通過一次性驗(yàn)證用戶身份,提供對(duì)多個(gè)系統(tǒng)的訪問。

圖片圖片

舉一個(gè)例子,比如:阿里集團(tuán)有多個(gè)網(wǎng)站,比如:淘寶、天貓........等等,如下圖所示:

圖片圖片

單點(diǎn)登錄,就在淘寶、天貓、聚劃算...等的最外面,也就是說用戶登錄任何一個(gè)系統(tǒng),剩余系統(tǒng)都可以登錄。

也就說:只需一次登錄便,可訪問所有這些系統(tǒng),而無需在每個(gè)系統(tǒng)中重復(fù)登錄。

所以,單點(diǎn)登錄(SSO), 極大地簡(jiǎn)化了用戶的認(rèn)證過程,提升了用戶體驗(yàn)。

而且,通過統(tǒng)一的身份認(rèn)證,可以更好地控制、和審計(jì)用戶的訪問行為,減少密碼泄露的風(fēng)險(xiǎn)。

單點(diǎn)登錄實(shí)現(xiàn)原理

從上面知道了單點(diǎn)登錄的價(jià)值,下面如果是你,你應(yīng)該怎么來"實(shí)現(xiàn)單點(diǎn)登錄呢"?

單點(diǎn)登錄實(shí)現(xiàn),如下圖所示:

圖片圖片

單點(diǎn)登錄通常通過,以下步驟來實(shí)現(xiàn):

Step 1: 用戶訪問應(yīng)用A

比如:用戶嘗試訪問系統(tǒng)、或應(yīng)用 A。

比如:用戶試圖訪問受保護(hù)資源,(例如:https://app.mikechen.cc/dashboard),該資源要求用戶進(jìn)行身份驗(yàn)證。

Step 2: 重定向到認(rèn)證服務(wù)器

應(yīng)用 A 檢查用戶是否已登錄,如果沒有登錄,應(yīng)用 A 會(huì)將用戶重定向到, SSO 認(rèn)證服務(wù)器。

比如:CAS客戶端,會(huì)將用戶的瀏覽器重定向到CAS服務(wù)器的登錄URL。

比如:https://cas.mikechen.cc/login?service=https://app.mikechen.cc/dashboard。

如下圖所示:

圖片圖片

然后,用戶認(rèn)證

CAS服務(wù)器接受用戶的登錄請(qǐng)求,驗(yàn)證用戶的身份信息(如:用戶名、和密碼)。

如果驗(yàn)證成功,”SSO 服務(wù)器“,生成一個(gè)用于標(biāo)識(shí)該用戶的令牌(Token)。

然后,分發(fā)令牌

如果,認(rèn)證成功后,SSO 服務(wù)器會(huì)將令牌返回給應(yīng)用 A。

比如:CAS服務(wù)器,會(huì)生成一個(gè)Service Ticket(ST),這是一個(gè)一次性使用的票據(jù),用于CAS客戶端向CAS服務(wù)器驗(yàn)證用戶身份。

應(yīng)用 A 接收到令牌后,創(chuàng)建會(huì)話并允許用戶訪問資源。

最后,用戶在多個(gè)系統(tǒng)間切換

這個(gè)時(shí)候,當(dāng)用戶嘗試訪問系統(tǒng)、或應(yīng)用 B 時(shí),應(yīng)用 B 會(huì)向 SSO 服務(wù)器驗(yàn)證用戶身份。

如果用戶已經(jīng)在 SSO 服務(wù)器登錄,SSO 服務(wù)器會(huì)直接返回有效的令牌,無需再次輸入憑證。

最后,用戶在 SSO 系統(tǒng)內(nèi)的多個(gè)應(yīng)用之間切換時(shí),只需要一次登錄,后續(xù)訪問都會(huì)自動(dòng)通過。

單點(diǎn)登錄實(shí)現(xiàn)挑戰(zhàn)

單點(diǎn)故障

認(rèn)證中心成為關(guān)鍵點(diǎn),如果它出現(xiàn)問題,所有系統(tǒng)的認(rèn)證流程都會(huì)受影響。

比如:在SSO系統(tǒng)中,認(rèn)證中心(如CAS服務(wù)器)是所有用戶認(rèn)證的關(guān)鍵組件。

如果認(rèn)證中心出現(xiàn)故障,所有依賴它的應(yīng)用系統(tǒng)將無法完成用戶認(rèn)證,導(dǎo)致系統(tǒng)的訪問中斷。

比如:可以通過負(fù)載均衡器,將用戶請(qǐng)求分發(fā)到多個(gè)CAS服務(wù)器實(shí)例。

這樣,即使一個(gè)CAS服務(wù)器出現(xiàn)故障,負(fù)載均衡器可以將請(qǐng)求轉(zhuǎn)發(fā)到其他健康的服務(wù)器。

復(fù)雜性

實(shí)現(xiàn)和維護(hù)SSO系統(tǒng)比普通認(rèn)證系統(tǒng)復(fù)雜,涉及的協(xié)議和安全性要求較高。

比如:實(shí)現(xiàn)和維護(hù)SSO系統(tǒng)比普通的認(rèn)證系統(tǒng)復(fù)雜,涉及多個(gè)協(xié)議和安全性要求、

例如:CAS、OAuth2.0、SAML...等,每種協(xié)議有其獨(dú)特的配置要求和實(shí)現(xiàn)細(xì)節(jié),增加了系統(tǒng)的復(fù)雜性。

跨域問題

不同域名之間的SSO需要處理跨域通信問題,比如:通過CORS設(shè)置、或使用OAuth的授權(quán)碼模式。

單點(diǎn)登錄應(yīng)用

單點(diǎn)登錄適用于多種場(chǎng)景,常見的應(yīng)用場(chǎng)景包括:

企業(yè)內(nèi)部系統(tǒng)

企業(yè)通常擁有多個(gè)業(yè)務(wù)系統(tǒng),如:人力資源系統(tǒng)、財(cái)務(wù)系統(tǒng)、郵件系統(tǒng)...等。

通過 SSO,員工可以通過一次登錄訪問所有這些系統(tǒng),提高工作效率。

在線服務(wù)平臺(tái)

互聯(lián)網(wǎng)公司往往提供多個(gè)在線服務(wù),如:郵件、云存儲(chǔ)、社交網(wǎng)絡(luò)...等。

通過 SSO,用戶只需一次登錄即可訪問所有服務(wù),提供無縫體驗(yàn)。

電子商務(wù)系統(tǒng)

比如:上面我提到的,阿里包含:淘寶、天貓...等等系統(tǒng),通過 SSO,用戶可以通過一個(gè)賬號(hào)訪問所有這些服務(wù)。

總之,單點(diǎn)登錄(SSO)是一種解決多系統(tǒng)認(rèn)證問題的有效機(jī)制,通過一次登錄讓用戶無縫訪問多個(gè)系統(tǒng)。

單點(diǎn)登錄(SSO)的核心在于:集中式的認(rèn)證服務(wù)器(如 :CAS Server)管理用戶身份,并通過票據(jù)機(jī)制在不同應(yīng)用之間共享認(rèn)證信息。

責(zé)任編輯:武曉燕 來源: mikechen的互聯(lián)網(wǎng)架構(gòu)
相關(guān)推薦

2024-07-26 10:35:00

2024-09-04 09:43:36

2024-05-31 13:34:57

2024-08-08 13:01:53

2024-08-12 16:09:31

2024-08-13 15:07:20

2024-11-06 09:54:58

SpringJava開發(fā)

2024-07-12 08:42:58

Redis高性能架構(gòu)

2024-09-26 13:33:12

2024-12-31 00:00:01

驅(qū)動(dòng)設(shè)計(jì)應(yīng)用場(chǎng)景業(yè)務(wù)邏輯

2024-08-07 14:56:00

Nginx反向代理配置

2024-11-06 12:29:02

2025-01-15 08:34:00

分布式事務(wù)服務(wù)

2024-11-15 12:04:33

K8S容器化應(yīng)用

2024-09-14 11:36:02

2025-01-26 11:54:39

分布式存儲(chǔ)系統(tǒng)

2024-06-21 09:28:43

2016-01-28 14:41:06

CC++編碼

2016-01-15 09:38:49

2024-08-12 08:12:38

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)