摘要:系統(tǒng)從認(rèn)證中心得到校驗(yàn)成功的結(jié)果后,則可以認(rèn)為用戶已登錄。認(rèn)證中心發(fā)現(xiàn)用戶未登錄沒(méi)有,將用戶引導(dǎo)至登錄界面。用戶提交登錄信息到認(rèn)證中心。
簡(jiǎn)單登錄 登錄流程
首先讓我們分析一下一個(gè)簡(jiǎn)單的登錄是怎么實(shí)現(xiàn)的。
一個(gè)簡(jiǎn)單的登錄流程
用戶輸入url訪問(wèn)站點(diǎn),接受用戶請(qǐng)求后判斷用戶是否已經(jīng)登錄,若未登錄則跳轉(zhuǎn)到登錄頁(yè)面
用戶訪問(wèn)登錄頁(yè)面,填寫并提交登錄表單
web應(yīng)用對(duì)登錄表單進(jìn)行驗(yàn)證,若驗(yàn)證失敗,則返回錯(cuò)誤信息給用戶;若驗(yàn)證成功,則將用戶相關(guān)的信息(通常為用戶id等信息)寫入到當(dāng)前的session中,將session id以cookie的形式發(fā)送給用戶(同時(shí)可以將session中的身份信息以cookie的形式發(fā)送給用戶,這個(gè)是可選的,使用該cookie可以實(shí)現(xiàn)自動(dòng)登錄,如下面的“登錄分析圖”中所示)。
用戶登錄后,后續(xù)的訪問(wèn)中會(huì)將其獲得的包含session id的cookie傳遞給web應(yīng)用,若web應(yīng)用能根據(jù)session id從session中獲取到相應(yīng)的身份信息(甚至進(jìn)一步從數(shù)據(jù)庫(kù)查找到相關(guān)的用戶數(shù)據(jù)),則代表用戶成功登錄。
退出登錄
退出登錄主要包括以下兩個(gè)流程
銷毀session信息 (在服務(wù)端銷毀)
銷毀客戶端的相關(guān)cookie(包含session id的cookie)
自動(dòng)登錄通常來(lái)說(shuō),服務(wù)器端的session會(huì)有一定的過(guò)期時(shí)間,同樣的,客戶端中包含session id的cookie也有過(guò)期時(shí)間。若用戶登錄后,長(zhǎng)時(shí)間沒(méi)有發(fā)出訪問(wèn)請(qǐng)求,則等到用戶再次訪問(wèn)時(shí),可能服務(wù)端的session或客戶端的cookie已經(jīng)失效,導(dǎo)致服務(wù)器判斷用戶為“未登錄”,而實(shí)際上用戶并沒(méi)有退出登錄過(guò)??梢酝ㄟ^(guò)實(shí)現(xiàn)“自動(dòng)登錄”來(lái)解決這個(gè)問(wèn)題,即在session失效的時(shí)候,可以重新自動(dòng)登錄。
自動(dòng)登錄的基本思路:
在用戶登錄后,除了生成session id對(duì)應(yīng)的cookie,還會(huì)生成一個(gè)包含用戶身份信息的cookie(假設(shè)這個(gè)cookie的key為identity)。identity cookie包含的信息可以有:用戶id,用戶authKey(這個(gè)比較重要,authKey的功能有點(diǎn)類似于password),cookie持續(xù)時(shí)間等。為了達(dá)到自動(dòng)登錄的目的,通常會(huì)將該cookie的過(guò)期時(shí)間設(shè)置的特別長(zhǎng)(可以是一個(gè)星期甚至一個(gè)月)。
在用戶session失效后,用戶再次訪問(wèn)web應(yīng)用,會(huì)帶上identity cookie(因?yàn)樵揷ookie的有效期較長(zhǎng))。web應(yīng)用首先判斷用戶為“未登錄”狀態(tài)(因?yàn)閟ession失效了)。
web應(yīng)用嘗試通過(guò)identity cookie為用戶自動(dòng)登錄。應(yīng)用從identity cookie中獲取“用戶id”和“用戶authKey”,通過(guò)與數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行對(duì)比,校驗(yàn)“用戶authKey”的有效性。
用戶authKey認(rèn)證有效后,web應(yīng)用為用戶生成新的session,并將新的session id放入cookie發(fā)送給用戶。(即用戶登錄成功的標(biāo)志為獲取到包含session id的cookie)
例子分析(yii1.1與yii2)yii1.1原生登錄分析
原文件和圖片下載百度云盤鏈接
yii2原生登錄分析
原文件和圖片下載百度云盤鏈接
小結(jié)cookie,session是實(shí)現(xiàn)登錄的核心
對(duì)應(yīng)關(guān)系鏈: 客戶端的cookie(包含了session id) ---> session id對(duì)應(yīng)服務(wù)器端的session(包含了用戶的身份信息,如id) ---> 根據(jù)session中的信息,可以進(jìn)一步從數(shù)據(jù)庫(kù)中獲取用戶的詳細(xì)信息(甚至是其相應(yīng)的權(quán)限)
單點(diǎn)登錄(Single sign-on,縮寫為 SSO),又譯為單一簽入,一種對(duì)于許多相互關(guān)連,但是又是各自獨(dú)立的軟件系統(tǒng),提供訪問(wèn)控制的屬性。在擁有這項(xiàng)屬性的環(huán)境中,當(dāng)用戶在某個(gè)系統(tǒng)登錄時(shí),就可以獲取所有系統(tǒng)的訪問(wèn)權(quán)限,不用對(duì)每個(gè)單一系統(tǒng)都逐一登錄。這項(xiàng)功能通常是以輕型目錄訪問(wèn)協(xié)議(LDAP)來(lái)實(shí)現(xiàn),在服務(wù)器上會(huì)將用戶信息存儲(chǔ)到LDAP數(shù)據(jù)庫(kù)中。相同的,單一注銷(single sign-off)就是指,只需要單一的注銷動(dòng)作,就可以結(jié)束對(duì)于多個(gè)系統(tǒng)的訪問(wèn)權(quán)限。(即,在多個(gè)應(yīng)用系統(tǒng)中,用戶只需要登錄一次就可以訪問(wèn)所有相互信任的應(yīng)用系統(tǒng);用戶只需要退出登錄一次就可以退出所有的應(yīng)用系統(tǒng))
單點(diǎn)登錄的優(yōu)點(diǎn)降低訪問(wèn)第三方網(wǎng)站風(fēng)險(xiǎn)(用戶密碼不存儲(chǔ)或外部管理)。
用戶不需要在不同的站點(diǎn)使用不同的用戶名和密碼,減少“密碼疲勞”(password fatigue )。
減少在使用不同站點(diǎn)時(shí)花費(fèi)時(shí)間來(lái)重新輸入密碼進(jìn)行身份驗(yàn)證。
降低IT成本。
web單點(diǎn)登錄的基本思路當(dāng)用戶第一次訪問(wèn)應(yīng)用系統(tǒng)1的時(shí)候,因?yàn)檫€沒(méi)有登錄,會(huì)被引導(dǎo)到認(rèn)證系統(tǒng)中進(jìn)行登錄(1)
根據(jù)用戶提供的登錄信息, 認(rèn)證系統(tǒng)進(jìn)行身份校驗(yàn),如果通過(guò)效校驗(yàn),返回給用戶一個(gè)認(rèn)證的憑據(jù)ticket(2)
用戶重新訪問(wèn)應(yīng)用系統(tǒng)1,此時(shí)會(huì)帶上ticket。應(yīng)用系統(tǒng)1接受到請(qǐng)求后會(huì)把ticket發(fā)送到認(rèn)證系統(tǒng)進(jìn)行校驗(yàn),檢查ticket的合法性;若ticket合法性驗(yàn)證通過(guò)(代表用戶已經(jīng)登錄),則用戶可以訪問(wèn)應(yīng)用系統(tǒng)1
用戶再訪問(wèn)別的應(yīng)用的時(shí)候(3,5)也會(huì)將這個(gè)ticket 帶上,作為自己認(rèn)證的憑據(jù),應(yīng)用系統(tǒng)接受到請(qǐng)求之后會(huì)把ticket送到認(rèn)證系統(tǒng)進(jìn)行效驗(yàn),檢查ticket的合法性(4,6)。如果通過(guò)效驗(yàn),用戶就可以在不用再次登錄的情況下訪問(wèn)應(yīng)用系統(tǒng)2和應(yīng)用系統(tǒng)3了。
總結(jié):ticket是整個(gè)系統(tǒng)的核心,ticket會(huì)在用戶,應(yīng)用系統(tǒng),認(rèn)證系統(tǒng)的交互中傳輸,最終達(dá)到實(shí)現(xiàn)單點(diǎn)登錄的目的。ticket是所有系統(tǒng)對(duì)用戶的統(tǒng)一的認(rèn)證標(biāo)志。
單點(diǎn)登錄會(huì)遇到的問(wèn)題Q1:ticket是什么?由什么組成?
正如前面所說(shuō),ticket是所有系統(tǒng)對(duì)用戶的統(tǒng)一的認(rèn)證標(biāo)志。在具體的實(shí)現(xiàn)中,我們可以用cookie來(lái)實(shí)現(xiàn)ticket的功能。最簡(jiǎn)單的,一個(gè)包含session id的cookie就可以看成是一個(gè)ticket。在后續(xù)對(duì)具體實(shí)現(xiàn)的分析中,我們會(huì)更深入地理解ticket。出于安全需要,通常我們會(huì)對(duì)ticket進(jìn)行加密。要實(shí)現(xiàn)SSO的功能,讓用戶只登錄一次,就必須讓應(yīng)用系統(tǒng)能夠識(shí)別已經(jīng)登錄過(guò)的用戶。應(yīng)用系統(tǒng)應(yīng)該能對(duì)ticket進(jìn)行識(shí)別和提取,通過(guò)與認(rèn)證系統(tǒng)的通訊,能自動(dòng)判斷當(dāng)前用戶是否登錄過(guò),從而完成單點(diǎn)登錄的功能。
Q2:單點(diǎn)登錄在技術(shù)實(shí)現(xiàn)上有哪些分類?
在技術(shù)實(shí)現(xiàn)上,單點(diǎn)登錄可以分為跨子域單點(diǎn)登錄和完全跨域單點(diǎn)登錄
Q3:什么是跨子域單點(diǎn)登錄?其實(shí)現(xiàn)的具體思路是什么?
跨子域單點(diǎn)登錄即在具有相同根域名的站點(diǎn)之間實(shí)現(xiàn)單點(diǎn)登錄。例如,有以下站點(diǎn)a.example.com, b.example.com, p.example.com(認(rèn)證中心),它們都有一個(gè)共同的根域名“example.com”。在單點(diǎn)登錄寫cookie時(shí),把cookie的域設(shè)為它們共同的父域(即“example.com”),這樣在不同的子域名下都可以使用同一個(gè)cookie(即ticket);與此同時(shí),可以讓多個(gè)系統(tǒng)共享session信息。
Q4:什么是完全跨域單點(diǎn)登錄?其實(shí)現(xiàn)的具體思路是什么?
完全跨域單點(diǎn)登錄即具有不同根域名的站點(diǎn)之間實(shí)現(xiàn)單點(diǎn)登錄。實(shí)現(xiàn)思路:每個(gè)站點(diǎn)需要有自己的ticket(A-tikcet,B-ticket,P-ticket);當(dāng)訪問(wèn)應(yīng)用系統(tǒng)(A,B)時(shí),若沒(méi)有相應(yīng)的ticket,則自動(dòng)重定向到認(rèn)證系統(tǒng)(P),在認(rèn)證系統(tǒng)認(rèn)證獲得P-ticket后重定向到應(yīng)用系統(tǒng)(A或B),用P-tikcet換取相應(yīng)的A-ticket或B-ticket;注銷的時(shí)候要注銷所有的ticket(P-ticket,A-ticket,B-ticket)
Q5:Q3中共享cookie的方式存在什么局限?
首先,應(yīng)用群域名得統(tǒng)一;其次,應(yīng)用群各系統(tǒng)使用的技術(shù)(至少是web服務(wù)器)要相同,不然cookie的key值(tomcat為JSESSIONID,php為PHPSESSID)不同,無(wú)法維持會(huì)話,共享cookie的方式是無(wú)法實(shí)現(xiàn)跨語(yǔ)言技術(shù)平臺(tái)登錄的,比如java、php、.net系統(tǒng)之間;第三,cookie本身不安全。
跨子域單點(diǎn)登錄的實(shí)現(xiàn)相對(duì)比較簡(jiǎn)單,可以基于cookie來(lái)實(shí)現(xiàn),基本思想如下:
前提: 應(yīng)用群中各個(gè)站點(diǎn)的域名需要統(tǒng)一,即具有相同的根域名;應(yīng)用群使用的技術(shù)要相同,這樣才能夠維持回話(例如tomcat下cookie的key值為JSESSIONID,而PHP技術(shù)棧下則為PHPSESSID)
在前面所述的“web單點(diǎn)登錄的基本思路”的基礎(chǔ)上,將ticket具體實(shí)現(xiàn)為cookie中的session id,并且可以省略應(yīng)用到認(rèn)證中心對(duì)ticket進(jìn)行校驗(yàn)的步驟。
具體圖示如下:
1.當(dāng)用戶訪問(wèn)系統(tǒng)1(域名為a.example.com)時(shí),系統(tǒng)檢測(cè)到用戶的請(qǐng)求中沒(méi)有ticket(即沒(méi)有相應(yīng)的cookie),則判斷用戶未登錄,將用戶重定向到認(rèn)證中心(帶上系統(tǒng)1的url,則認(rèn)證完后認(rèn)證中心可將用戶重定向會(huì)系統(tǒng)1)
2.用戶提交登錄表單到認(rèn)證中心,驗(yàn)證通過(guò)后創(chuàng)建相應(yīng)的session。將session id作為ticket,以cookie的方式發(fā)送給用戶,并將用戶重定向到系統(tǒng)1。(注意,cookie的域?yàn)楦颉癳xample.com”)
3.用戶重定向到系統(tǒng)1(此時(shí)會(huì)帶上相應(yīng)的cookie作為ticket)。系統(tǒng)1檢測(cè)到有ticket,則向認(rèn)證中心發(fā)起請(qǐng)求,驗(yàn)證ticket的有效性。
4.認(rèn)證中心驗(yàn)證ticket的有效性(即確實(shí)有對(duì)應(yīng)的session),將校驗(yàn)結(jié)果返回給系統(tǒng)1
5.系統(tǒng)1從認(rèn)證中心得到校驗(yàn)成功的結(jié)果后,則可以認(rèn)為用戶“已登錄”。
6.用戶繼續(xù)訪問(wèn)系統(tǒng)2(因?yàn)橄到y(tǒng)2的域名為“b.example.com”,其根域名也為“example.com”,故此時(shí)會(huì)帶上相應(yīng)的cookie作為ticket)。系統(tǒng)2檢測(cè)到有ticket,則向認(rèn)證中心發(fā)起請(qǐng)求,驗(yàn)證ticket的有效性。
7.認(rèn)證中心驗(yàn)證ticket的有效性(即確實(shí)有對(duì)應(yīng)的session),將校驗(yàn)結(jié)果返回給系統(tǒng)2。
8.系統(tǒng)2從認(rèn)證中心得到校驗(yàn)成功的結(jié)果后,則可以認(rèn)為用戶“已登錄”。
完全跨域單點(diǎn)登錄完全跨域單點(diǎn)登錄的實(shí)現(xiàn)思路正如前面所述,這里復(fù)述一下:
1.每個(gè)站點(diǎn)需要有自己的ticket(假設(shè):系統(tǒng)1為A-tikcet,系統(tǒng)2為B-ticket,認(rèn)證中心為P-ticket)
2.當(dāng)訪問(wèn)應(yīng)用系統(tǒng)(系統(tǒng)1,系統(tǒng)2)時(shí),若沒(méi)有相應(yīng)的ticket,則自動(dòng)重定向到認(rèn)證系統(tǒng)(P),在認(rèn)證系統(tǒng)認(rèn)證獲得P-ticket后重定向到應(yīng)用系統(tǒng)(系統(tǒng)1或系統(tǒng)2),用P-tikcet換取相應(yīng)的A-ticket或B-ticket;注銷的時(shí)候要注銷所有的ticket(P-ticket,A-ticket,B-ticket)
具體圖示如下:
注意: 在具體的實(shí)現(xiàn)中,可以用cookie來(lái)實(shí)現(xiàn)tikcet。ticket可以是包含session id的cookie。
1.用戶訪問(wèn)系統(tǒng)1,系統(tǒng)1發(fā)現(xiàn)用戶未登錄(沒(méi)有A-ticket),跳轉(zhuǎn)至認(rèn)證中心,并帶上系統(tǒng)的url作為參數(shù)(即回調(diào)url,這樣認(rèn)證后就可以跳轉(zhuǎn)回來(lái)了)。
2.認(rèn)證中心發(fā)現(xiàn)用戶未登錄(沒(méi)有P-ticket),將用戶引導(dǎo)至登錄界面。
3.用戶提交登錄信息到認(rèn)證中心。
4.認(rèn)證中心校驗(yàn)用戶的登錄信息,通過(guò)驗(yàn)證后,創(chuàng)建一個(gè)全局session,生成一個(gè)綁定當(dāng)前session的P-ticket。然后將P-ticket發(fā)送給用戶,并將用戶重定向到系統(tǒng)1(注意,此時(shí)會(huì)帶上P-ticket)。
5.系統(tǒng)1接收到帶有P-ticket的請(qǐng)求后,會(huì)向認(rèn)證中心發(fā)出一個(gè)請(qǐng)求,驗(yàn)證P-ticket的有效性。
6.認(rèn)證中心接收到系統(tǒng)1的校驗(yàn)請(qǐng)求,將校驗(yàn)結(jié)果返回給系統(tǒng)1。同時(shí)若驗(yàn)證通過(guò)則會(huì)將映射關(guān)系(P-ticket,系統(tǒng)1)記錄到一個(gè)映射表中(稱該表為“注冊(cè)系統(tǒng)表”,即記錄那些登錄的子系統(tǒng)與P-ticket的對(duì)應(yīng)關(guān)系,這樣在用戶注銷的時(shí)候就可以向相應(yīng)的子系統(tǒng)發(fā)送請(qǐng)求,銷毀相應(yīng)的局部session)。
7.系統(tǒng)1接受到認(rèn)證中心的校驗(yàn)結(jié)果,若校驗(yàn)通過(guò),則認(rèn)為用戶是“已登錄”,系統(tǒng)1在自身系統(tǒng)為用戶創(chuàng)建一個(gè)session(局部session),并生成一個(gè)綁定該session的A-ticket,同時(shí)將映射關(guān)系(A-ticket,P-ticket)記錄到自己的一個(gè)映射表中(稱該表為“ticket映射表”)。然后系統(tǒng)1將A-ticket發(fā)送給用戶,在后續(xù)用戶對(duì)系統(tǒng)1的訪問(wèn)中,會(huì)帶上A-ticket,則可以通過(guò)A-ticket判斷用戶是否已經(jīng)登錄。
8.用戶訪問(wèn)系統(tǒng)2,系統(tǒng)2發(fā)現(xiàn)用戶為登錄(沒(méi)有B-ticket),跳轉(zhuǎn)到認(rèn)證中心(此時(shí)對(duì)認(rèn)證中心的訪問(wèn)會(huì)帶上P-ticket),并帶上系統(tǒng)2的url作為參數(shù)(即回調(diào)url,這樣認(rèn)證后就可以跳轉(zhuǎn)回來(lái)了)。
9.認(rèn)證中心發(fā)現(xiàn)用戶已經(jīng)登錄(因?yàn)橛脩粢呀?jīng)持有P-ticket),確認(rèn)P-ticket的有效性后即可認(rèn)為用戶“已登錄”。認(rèn)證中心將用戶重定向到系統(tǒng)2(帶上P-ticket)。
10.系統(tǒng)2接收到帶有P-ticket的請(qǐng)求后,會(huì)向認(rèn)證中心發(fā)出一個(gè)請(qǐng)求,驗(yàn)證P-ticket的有效性。
11.認(rèn)證中心接收到系統(tǒng)2的校驗(yàn)請(qǐng)求,將校驗(yàn)結(jié)果返回給系統(tǒng)2。同時(shí)若驗(yàn)證通過(guò)則會(huì)將映射關(guān)系(P-ticket,系統(tǒng)2)添加到“注冊(cè)系統(tǒng)表”。
12.系統(tǒng)2接受到認(rèn)證中心的校驗(yàn)結(jié)果,若校驗(yàn)通過(guò),則認(rèn)為用戶是“已登錄”,系統(tǒng)2在自身系統(tǒng)為用戶創(chuàng)建一個(gè)session(局部session),并生成一個(gè)綁定該session的B-ticket,同時(shí)將映射關(guān)系(A-ticket,P-ticket)記錄到自己的一個(gè)映射表中(稱該表為“ticket映射表”)。然后系統(tǒng)2將B-ticket發(fā)送給用戶,在后續(xù)用戶對(duì)系統(tǒng)2的訪問(wèn)中,會(huì)帶上B-ticket,則可以通過(guò)B-ticket判斷用戶是否已經(jīng)登錄。
注銷圖示:
1.用戶向系統(tǒng)1發(fā)起注銷請(qǐng)求(會(huì)帶上A-ticket)。
2.系統(tǒng)1根據(jù)映射表“ticket映射表”,取出相應(yīng)的P-ticket。系統(tǒng)1向認(rèn)證中心發(fā)起注銷請(qǐng)求(帶上P-ticket)。
3.認(rèn)證中心接收到注銷請(qǐng)求后,驗(yàn)證P-ticket的有效性。若P-ticket有效,則銷毀本地的全局session(根據(jù)P-ticket)。認(rèn)證中心從“注冊(cè)系統(tǒng)表”中查找出與P-ticket相關(guān)的所有系統(tǒng),向所有相關(guān)的系統(tǒng)發(fā)送注銷局部會(huì)話請(qǐng)求。
4.系統(tǒng)2接收到認(rèn)證中心的“注銷局部會(huì)話”請(qǐng)求,根據(jù)P-ticket從“ticket映射表”中取出相應(yīng)的B-ticket,根據(jù)B-ticket銷毀本地局部會(huì)話。
5.系統(tǒng)1接收到認(rèn)證中心的“注銷局部會(huì)話”請(qǐng)求,根據(jù)P-ticket從“ticket映射表”中取出相應(yīng)的A-ticket,根據(jù)A-ticket銷毀本地局部會(huì)話。
值得注意的地方:
1.在上面的實(shí)現(xiàn)中,我們可以看到P-ticket是需要在各個(gè)端傳遞的,故出于安全考慮,應(yīng)該對(duì)P-ticket做一些安全性處理,如加密等。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/30812.html
摘要:本文對(duì)單點(diǎn)登錄有一個(gè)初步介紹,重點(diǎn)敘述前端開(kāi)發(fā)者使用單點(diǎn)登錄可能遇到的問(wèn)題,以及問(wèn)題分析方案全部來(lái)源于用友建筑云,本文僅用于內(nèi)部分享,所以不過(guò)多介紹方案實(shí)現(xiàn)。 本文對(duì)單點(diǎn)登錄有一個(gè)初步介紹,重點(diǎn)敘述前端開(kāi)發(fā)者使用單點(diǎn)登錄可能遇到的問(wèn)題,以及問(wèn)題分析!方案全部來(lái)源于用友建筑云,本文僅用于內(nèi)部分享,所以不過(guò)多介紹方案實(shí)現(xiàn)。原文來(lái)自博客 單點(diǎn)登錄介紹 showImg(https://seg...
摘要:用戶登錄成功之后,會(huì)與認(rèn)證中心及各個(gè)子系統(tǒng)建立會(huì)話,用戶與認(rèn)證中心建立的會(huì)話稱為全局會(huì)話,用戶與各個(gè)子系統(tǒng)建立的會(huì)話稱為局部會(huì)話。 在工作中,有這樣一個(gè)需求,因?yàn)楣居卸鄠€(gè)管理平臺(tái),每次登錄一個(gè)平臺(tái)都需要輸入賬號(hào)和密碼進(jìn)行登錄,特別麻煩,所以,希望只需登錄一個(gè)平臺(tái)的賬號(hào)和密碼,其他平臺(tái)的不用輸入賬號(hào)和密碼也可以自動(dòng)登錄,即單點(diǎn)登錄,經(jīng)過(guò)兩周的研究和實(shí)踐,終于完成了該需求,目前公司的兩個(gè)...
摘要:前言很久都沒(méi)有寫博客了,這次為大家簡(jiǎn)單介紹兩個(gè)在開(kāi)發(fā)中經(jīng)常使用的概念單點(diǎn)登錄和消息隊(duì)列以及具體到中的一些實(shí)現(xiàn)方案。單點(diǎn)登錄的實(shí)質(zhì)就是安全上下文或憑證在多個(gè)應(yīng)用系統(tǒng)之間的傳遞或共享。 前言 很久都沒(méi)有寫博客了,這次為大家簡(jiǎn)單介紹兩個(gè)在WEB開(kāi)發(fā)中經(jīng)常使用的概念——單點(diǎn)登錄和消息隊(duì)列以及具體到J2EE中的一些實(shí)現(xiàn)方案。本文原創(chuàng)性的工作比較少,主要是一些總結(jié)概括和自己的理解。 單點(diǎn)登錄SS...
閱讀 1983·2023-04-25 15:45
閱讀 1223·2021-09-29 09:34
閱讀 2510·2021-09-03 10:30
閱讀 2017·2019-08-30 15:56
閱讀 1473·2019-08-29 15:31
閱讀 1278·2019-08-29 15:29
閱讀 3209·2019-08-29 11:24
閱讀 3066·2019-08-26 13:45