定義:

傳統(tǒng)的單站點(diǎn)登錄訪問授權(quán)機(jī)制是:登錄成功后將用戶信息保存在session中,sessionId保存在cookie中,每次訪問需要登錄訪問的資源(url)時(shí)判斷當(dāng)前session是否為空,為空的話跳轉(zhuǎn)到登錄界面登錄,不為空的話允許訪問。

 單點(diǎn)登錄是一種多站點(diǎn)共享登錄訪問授權(quán)機(jī)制,訪問用戶只需要在一個(gè)站點(diǎn)登錄就可以訪問其它站點(diǎn)需要登錄訪問的資源(url)。用戶在任意一個(gè)站點(diǎn)注銷登錄,則其它站點(diǎn)的登錄狀態(tài)也被注銷。簡而言之就是:一處登錄,處處登錄。一處注銷,處處注銷。

應(yīng)用場景:

當(dāng)一個(gè)網(wǎng)站系統(tǒng)稍微復(fù)雜一些的時(shí)候,需要對業(yè)務(wù)進(jìn)行拆分,比如一個(gè)電商網(wǎng)站,可以將商品搜索、商品詳情、購物車、訂單等拆分成一個(gè)個(gè)子系統(tǒng),。當(dāng)一個(gè)系統(tǒng)拆分成多個(gè)子系統(tǒng)的時(shí)候就需要單點(diǎn)登錄來做授權(quán)了。

業(yè)務(wù)需求:

最近公司因?yàn)闃I(yè)務(wù)需要開發(fā)了一些子系統(tǒng)需要和主站進(jìn)行集成,在網(wǎng)上看了好多單點(diǎn)登錄的教程,綜合各種情況總結(jié)出了了下面的單點(diǎn)登錄實(shí)現(xiàn)思路。其中用到了輪詢跳轉(zhuǎn)的思路來解決同時(shí)給多個(gè)分站寫cookie的問題。如有不妥之處歡迎各位批評(píng)指正。 

實(shí)現(xiàn)功能:

1.可完全跨域

2.url透明(分站跳轉(zhuǎn)不需要url傳遞token或者ticket)

3.同步注銷

4.一次將cookie寫入到多個(gè)分站 

效果預(yù)覽 :

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式