單點登錄系統(tǒng)及方法
【專利摘要】本發(fā)明提出了單點登錄系統(tǒng)及方法。其中,所述單點登錄系統(tǒng)包括至少一個單點登錄服務(wù)器以并行地處理登錄和憑證驗證操作。本發(fā)明所公開的單點登錄系統(tǒng)及方法通過數(shù)據(jù)的共享緩存技術(shù)實現(xiàn)了單點登錄服務(wù)器的集群化,從而通過并行處理的方式顯著地提高了單點登錄系統(tǒng)及方法的性能。
【專利說明】單點登錄系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及登錄系統(tǒng)及方法,更具體地,涉及基于集群技術(shù)和共享緩存的單點登錄系統(tǒng)及方法。
【背景技術(shù)】
[0002]目前,隨著基于網(wǎng)絡(luò)的應(yīng)用的日益廣泛以及不同領(lǐng)域的業(yè)務(wù)種類的日益豐富,用于單點登錄(SS0,即用戶只需登錄一次就可以訪問所有相互信任的跨域應(yīng)用系統(tǒng))的系統(tǒng)及方法變得越來越重要。
[0003]如圖1所不,現(xiàn)有的基于CAS (Central Authentication Service)技術(shù)的單點登錄系統(tǒng)及方法的基本工作原理如下:當(dāng)用戶通過客戶端(例如瀏覽器)第一次訪問位于應(yīng)用服務(wù)器中的應(yīng)用A時,其被重定向到單點登錄服務(wù)器(即認(rèn)證服務(wù)器)以執(zhí)行登錄操作;所述單點登錄服務(wù)器對該用戶進(jìn)行身份驗證,并且如果驗證通過,則所述單點登錄服務(wù)器向所述客戶端返回用于認(rèn)證的憑證(Ticket);隨后,當(dāng)所述用戶訪問應(yīng)用B時,應(yīng)用B判斷用戶尚未登錄,則將用戶訪問請求轉(zhuǎn)發(fā)至單點登錄服務(wù)器,單點登錄服務(wù)器檢測到用戶之前已經(jīng)登錄過,則將用戶請求報文轉(zhuǎn)發(fā)至應(yīng)用B,并帶有用戶已經(jīng)在單點登錄服務(wù)器中登錄過的憑證,隨之所述應(yīng)用B將把所述憑證傳送到所述單點登錄服務(wù)器以驗證其合法性,并且如果驗證通過,則所述用戶就可以在不用再次登錄的情況下訪問應(yīng)用B,其中應(yīng)用A和應(yīng)用B可以位于同一物理實體的應(yīng)用服務(wù)器內(nèi),也可以位于不同物理實體的應(yīng)用服務(wù)器內(nèi)。
[0004]然而,現(xiàn)有的單點登錄系統(tǒng)及方法存在如下問題:由于僅使用單一的單點登錄服務(wù)器,故其能夠提供的并發(fā)性能有限,從而難于適用大數(shù)據(jù)量交互的情況。此外,現(xiàn)有的針對CAS技術(shù)的集群化改進(jìn)方案(例如基于JbossCache的CAS集群技術(shù))仍然存在如下問題:在大的并發(fā)情況下,由于數(shù)據(jù)交互量較大,故導(dǎo)致數(shù)據(jù)同步延時較大。
[0005]因此,存在如下需求:提供可以處理大量的并發(fā)數(shù)據(jù)交互的基于集群技術(shù)的單點登錄系統(tǒng)及方法。
【發(fā)明內(nèi)容】
[0006]為了解決上述現(xiàn)有技術(shù)方案所存在的問題,本發(fā)明提出了可以處理大量的并發(fā)數(shù)據(jù)交互的基于集群技術(shù)的單點登錄系統(tǒng)及方法。
[0007]本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的:
一種單點登錄系統(tǒng),所述單點登錄系統(tǒng)包括:
客戶端,所述客戶端用于基于用戶指令構(gòu)造訪問請求,并將所述訪問請求傳送到應(yīng)用服務(wù)器中的目標(biāo)應(yīng)用;
應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器用于解析所述訪問請求并基于解析結(jié)果判斷當(dāng)前訪問請求的狀態(tài),以及如果當(dāng)前訪問請求的狀態(tài)是“第一次訪問”,則將所述訪問請求轉(zhuǎn)發(fā)到接入服務(wù)器;
接入服務(wù)器,所述接入服務(wù)器用于將接收到的所述訪問請求分發(fā)到所述至少一個單點登錄服務(wù)器中的一個;
至少一個單點登錄服務(wù)器,所述至少一個單點登錄服務(wù)器中的每個在接收到所述訪問請求后執(zhí)行如下操作:(a)在本地緩存器中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(b)如果在本地緩存器中未查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則在主共享緩存裝置中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(C)如果未在所述主共享緩存裝置中查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則經(jīng)通信鏈路與所述訪問請求所對應(yīng)的用戶進(jìn)行交互以完成登錄操作,并將與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息分別存儲在本地緩存器和主共享緩存裝置中;
主共享緩存裝置,所述主共享緩存裝置用于存儲與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息。
[0008]在上面所公開的方案中,優(yōu)選地,當(dāng)接收到由所述至少一個單點登錄服務(wù)器轉(zhuǎn)發(fā)來的帶有所述憑證的所述訪問請求后,所述應(yīng)用服務(wù)器執(zhí)行所述憑證的驗證過程,并且如果驗證通過則接受與所述訪問請求所對應(yīng)的用戶的訪問。
[0009]在上面所公開的方案中,優(yōu)選地,所述至少一個單點登錄服務(wù)器以共享的方式使用所述主共享緩存裝置。
[0010]在上面所公開的方案中,優(yōu)選地,所述應(yīng)用服務(wù)器可以由單一的物理實體構(gòu)成,也可以由多個不同的物理實體的集合構(gòu)成。
[0011]在上面所公開的方案中,優(yōu)選地,所述單點登錄系統(tǒng)進(jìn)一步包括:
監(jiān)控裝置,所述監(jiān)控裝置用于定時監(jiān)視所述至少一個單點登錄服務(wù)器中的每個與所述主共享緩存裝置之間的連接狀態(tài),并且當(dāng)所述至少一個單點登錄服務(wù)器中的任一個與所述主共享緩存裝置之間的連接失敗的次數(shù)超過預(yù)定的閾值時,所述監(jiān)控裝置向該單點登錄服務(wù)器發(fā)送切換命令,從而使該單點登錄服務(wù)器使用至少一個備用共享緩存裝置中的一個作為新的主共享緩存裝置;
至少一個備用共享緩存裝置,所述至少一個備用共享緩存裝置中的每個用于保持與所述主共享緩存裝置的實時數(shù)據(jù)同步,并在所述主共享緩存裝置發(fā)生故障時基于所述監(jiān)控裝置的選擇而作為新的主共享緩存裝置。
[0012]在上面所公開的方案中,優(yōu)選地,所述主共享緩存裝置利用MemCached共享緩存技術(shù)實現(xiàn)數(shù)據(jù)的共享。
[0013]在上面所公開的方案中,優(yōu)選地,所述客戶端是Web瀏覽器。
[0014]本發(fā)明的目的也可以通過以下技術(shù)方案實現(xiàn):
一種單點登錄方法,所述單點登錄方法包括下列步驟:
(Al)客戶端基于用戶指令構(gòu)造訪問請求,并將所述訪問請求傳送到應(yīng)用服務(wù)器中的目標(biāo)應(yīng)用;
(A2)所述應(yīng)用服務(wù)器解析所述訪問請求并基于解析結(jié)果判斷當(dāng)前訪問請求的狀態(tài),以及如果當(dāng)前訪問請求的狀態(tài)是“第一次訪問”,則將所述訪問請求轉(zhuǎn)發(fā)到接入服務(wù)器; (A3)所述接入服務(wù)器將接收到的所述訪問請求分發(fā)到至少一個單點登錄服務(wù)器中的一個;
(A4)所述至少一個單點登錄服務(wù)器中的每個在接收到所述訪問請求后執(zhí)行如下操作:(a)在本地緩存器中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(b)如果在本地緩存器中未查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則在主共享緩存裝置中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(C)如果未在所述主共享緩存裝置中查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則經(jīng)通信鏈路與所述訪問請求所對應(yīng)的用戶進(jìn)行交互以完成登錄操作,并將與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息分別存儲在本地緩存器和主共享緩存裝置中。
[0015]本發(fā)明所公開的單點登錄系統(tǒng)及方法具有如下優(yōu)點:由于通過數(shù)據(jù)的共享緩存技術(shù)實現(xiàn)了單點登錄服務(wù)器的集群化,即實現(xiàn)了多個單點登錄服務(wù)器共同對外服務(wù),從而通過并行處理的方式顯著地提高了單點登錄系統(tǒng)的性能。
【專利附圖】
【附圖說明】
[0016]結(jié)合附圖,本發(fā)明的技術(shù)特征以及優(yōu)點將會被本領(lǐng)域技術(shù)人員更好地理解,其中:
圖1是現(xiàn)有的基于CAS技術(shù)的單點登錄系統(tǒng)的示意性結(jié)構(gòu)圖;
圖2是根據(jù)本發(fā)明的實施例的單點登錄系統(tǒng)的示意性結(jié)構(gòu)圖;
圖3是根據(jù)本發(fā)明的實施例的單點登錄方法的流程圖。
【具體實施方式】
[0017]圖2是根據(jù)本發(fā)明的實施例的單點登錄系統(tǒng)的示意性結(jié)構(gòu)圖。如圖1所示,本發(fā)明所公開的單點登錄系統(tǒng)包括客戶端1、應(yīng)用服務(wù)器2、接入服務(wù)器3、至少一個單點登錄服務(wù)器4和主共享緩存裝置6。其中,所述客戶端I用于基于用戶指令構(gòu)造訪問請求,并將所述訪問請求傳送到所述應(yīng)用服務(wù)器2中的目標(biāo)應(yīng)用。所述應(yīng)用服務(wù)器2用于解析所述訪問請求并基于解析結(jié)果判斷當(dāng)前訪問請求的狀態(tài),以及如果當(dāng)前訪問請求的狀態(tài)是“第一次訪問”(即該用戶針對該目標(biāo)應(yīng)用是未登錄過的,換句話說,該用戶首次訪問該目標(biāo)應(yīng)用),則將所述訪問請求轉(zhuǎn)發(fā)到接入服務(wù)器3。所述接入服務(wù)器3用于將接收到的所述訪問請求分發(fā)到所述至少一個單點登錄服務(wù)器4中的一個。所述至少一個單點登錄服務(wù)器4中的每個在接收到所述訪問請求后執(zhí)行如下操作:(a)在本地緩存器中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息(即已登錄過),并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證(Ticket),并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器2 ; (b)如果在本地緩存器中未查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則在主共享緩存裝置6中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息(即已登錄過),則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證(Ticket),并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器2 ; (C)如果未在所述主共享緩存裝置6中查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息(即未登錄過),則經(jīng)通信鏈路與所述訪問請求所對應(yīng)的用戶進(jìn)行交互以完成登錄操作,并將與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息分別存儲在本地緩存器和主共享緩存裝置6中。所述主共享緩存裝置6用于存儲與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息。
[0018]優(yōu)選地,在本發(fā)明所公開的單點登錄系統(tǒng)中,當(dāng)接收到由所述至少一個單點登錄服務(wù)器4轉(zhuǎn)發(fā)來的帶有所述憑證的所述訪問請求后,所述應(yīng)用服務(wù)器2執(zhí)行所述憑證的驗證過程(所述驗證過程與常規(guī)的CAS技術(shù)相似,此處不再贅述),并且如果驗證通過則接受與所述訪問請求所對應(yīng)的用戶的訪問(即進(jìn)一步處理所述訪問請求)。
[0019]優(yōu)選地,在本發(fā)明所公開的單點登錄系統(tǒng)中,所述至少一個單點登錄服務(wù)器4以共享的方式使用所述主共享緩存裝置6。
[0020]示例性地,在本發(fā)明所公開的單點登錄系統(tǒng)中,所述應(yīng)用服務(wù)器2可以由單一的物理實體構(gòu)成,也可以由多個不同的物理實體的集合構(gòu)成(其中,示例性地,所述多個不同的物理實體中的一個或多個可以是彼此異地的)。
[0021]優(yōu)選地,本發(fā)明所公開的單點登錄系統(tǒng)還包括監(jiān)控裝置5和至少一個備用共享緩存裝置7。其中,所述監(jiān)控裝置5用于定時監(jiān)視所述至少一個單點登錄服務(wù)器4中的每個與所述主共享緩存裝置6之間的連接狀態(tài),并且當(dāng)所述至少一個單點登錄服務(wù)器4中的任一個與所述主共享緩存裝置6之間的連接失敗的次數(shù)超過預(yù)定的閾值時,所述監(jiān)控裝置5向該單點登錄服務(wù)器4發(fā)送切換命令,從而使該單點登錄服務(wù)器4使用至少一個備用共享緩存裝置7中的一個作為新的主共享緩存裝置。所述至少一個備用共享緩存裝置7中的每個用于保持與所述主共享緩存裝置6的實時數(shù)據(jù)同步,并在所述主共享緩存裝置6發(fā)生故障時基于所述監(jiān)控裝置5的選擇而作為新的主共享緩存裝置。
[0022]示例性地,在本發(fā)明所公開的單點登錄系統(tǒng)中,所述主共享緩存裝置6利用MemCached共享緩存技術(shù)實現(xiàn)數(shù)據(jù)的共享。
[0023]示例性地,在本發(fā)明所公開的單點登錄系統(tǒng)中,所述客戶端I是Web瀏覽器。
[0024]由上可見,本發(fā)明所公開的單點登錄系統(tǒng)通過數(shù)據(jù)的共享緩存技術(shù)實現(xiàn)了單點登錄服務(wù)器的集群化,即實現(xiàn)了多個單點登錄服務(wù)器共同對外服務(wù),從而通過并行處理的方式顯著地提高了單點登錄系統(tǒng)的性能。
[0025]圖3是根據(jù)本發(fā)明的實施例的單點登錄方法的流程圖。如圖3所示,本發(fā)明所公開的單點登錄方法包括下列步驟=(Al)客戶端基于用戶指令構(gòu)造訪問請求,并將所述訪問請求傳送到應(yīng)用服務(wù)器中的目標(biāo)應(yīng)用;(A2)所述應(yīng)用服務(wù)器解析所述訪問請求并基于解析結(jié)果判斷當(dāng)前訪問請求的狀態(tài),以及如果當(dāng)前訪問請求的狀態(tài)是“第一次訪問”(即該用戶針對該目標(biāo)應(yīng)用是未登錄過的,換句話說,該用戶首次訪問該目標(biāo)應(yīng)用),則將所述訪問請求轉(zhuǎn)發(fā)到接入服務(wù)器;(A3)所述接入服務(wù)器將接收到的所述訪問請求分發(fā)到至少一個單點登錄服務(wù)器中的一個;(A4)所述至少一個單點登錄服務(wù)器中的每個在接收到所述訪問請求后執(zhí)行如下操作:(a)在本地緩存器中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息(即該用戶已登錄過),并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證(Ticket),并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(b)如果在本地緩存器中未查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則在主共享緩存裝置中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息(即已登錄過),則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證(Ticket),并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(C)如果未在所述主共享緩存裝置中查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息(即未登錄過),則經(jīng)通信鏈路與所述訪問請求所對應(yīng)的用戶進(jìn)行交互以完成登錄操作,并將與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息分別存儲在本地緩存器和主共享緩存裝置中。
[0026]優(yōu)選地,在本發(fā)明所公開的單點登錄系統(tǒng)中,當(dāng)接收到由所述至少一個單點登錄服務(wù)器轉(zhuǎn)發(fā)來的帶有所述憑證的所述訪問請求后,所述應(yīng)用服務(wù)器執(zhí)行所述憑證的驗證過程(所述驗證過程與常規(guī)的CAS技術(shù)相似,此處不再贅述),并且如果驗證通過則接受與所述訪問請求所對應(yīng)的用戶的訪問(即進(jìn)一步處理所述訪問請求)。
[0027]優(yōu)選地,在本發(fā)明所公開的單點登錄方法中,所述至少一個單點登錄服務(wù)器以共享的方式使用所述主共享緩存裝置。
[0028]示例性地,在本發(fā)明所公開的單點登錄方法中,所述應(yīng)用服務(wù)器可以由單一的物理實體構(gòu)成,也可以由多個不同的物理實體的集合構(gòu)成(其中,示例性地,所述多個不同的物理實體中的一個或多個可以是彼此異地的)。
[0029]優(yōu)選地,在本發(fā)明所公開的單點登錄方法中,所述步驟(A4)進(jìn)一步包括:定時監(jiān)視所述至少一個單點登錄服務(wù)器中的每個與所述主共享緩存裝置之間的連接狀態(tài),并且當(dāng)所述至少一個單點登錄服務(wù)器中的任一個與所述主共享緩存裝置之間的連接失敗的次數(shù)超過預(yù)定的閾值時,向該單點登錄服務(wù)器發(fā)送切換命令,從而使該單點登錄服務(wù)器使用至少一個備用共享緩存裝置中的一個作為新的主共享緩存裝置,其中,所述至少一個備用共享緩存裝置中的每個保持與所述主共享緩存裝置的實時數(shù)據(jù)同步,并在所述主共享緩存裝置發(fā)生故障時作為新的主共享緩存裝置而工作。
[0030]示例性地,在本發(fā)明所公開的單點登錄方法中,所述主共享緩存裝置利用MemCached共享緩存技術(shù)實現(xiàn)數(shù)據(jù)的共享。
[0031]示例性地,在本發(fā)明所公開的單點登錄方法中,所述客戶端是Web瀏覽器。
[0032]盡管本發(fā)明是通過上述的優(yōu)選實施方式進(jìn)行描述的,但是其實現(xiàn)形式并不局限于上述的實施方式。應(yīng)該認(rèn)識到:在不脫離本發(fā)明主旨和范圍的情況下,本領(lǐng)域技術(shù)人員可以對本發(fā)明做出不同的變化和修改。
【權(quán)利要求】
1.一種單點登錄系統(tǒng),所述單點登錄系統(tǒng)包括: 客戶端,所述客戶端用于基于用戶指令構(gòu)造訪問請求,并將所述訪問請求傳送到應(yīng)用服務(wù)器中的目標(biāo)應(yīng)用; 應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器用于解析所述訪問請求并基于解析結(jié)果判斷當(dāng)前訪問請求的狀態(tài),以及如果當(dāng)前訪問請求的狀態(tài)是“第一次訪問”,則將所述訪問請求轉(zhuǎn)發(fā)到接入服務(wù)器; 接入服務(wù)器,所述接入服務(wù)器用于將接收到的所述訪問請求分發(fā)到所述至少一個單點登錄服務(wù)器中的一個; 至少一個單點登錄服務(wù)器,所述至少一個單點登錄服務(wù)器中的每個在接收到所述訪問請求后執(zhí)行如下操作:Ca)在本地緩存器中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(b)如果在本地緩存器中未查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則在主共享緩存裝置中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(C)如果未在所述主共享緩存裝置中查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則經(jīng)通信鏈路與所述訪問請求所對應(yīng)的用戶進(jìn)行交互以完成登錄操作,并將與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息分別存儲在本地緩存器和主共享緩存裝置中; 主共享緩存裝置,所述主共享緩存裝置用于存儲與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息。
2.根據(jù)權(quán)利要求1所述的單點登錄系統(tǒng),其特征在于,當(dāng)接收到由所述至少一個單點登錄服務(wù)器轉(zhuǎn)發(fā)來的帶有所述憑證的所述訪問請求后,所述應(yīng)用服務(wù)器執(zhí)行所述憑證的驗證過程,并且如果驗證通過則接受與所述訪問請求所對應(yīng)的用戶的訪問。
3.根據(jù)權(quán)利要求2所述的單點登錄系統(tǒng),其特征在于,所述至少一個單點登錄服務(wù)器以共享的方式使用所述主共享緩存裝置。
4.根據(jù)權(quán)利要求3所述的單點登錄系統(tǒng),其特征在于,所述應(yīng)用服務(wù)器可以由單一的物理實體構(gòu)成,也可以由多個不同的物理實體的集合構(gòu)成。
5.根據(jù)權(quán)利要求4所述的單點登錄系統(tǒng),其特征在于,所述單點登錄系統(tǒng)進(jìn)一步包括: 監(jiān)控裝置,所述監(jiān)控裝置用于定時監(jiān)視所述至少一個單點登錄服務(wù)器中的每個與所述主共享緩存裝置之間的連接狀態(tài),并且當(dāng)所述至少一個單點登錄服務(wù)器中的任一個與所述主共享緩存裝置之間的連接失敗的次數(shù)超過預(yù)定的閾值時,所述監(jiān)控裝置向該單點登錄服務(wù)器發(fā)送切換命令 ,從而使該單點登錄服務(wù)器使用至少一個備用共享緩存裝置中的一個作為新的主共享緩存裝置; 至少一個備用共享緩存裝置,所述至少一個備用共享緩存裝置中的每個用于保持與所述主共享緩存裝置的實時數(shù)據(jù)同步,并在所述主共享緩存裝置發(fā)生故障時基于所述監(jiān)控裝置的選擇而作為新的主共享緩存裝置。
6.根據(jù)權(quán)利要求5所述的單點登錄系統(tǒng),其特征在于,所述主共享緩存裝置利用MemCached共享緩存技術(shù)實現(xiàn)數(shù)據(jù)的共享。
7.根據(jù)權(quán)利要求6所述的單點登錄系統(tǒng),其特征在于,所述客戶端是Web瀏覽器。
8.一種單點登錄方法,所述單點登錄方法包括下列步驟: (Al)客戶端基于用戶指令構(gòu)造訪問請求,并將所述訪問請求傳送到應(yīng)用服務(wù)器中的目標(biāo)應(yīng)用; (A2)所述應(yīng)用服務(wù)器解析所述訪問請求并基于解析結(jié)果判斷當(dāng)前訪問請求的狀態(tài),以及如果當(dāng)前訪問請求的狀態(tài)是“第一次訪問”,則將所述訪問請求轉(zhuǎn)發(fā)到接入服務(wù)器; (A3)所述接入服務(wù)器將接收到的所述訪問請求分發(fā)到至少一個單點登錄服務(wù)器中的一個; (A4)所述至少一個單點登錄服務(wù)器中的每個在接收到所述訪問請求后執(zhí)行如下操作:(a)在本地緩存器中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(b)如果在本地緩存器中未查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則在主共享緩存裝置中查找與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,并且如果查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則生成與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的憑證,并將帶有所述憑證的訪問請求發(fā)送回所述應(yīng)用服務(wù)器;(C)如果未在所述主共享緩存裝置中查找到與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息,則經(jīng)通信鏈路與所述訪問請求所對應(yīng)的用戶進(jìn)行交互以完成登錄操作,并將與所述訪問請求所對應(yīng)的用戶相關(guān)聯(lián)的信息分別存儲在本地緩存器和主共享緩存裝置中。
【文檔編號】H04L29/06GK103634269SQ201210298201
【公開日】2014年3月12日 申請日期:2012年8月21日 優(yōu)先權(quán)日:2012年8月21日
【發(fā)明者】趙啟飛, 黃河 申請人:中國銀聯(lián)股份有限公司