專(zhuān)利名稱(chēng):與異類(lèi)聯(lián)合體環(huán)境中驗(yàn)證聲明相關(guān)的擁有證明操作用方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種改進(jìn)的數(shù)據(jù)處理系統(tǒng),特別涉及一種多計(jì)算機(jī)數(shù)據(jù)傳送方法和設(shè)備。更具體地說(shuō),本發(fā)明以網(wǎng)絡(luò)化計(jì)算機(jī)系統(tǒng)為目標(biāo)。
背景技術(shù):
企業(yè)一般希望在各種網(wǎng)絡(luò),包括因特網(wǎng)內(nèi),以用戶(hù)友好的方式向授權(quán)用戶(hù)提供對(duì)受保護(hù)資源的安全訪(fǎng)問(wèn)。雖然提供安全的驗(yàn)證機(jī)制降低了未經(jīng)許可訪(fǎng)問(wèn)受保護(hù)資源的風(fēng)險(xiǎn),但是相同的驗(yàn)證機(jī)制會(huì)成為用戶(hù)與受保護(hù)資源交互作用的障礙。用戶(hù)通常需要從與一個(gè)應(yīng)用程序交互作用跳躍到與另一應(yīng)用程序交互作用的能力,而不考慮保護(hù)支持這些應(yīng)用程序的各個(gè)特定系統(tǒng)的驗(yàn)證障礙。
隨著用戶(hù)變得更加成熟,他們希望計(jì)算機(jī)系統(tǒng)協(xié)調(diào)他們的操作,從而減輕用戶(hù)的負(fù)擔(dān)。這些期望也適用于驗(yàn)證過(guò)程。用戶(hù)可假定一旦他或她已被某一計(jì)算機(jī)系統(tǒng)驗(yàn)證,那么該驗(yàn)證應(yīng)在用戶(hù)的整個(gè)工作會(huì)話(huà)中有效,或者至少在特定的一段時(shí)間內(nèi)有效,而不考慮用戶(hù)幾乎不可見(jiàn)的各種計(jì)算機(jī)結(jié)構(gòu)邊界。企業(yè)通常試圖在他們部署的系統(tǒng)的操作特征方面實(shí)現(xiàn)這些期望,不僅安撫用戶(hù),而且提高用戶(hù)效率,不管用戶(hù)效率是與雇員生產(chǎn)率相關(guān)還是與客戶(hù)滿(mǎn)意度相關(guān)。
更具體地,就當(dāng)前的其中許多應(yīng)用程序具有可通過(guò)公共瀏覽器訪(fǎng)問(wèn)的基于Web的用戶(hù)界面的計(jì)算環(huán)境來(lái)說(shuō),用戶(hù)期望更加用戶(hù)友好,較少或者很少的障礙,以便從一個(gè)基于Web的應(yīng)用程序轉(zhuǎn)移到另一個(gè)Web應(yīng)用程序。這種情況下,用戶(hù)逐漸期望具有在不考慮保護(hù)各個(gè)特定域的驗(yàn)證障礙的情況下,從與一個(gè)因特網(wǎng)域的應(yīng)用程序交互作用跳到與另一域的另一應(yīng)用交互作用的能力。但是,即使許多系統(tǒng)通過(guò)易于使用的基于Web的接口,提供安全的驗(yàn)證,用戶(hù)仍然不得不慎重處理妨礙用戶(hù)跨越一組域訪(fǎng)問(wèn)的多個(gè)驗(yàn)證過(guò)程。在指定時(shí)間內(nèi)使用戶(hù)經(jīng)歷多個(gè)驗(yàn)證過(guò)程會(huì)顯著影響用戶(hù)的效率。
已使用各種技術(shù)來(lái)減輕對(duì)用戶(hù)和計(jì)算機(jī)系統(tǒng)管理員的驗(yàn)證負(fù)擔(dān)。這些技術(shù)一般被稱(chēng)為“單一注冊(cè)”(SSO)過(guò)程,因?yàn)樗鼈兙哂泄餐哪康脑谟脩?hù)完成一次注冊(cè)操作,即被驗(yàn)證之后,隨后不要求該用戶(hù)執(zhí)行另一驗(yàn)證操作。從而,目的是在特定的用戶(hù)會(huì)話(huà)中,只要求用戶(hù)完成一次驗(yàn)證過(guò)程。
當(dāng)在指定企業(yè)內(nèi)實(shí)現(xiàn)時(shí),這種單一注冊(cè)解決方案是成功的。但是,隨著更多企業(yè)參與電子商務(wù)市場(chǎng)或者通過(guò)因特網(wǎng)連接的其它合作努力中,由多個(gè)驗(yàn)證過(guò)程或系統(tǒng)帶來(lái)的障礙正在變得越來(lái)越常見(jiàn)。以前的企業(yè)之間的單一注冊(cè)解決方案局限于其中在參與企業(yè)之間存在預(yù)先確定的商業(yè)協(xié)議的同類(lèi)環(huán)境。這些商業(yè)協(xié)議部分被用于建立信任,以及限制和定義在企業(yè)之間,如何以安全的方式傳送信息。這些商業(yè)協(xié)議還包括關(guān)于如何把用戶(hù)身份從一個(gè)企業(yè)轉(zhuǎn)換或映射到另一企業(yè),以及如何在參與企業(yè)之間傳送用于擔(dān)保用戶(hù)的信息的規(guī)則方面的技術(shù)協(xié)議。
換句話(huà)說(shuō),以前的單一注冊(cè)解決方案允許根據(jù)預(yù)先達(dá)成或預(yù)先設(shè)定的協(xié)議,信任由不同企業(yè)產(chǎn)生的驗(yàn)證聲明(以及在該聲明中提供的用戶(hù)的身份)。每個(gè)截然不同的企業(yè)知道如何產(chǎn)生和說(shuō)明可被已交換類(lèi)似協(xié)議的其它企業(yè),例如電子商務(wù)市場(chǎng)內(nèi)的企業(yè)理解的驗(yàn)證聲明。這些同類(lèi)環(huán)境緊密結(jié)合,因?yàn)榇嬖谄髽I(yè)已知的,用于在這些系統(tǒng)間映射用戶(hù)身份的確定關(guān)系。由于用于建立單一注冊(cè)環(huán)境的商業(yè)協(xié)議的緣故,這種緊密結(jié)合是可能的。雖然利用這些以前的單一注冊(cè)解決方案,參與企業(yè)能夠在同類(lèi)環(huán)境中合作,但是考慮到需要或者期望互連多個(gè)同類(lèi)環(huán)境,這些環(huán)境是限制性的,例如互連的電子商務(wù)市場(chǎng)。
雖然單一注冊(cè)解決方案可向參與企業(yè)內(nèi)的用戶(hù)提供易于使用的優(yōu)點(diǎn),但是通過(guò)也適用于其它系統(tǒng)的技術(shù),惡意用戶(hù)會(huì)試圖濫用這種環(huán)境內(nèi)的資源。例如,通過(guò)所謂的中間人(man-in-the-middle)攻擊,可截取單一注冊(cè)信息。另外,被合法用戶(hù)用于單一注冊(cè)操作的客戶(hù)計(jì)算機(jī)可在合法用戶(hù)離開(kāi)客戶(hù)計(jì)算機(jī)之后,被惡意用戶(hù)濫用。
于是,具有其中在缺少參與企業(yè)之間的預(yù)定商業(yè)和技術(shù)轉(zhuǎn)換協(xié)議的情況下,企業(yè)可向用戶(hù)提供單一注冊(cè)經(jīng)歷的方法和系統(tǒng)應(yīng)是有利的。特別有利的是減少來(lái)自試圖濫用單一注冊(cè)會(huì)話(huà)的惡意用戶(hù)的安全風(fēng)險(xiǎn)。
發(fā)明內(nèi)容
提供一種方法、設(shè)備、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品,其中聯(lián)合域在聯(lián)合體環(huán)境(federated environment)中交互作用。聯(lián)合體內(nèi)的域能夠在其它聯(lián)合域?yàn)橛脩?hù)啟動(dòng)聯(lián)合單一注冊(cè)操作。域內(nèi)的聯(lián)系點(diǎn)服務(wù)器依靠域內(nèi)的信任代理(trust proxy)管理域和聯(lián)合體之間的信任關(guān)系。根據(jù)需要,信任代理解釋來(lái)自其它聯(lián)合域的聲明。信任代理可與一個(gè)或多個(gè)信任中介具有信任關(guān)系,信任代理可依靠信任中介幫助解釋聲明。為了提高安全性,通過(guò)在用戶(hù)啟動(dòng)單一注冊(cè)操作之后執(zhí)行的擁有證明(proof-of-possession)質(zhì)詢(xún),域還可要求用戶(hù)重新證明他們的身份。
附加權(quán)利要求中陳述了本發(fā)明特有的新特征。結(jié)合附圖,參考下述詳細(xì)說(shuō)明,將更好地理解發(fā)明本身,其它目的及其優(yōu)點(diǎn)圖1A描述了數(shù)據(jù)處理系統(tǒng)的典型網(wǎng)絡(luò),每個(gè)所述數(shù)據(jù)處理系統(tǒng)可實(shí)現(xiàn)本發(fā)明;圖1B描述可在數(shù)據(jù)處理系統(tǒng)內(nèi)使用的典型計(jì)算機(jī)結(jié)構(gòu),在所述數(shù)據(jù)處理系統(tǒng)中可實(shí)現(xiàn)本發(fā)明;圖1C是圖解說(shuō)明當(dāng)客戶(hù)機(jī)試圖訪(fǎng)問(wèn)服務(wù)器的受保護(hù)資源時(shí),可使用的典型驗(yàn)證過(guò)程的數(shù)據(jù)流程圖;圖1D是圖解說(shuō)明其中可實(shí)現(xiàn)本發(fā)明的典型Web環(huán)境的網(wǎng)絡(luò)圖;圖1E是圖解說(shuō)明向用戶(hù)要求多次驗(yàn)證操作的典型在線(xiàn)交易的方框圖;圖2A是圖解說(shuō)明就用戶(hù)相對(duì)于第一聯(lián)合企業(yè)啟動(dòng)的交易來(lái)說(shuō),聯(lián)合體環(huán)境的術(shù)語(yǔ)的方框圖,作為響應(yīng),第一聯(lián)合企業(yè)調(diào)用聯(lián)合體環(huán)境內(nèi)下游實(shí)體上的操作;圖2B是根據(jù)本發(fā)明的一個(gè)實(shí)施例,圖解說(shuō)明指定域的現(xiàn)有系統(tǒng)和本發(fā)明的一些聯(lián)合體系統(tǒng)結(jié)構(gòu)組件的綜合的方框圖;圖2C是根據(jù)本發(fā)明的一個(gè)實(shí)現(xiàn),圖解說(shuō)明聯(lián)合體系統(tǒng)結(jié)構(gòu)的方框圖;圖2D是根據(jù)本發(fā)明,圖解說(shuō)明利用信任代理和信任中介的聯(lián)合域之間的一組例證信任關(guān)系的方框圖;圖3A是圖解說(shuō)明位于發(fā)布域的,產(chǎn)生聯(lián)合體環(huán)境內(nèi)的聲明的一般過(guò)程的流程圖;圖3B是圖解說(shuō)明位于信賴(lài)域的,扯下(tearing down)聲明的一般過(guò)程的流程圖;圖3C是圖解說(shuō)明響應(yīng)發(fā)布域的用戶(hù)操作,把聲明從發(fā)布域推送到信賴(lài)域的具體過(guò)程的流程圖;圖3D是圖解說(shuō)明響應(yīng)發(fā)布域主動(dòng)截取對(duì)于信賴(lài)域的輸出請(qǐng)求,把聲明從發(fā)布域推送到信賴(lài)域的具體過(guò)程的流程圖;圖3E是圖解說(shuō)明在試圖滿(mǎn)足信賴(lài)域從發(fā)出請(qǐng)求的用戶(hù)接收的資源請(qǐng)求的同時(shí),信賴(lài)域向發(fā)布域請(qǐng)求關(guān)于用戶(hù)的任何所需聲明的拖拉模式的流程圖;圖4是圖解說(shuō)明支持聯(lián)合單一注冊(cè)操作的聯(lián)合體環(huán)境的方框圖;圖5是描述利用位于發(fā)布域和信賴(lài)域的信任代理之間的直接通信,發(fā)布方核實(shí)的擁有證明質(zhì)詢(xún)的調(diào)用流圖;圖6是描述利用位于發(fā)布域和信賴(lài)域的信任代理之間的直接通信,信賴(lài)方核實(shí)的擁有證明質(zhì)詢(xún)的調(diào)用流圖;
圖7是描述發(fā)布方核實(shí)的擁有證明質(zhì)詢(xún)的調(diào)用流圖,其間位于發(fā)布域和信賴(lài)域的信任代理通過(guò)信任中介通信;圖8是描述信賴(lài)方核實(shí)的擁有證明質(zhì)詢(xún)的調(diào)用流圖,其間位于發(fā)布域和信賴(lài)域的信任代理通過(guò)信任中介通信。
具體實(shí)施例方式
一般來(lái)說(shuō),可構(gòu)成或與本發(fā)明相關(guān)的設(shè)備包括各種數(shù)據(jù)處理技術(shù)。于是,作為背景,在更詳細(xì)地描述本發(fā)明之前,說(shuō)明分布式數(shù)據(jù)處理系統(tǒng)內(nèi)硬件和軟件組件的典型組織。
現(xiàn)在參見(jiàn)附圖,圖1描述了數(shù)據(jù)處理系統(tǒng)的典型網(wǎng)絡(luò),每個(gè)數(shù)據(jù)處理系統(tǒng)可實(shí)現(xiàn)本發(fā)明。分布式數(shù)據(jù)處理系統(tǒng)100包含網(wǎng)絡(luò)101,網(wǎng)絡(luò)101是可用于提供在分布式數(shù)據(jù)處理系統(tǒng)100內(nèi)連接在一起的各種設(shè)備和計(jì)算機(jī)之間的通信鏈路的媒體。網(wǎng)絡(luò)101可包括諸如有線(xiàn)或光纜之類(lèi)的永久連接,或者通過(guò)電話(huà)或無(wú)線(xiàn)通信產(chǎn)生的暫時(shí)連接。在所述例子中,服務(wù)器102和服務(wù)器103隨同存儲(chǔ)單元104一起與網(wǎng)絡(luò)101連接。另外,客戶(hù)機(jī)105-107也與網(wǎng)絡(luò)101連接??蛻?hù)機(jī)105-107和服務(wù)器102-103可由各種計(jì)算設(shè)備表示,例如大型機(jī)、個(gè)人計(jì)算機(jī)、個(gè)人數(shù)字助理(PDA)等。分布式數(shù)據(jù)處理系統(tǒng)100可包括未示出的另外的服務(wù)器、客戶(hù)機(jī)、路由器、其它設(shè)備、以及對(duì)等結(jié)構(gòu)。
在所述例子中,分布式數(shù)據(jù)處理系統(tǒng)100可包括具有網(wǎng)絡(luò)101的因特網(wǎng),代表使用各種協(xié)議,例如LDAP(輕量直接訪(fǎng)問(wèn)協(xié)議)、TCP/IP(傳送控制協(xié)議/因特網(wǎng)協(xié)議)、HTTP(超文本傳送協(xié)議)等彼此通信的網(wǎng)絡(luò)和網(wǎng)關(guān)的全球集合。當(dāng)然,分布式數(shù)據(jù)處理系統(tǒng)100還可包括許多不同類(lèi)型的網(wǎng)絡(luò),例如企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)(LAN)或者廣域網(wǎng)(WAN)。例如,服務(wù)器102直接支持客戶(hù)機(jī)109和網(wǎng)絡(luò)110,網(wǎng)絡(luò)110包含無(wú)線(xiàn)通信鏈路。支持網(wǎng)絡(luò)的電話(huà)機(jī)111通過(guò)無(wú)線(xiàn)鏈路112連接網(wǎng)絡(luò)110,PDA 113通過(guò)無(wú)線(xiàn)鏈路114連接網(wǎng)絡(luò)110。電話(huà)機(jī)110和PDA 113也可利用適當(dāng)?shù)募夹g(shù),例如藍(lán)牙TM無(wú)線(xiàn)技術(shù),通過(guò)無(wú)線(xiàn)鏈路115在它們之間直接傳送數(shù)據(jù),產(chǎn)生所謂的個(gè)人區(qū)域網(wǎng)絡(luò)或者個(gè)人ad-hoc網(wǎng)絡(luò)。按照相同的方式,PDA 113可通過(guò)無(wú)線(xiàn)通信鏈路116向PDA 107傳送數(shù)據(jù)。
還可在各種硬件平臺(tái)和軟件環(huán)境中實(shí)現(xiàn)本發(fā)明。圖1A用作不同種類(lèi)的計(jì)算環(huán)境的一個(gè)例子,而不是對(duì)本發(fā)明的結(jié)構(gòu)限制。
現(xiàn)在參見(jiàn)圖1B,圖1B描述了如圖1A中所示的其中可實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的典型計(jì)算機(jī)結(jié)構(gòu)。數(shù)據(jù)處理系統(tǒng)120包括與內(nèi)部系統(tǒng)總線(xiàn)123連接的一個(gè)或多個(gè)中央處理單元(CPU)122,內(nèi)部系統(tǒng)總線(xiàn)123互連隨機(jī)存取存儲(chǔ)器(RAM)124、只讀存儲(chǔ)器126和輸入/輸出適配器128,輸入/輸出適配器128支持各種I/O裝置,例如打印機(jī)130、磁盤(pán)單元132或者未示出的其它裝置,例如音頻輸出系統(tǒng)等。系統(tǒng)總線(xiàn)123還連接提供對(duì)通信鏈路136的訪(fǎng)問(wèn)的通信適配器134。用戶(hù)接口適配器148連接各種用戶(hù)裝置,例如鍵盤(pán)140和鼠標(biāo)142、或者未示出的其它裝置,例如觸摸屏、鐵筆、麥克風(fēng)等。顯示適配器144連接系統(tǒng)總線(xiàn)123和顯示裝置146。
本領(lǐng)域的普通技術(shù)人員會(huì)認(rèn)識(shí)到圖1B的硬件可根據(jù)系統(tǒng)實(shí)現(xiàn)而變化。例如,系統(tǒng)可具有一個(gè)或多個(gè)處理器,例如IntelPentium處理器和一個(gè)數(shù)字信號(hào)處理器(DSP),以及一種或多種易失性和非易失性存儲(chǔ)器。除了圖1B中描述的硬件之外,或者代替圖1B中描述的硬件,可使用其它外設(shè)。描述的例子并不意味著對(duì)本發(fā)明的結(jié)構(gòu)限制。
除了能夠在各種硬件平臺(tái)上實(shí)現(xiàn)之外,本發(fā)明還可在各種軟件環(huán)境中實(shí)現(xiàn)。典型的操作系統(tǒng)可用于控制每個(gè)數(shù)據(jù)處理系統(tǒng)內(nèi)的程序執(zhí)行。例如,一個(gè)設(shè)備可運(yùn)行Unix操作系統(tǒng),而另一設(shè)備可包括簡(jiǎn)單的Java運(yùn)行時(shí)間環(huán)境。典型的計(jì)算機(jī)平臺(tái)可包括瀏覽器,它是眾所周知的用于訪(fǎng)問(wèn)各種格式的超文本文件,例如圖形文件、字處理文件、擴(kuò)展置標(biāo)語(yǔ)言(XML)、超文本置標(biāo)語(yǔ)言(HTML)、手持式裝置置標(biāo)語(yǔ)言(HDML)、無(wú)線(xiàn)置標(biāo)語(yǔ)言(WML)、以及各種其它格式和類(lèi)型的文件的應(yīng)用軟件。還應(yīng)注意到圖1A中所示的分布式數(shù)據(jù)處理系統(tǒng)預(yù)期完全能夠支持各種對(duì)等子網(wǎng)和對(duì)等服務(wù)。
現(xiàn)在參見(jiàn)圖1C,數(shù)據(jù)流程圖舉例說(shuō)明當(dāng)客戶(hù)機(jī)試圖訪(fǎng)問(wèn)位于服務(wù)器的受保護(hù)資源時(shí),可使用的典型驗(yàn)證過(guò)程。如圖所示,位于客戶(hù)機(jī)工作站150的用戶(hù)試圖通過(guò)在客戶(hù)機(jī)工作站上執(zhí)行的用戶(hù)的Web瀏覽器,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)訪(fǎng)問(wèn)位于服務(wù)器151上的受保護(hù)資源。受保護(hù)資源由只可被經(jīng)驗(yàn)證和批準(zhǔn)的用戶(hù)訪(fǎng)問(wèn)的統(tǒng)一資源定位符(URL),或者更一般地說(shuō),統(tǒng)一資源標(biāo)識(shí)符(URI)識(shí)別。計(jì)算機(jī)網(wǎng)絡(luò)可以是因特網(wǎng)、企業(yè)內(nèi)部網(wǎng)或者其它網(wǎng)絡(luò),如圖1A或圖1B中所示,服務(wù)器可以是Web應(yīng)用程序服務(wù)器(WAS)、服務(wù)器應(yīng)用程序、Servlet進(jìn)程等。
當(dāng)用戶(hù)請(qǐng)求受保護(hù)資源,例如域“ibm.com”內(nèi)的Web頁(yè)(步驟152)時(shí),啟動(dòng)該進(jìn)程。Web瀏覽器(或者相關(guān)應(yīng)用程序或小程序)產(chǎn)生HTTP請(qǐng)求消息,所述HTTP請(qǐng)求消息被發(fā)送給駐留域“ibm.com”的Web服務(wù)器(步驟153)。服務(wù)器確定它不具有關(guān)于該客戶(hù)機(jī)的現(xiàn)行會(huì)話(huà)(步驟154),從而服務(wù)器通過(guò)向客戶(hù)機(jī)發(fā)送某一類(lèi)型的驗(yàn)證質(zhì)詢(xún),要求用戶(hù)執(zhí)行驗(yàn)證進(jìn)程(步驟155)。驗(yàn)證質(zhì)詢(xún)可以呈各種格式,例如超文本置標(biāo)語(yǔ)言(HTML)形式。用戶(hù)隨后提供請(qǐng)求或要求的信息(步驟156),例如用戶(hù)標(biāo)識(shí)符和相關(guān)口令,或者客戶(hù)機(jī)可自動(dòng)返回某些信息。
驗(yàn)證響應(yīng)信息被發(fā)送給服務(wù)器(步驟157),此時(shí),服務(wù)器通過(guò)取回先前提交的注冊(cè)信息,并匹配提供的驗(yàn)證信息和用戶(hù)的保存信息,驗(yàn)證用戶(hù)或客戶(hù)機(jī)(步驟158)。假定驗(yàn)證成功,那么為經(jīng)驗(yàn)證的用戶(hù)或客戶(hù)機(jī)建立現(xiàn)行會(huì)話(huà)。
服務(wù)器隨后取回所請(qǐng)求的Web頁(yè),并向客戶(hù)機(jī)發(fā)送HTTP響應(yīng)消息(步驟159)。此時(shí),通過(guò)點(diǎn)擊超文本鏈接,用戶(hù)可在瀏覽器內(nèi)請(qǐng)求“ibm.com”內(nèi)的另一頁(yè)面(步驟160),瀏覽器向服務(wù)器發(fā)送另一HTTP請(qǐng)求(步驟161)。此時(shí),服務(wù)器認(rèn)識(shí)到該用戶(hù)已具有現(xiàn)行會(huì)話(huà)(步驟162),服務(wù)器在另一HTTP響應(yīng)消息中,把所請(qǐng)求的Web頁(yè)送回客戶(hù)機(jī)(步驟163)。雖然圖1C描述了典型的現(xiàn)有進(jìn)程,不過(guò)應(yīng)注意可描述其它備選會(huì)話(huà)狀態(tài)管理技術(shù),例如使用cookie識(shí)別具有現(xiàn)行會(huì)話(huà)的用戶(hù),所述現(xiàn)行會(huì)話(huà)可包括使用和用于提供驗(yàn)證證據(jù)的cookie相同的cookie。
現(xiàn)在參見(jiàn)圖1D,網(wǎng)絡(luò)圖舉例說(shuō)明了其中可實(shí)現(xiàn)本發(fā)明的典型Web環(huán)境。在該環(huán)境中,客戶(hù)機(jī)171的瀏覽器170的用戶(hù)想要訪(fǎng)問(wèn)DNS域173中web應(yīng)用程序服務(wù)器172上,或者DNS域175中web應(yīng)用程序服務(wù)器174上的受保護(hù)資源。
按照和圖1C中所示相似的方式,用戶(hù)可請(qǐng)求位于許多域之一的受保護(hù)資源。和只表示位于特定域的單一服務(wù)器的圖1C相反,圖1D中的每個(gè)域具有多個(gè)服務(wù)器。特別地,每個(gè)域可具有相關(guān)的驗(yàn)證服務(wù)器176和177。
本例中,在客戶(hù)機(jī)171發(fā)出關(guān)于位于域173的受保護(hù)資源的請(qǐng)求時(shí),web應(yīng)用程序服務(wù)器172確定它不具有關(guān)于客戶(hù)機(jī)171的現(xiàn)行會(huì)話(huà),它請(qǐng)求驗(yàn)證服務(wù)器176執(zhí)行關(guān)于客戶(hù)機(jī)171的恰當(dāng)驗(yàn)證操作。驗(yàn)證服務(wù)器176把驗(yàn)證操作的結(jié)果傳送給web應(yīng)用程序服務(wù)器172。如果用戶(hù)(或者代表用戶(hù)的瀏覽器170或客戶(hù)機(jī)171)被成功驗(yàn)證,那么web應(yīng)用程序服務(wù)器172建立關(guān)于客戶(hù)機(jī)171的會(huì)話(huà),并返回所請(qǐng)求的受保護(hù)資源。一般來(lái)說(shuō),一旦用戶(hù)被驗(yàn)證服務(wù)器驗(yàn)證,那么可確定并在瀏覽器的cookie超高速緩存中保存一個(gè)cookie。圖1D只是可在多個(gè)服務(wù)器之間共享一個(gè)域的處理資源,尤其是以便執(zhí)行驗(yàn)證操作的一種方式的例子。
按照相似的方式,在客戶(hù)機(jī)171發(fā)出關(guān)于域175的受保護(hù)資源的請(qǐng)求之后,驗(yàn)證服務(wù)器177執(zhí)行關(guān)于客戶(hù)機(jī)171的恰當(dāng)驗(yàn)證操作,之后,web應(yīng)用程序服務(wù)器174建立關(guān)于客戶(hù)機(jī)171的會(huì)話(huà),并返回所請(qǐng)求的受保護(hù)資源。從而,圖1D圖解說(shuō)明客戶(hù)機(jī)171可具有在不同域中的多個(gè)并存會(huì)話(huà),但是為了建立這些并存會(huì)話(huà),需要完成多個(gè)驗(yàn)證操作。
現(xiàn)在參見(jiàn)圖1E,方框圖描述了向用戶(hù)要求多個(gè)驗(yàn)證操作的典型在線(xiàn)交易的例子。再次參見(jiàn)圖1C和圖1D,在獲得對(duì)受控資源的訪(fǎng)問(wèn)之前,要求用戶(hù)完成驗(yàn)證操作,如圖1C中所示。雖然圖1C中未示出,驗(yàn)證管理程序可部署在服務(wù)器151上,取回和使用驗(yàn)證用戶(hù)所需的用戶(hù)信息。如圖1D中所示,用戶(hù)可具有在不同域173和175內(nèi)的多個(gè)當(dāng)前會(huì)話(huà),雖然圖1D中未示出,代替驗(yàn)證服務(wù)器或者除了驗(yàn)證服務(wù)器之外,每個(gè)域可采用驗(yàn)證管理程序。按照類(lèi)似的方式,圖1E還描述了一組域,每個(gè)域可支持某一類(lèi)型的驗(yàn)證管理程序。圖1E圖解說(shuō)明了當(dāng)訪(fǎng)問(wèn)要求完成關(guān)于每個(gè)域的驗(yàn)證操作的多個(gè)域時(shí),用戶(hù)可能遇到的一些問(wèn)題。
用戶(hù)190可向ISP域191注冊(cè),域191可支持驗(yàn)證用戶(hù),以便完成與域191的交易的驗(yàn)證管理程序192。ISP域191可以是提供因特網(wǎng)連接服務(wù)、電子郵件服務(wù),可能還有其它電子商務(wù)服務(wù)的因特網(wǎng)服務(wù)提供者(ISP)。另一方面,ISP域191可以是用戶(hù)190頻繁訪(fǎng)問(wèn)的因特網(wǎng)入口。
類(lèi)似地,域193、195和197代表典型的web服務(wù)提供者。政府域193支持驗(yàn)證用戶(hù),以便完成各種和政府相關(guān)的交易的驗(yàn)證管理程序194。銀行業(yè)域195支持驗(yàn)證用戶(hù),以便完成與在線(xiàn)銀行的交易的驗(yàn)證管理程序196。電子商務(wù)域197支持驗(yàn)證用戶(hù),以便完成在線(xiàn)購(gòu)買(mǎi)的驗(yàn)證管理程序198。
如前所述,當(dāng)用戶(hù)試圖通過(guò)訪(fǎng)問(wèn)位于不同域的資源,在因特網(wǎng)或萬(wàn)維網(wǎng)內(nèi)從一個(gè)域轉(zhuǎn)移到另一域時(shí),用戶(hù)會(huì)經(jīng)歷多個(gè)用戶(hù)驗(yàn)證請(qǐng)求或要求,所述多個(gè)用戶(hù)驗(yàn)證請(qǐng)求或要求會(huì)顯著減緩用戶(hù)越過(guò)一組域的進(jìn)程。使用圖1E作為例證的環(huán)境,用戶(hù)190可卷入與電子商務(wù)域197的復(fù)雜在線(xiàn)交易中,其中用戶(hù)試圖購(gòu)買(mǎi)局限于至少18歲,并且具有合法駕照、有效信用卡和美國(guó)銀行賬戶(hù)的用戶(hù)的在線(xiàn)服務(wù)。該在線(xiàn)交易可涉及域191、193、195和197。
一般來(lái)說(shuō),用戶(hù)不會(huì)在參與特定在線(xiàn)交易的每個(gè)域內(nèi)保持身份。本例中,用戶(hù)190可能已向用戶(hù)的ISP注冊(cè)了他或她的身份,但是為了完成在線(xiàn)交易,還需要用戶(hù)向域193、195和197驗(yàn)證。如果每個(gè)域不保持用戶(hù)的身份,那么用戶(hù)的在線(xiàn)交易會(huì)失敗。即使用戶(hù)可被每個(gè)域驗(yàn)證,也不能確保不同的域能夠在它們之間傳送信息,以便完成用戶(hù)的交易。對(duì)于圖1E中所示的用戶(hù)190來(lái)說(shuō),不存在允許用戶(hù)190向第一web站點(diǎn),例如ISP 191驗(yàn)證,隨后向其它web服務(wù)提供者,例如域193、195和197傳送驗(yàn)證權(quán)標(biāo),以便實(shí)現(xiàn)單一注冊(cè)的現(xiàn)有環(huán)境。
在當(dāng)前技術(shù)的在先簡(jiǎn)要描述下,剩余附圖的描述涉及本發(fā)明可在其中工作的聯(lián)合計(jì)算機(jī)環(huán)境。但是,在更詳細(xì)論述本發(fā)明之前,先介紹一些術(shù)語(yǔ)。
術(shù)語(yǔ)術(shù)語(yǔ)“實(shí)體”或“參與者”一般指的是代表組織、個(gè)人或者另一系統(tǒng)工作的組織、個(gè)人或系統(tǒng)。術(shù)語(yǔ)“域”暗示網(wǎng)絡(luò)環(huán)境中的其它特性,但是術(shù)語(yǔ)“實(shí)體”、“參與者”和“域”可交替使用。例如,術(shù)語(yǔ)“域”可以指DNS(域名系統(tǒng))域,或者更一般地,涉及包括表現(xiàn)為外部實(shí)體的邏輯單元的各種裝置和應(yīng)用程序的數(shù)據(jù)處理系統(tǒng)。
術(shù)語(yǔ)“請(qǐng)求”和“響應(yīng)”應(yīng)被理解為包含適于特定操作中所涉及的信息傳送的數(shù)據(jù)格式化,例如消息、通信協(xié)議信息或者其它相關(guān)信息。受保護(hù)資源是對(duì)其的訪(fǎng)問(wèn)受控或受限的資源(應(yīng)用程序、目標(biāo)程序、文檔、頁(yè)面、文件、可執(zhí)行代碼或者其它計(jì)算資源,通信資源等)。
權(quán)標(biāo)提供成功操作的直接證據(jù),并由執(zhí)行該操作的實(shí)體產(chǎn)生,例如在成功的驗(yàn)證操作之后,產(chǎn)生驗(yàn)證權(quán)標(biāo)。Kerberos權(quán)標(biāo)是可用在本發(fā)明中的驗(yàn)證權(quán)標(biāo)的一個(gè)例子。在Kohl等的“The KerberosNetwork Authentication Service(V5)”(Internet EngineeringTask Force(IETF)Request for Comments(RFC)1510,09/1993)中可找到關(guān)于Kerberos的更多信息。
聲明提供某一動(dòng)作的間接證據(jù)。聲明可提供身份、驗(yàn)證、屬性、授權(quán)決定、或其它信息和/或操作的間接證據(jù)。驗(yàn)證聲明提供不是驗(yàn)證服務(wù)方,但是聽(tīng)從驗(yàn)證服務(wù)方的實(shí)體的驗(yàn)證的間接證據(jù)。
安全聲明置標(biāo)語(yǔ)言(SAML)聲明是可在本發(fā)明內(nèi)使用的聲明格式的一個(gè)例子。SAML由the Organization for the Advancement ofStructured Information Standards(OASIS)發(fā)布,該組織是非贏(yíng)利性全球協(xié)會(huì)。在“Assertions and Protocol for the OASIS SecurityAssertion Markup Language(SAML)”,Committee Specification01,05/31/2002中如下描述SAML安全聲明置標(biāo)語(yǔ)言(SAML)是交換安全信息的XML結(jié)構(gòu)。以關(guān)于主題的聲明的形式表述安全信息,主題是在某一安全域中具有身份的實(shí)體(人或計(jì)算機(jī))。主題的典型例子是由特定因特網(wǎng)DNS域中他或她的電子郵件地址識(shí)別的人。聲明可傳達(dá)和主題執(zhí)行的驗(yàn)證行為、主題的屬性、以及是否允許主題訪(fǎng)問(wèn)某些資源的驗(yàn)證判定相關(guān)的信息。聲明可被表示成XML結(jié)構(gòu),并且具有嵌套結(jié)構(gòu),從而單個(gè)聲明可包含關(guān)于驗(yàn)證、授權(quán)和屬性的數(shù)個(gè)不同內(nèi)部陳述。注意包含驗(yàn)證陳述的聲明只描述先前發(fā)生的驗(yàn)證行為。聲明由SAML管理機(jī)構(gòu),即驗(yàn)證管理機(jī)構(gòu)、屬性管理機(jī)構(gòu)和策略判定點(diǎn)發(fā)布。SAML定義一種協(xié)議,借助該協(xié)議,客戶(hù)機(jī)可向SAML管理機(jī)構(gòu)請(qǐng)求聲明,并從SAML管理機(jī)構(gòu)獲得響應(yīng)。由XML請(qǐng)求和響應(yīng)消息格式構(gòu)成的這種協(xié)議可綁定在許多不同的底層通信和傳送協(xié)議上;SAML目前對(duì)HTTP上的SOAP定義一種綁定。SAML管理機(jī)構(gòu)可使用各種信息源,例如外部策略庫(kù)和在請(qǐng)求中作為輸入接收的聲明來(lái)產(chǎn)生他們的響應(yīng)。從而,雖然客戶(hù)機(jī)始終消耗聲明,但是SAM管理機(jī)構(gòu)既是聲明的生產(chǎn)者,又是聲明的消費(fèi)者。
SAML規(guī)范規(guī)定聲明是提供發(fā)布者做出的一個(gè)或多個(gè)陳述的信息包。SAML允許發(fā)布者產(chǎn)生三種不同的聲明陳述驗(yàn)證,其中在特定時(shí)間借助特定手段驗(yàn)證指定主題;授權(quán),其中批準(zhǔn)或拒絕允許指定主題訪(fǎng)問(wèn)指定資源的請(qǐng)求;和屬性,其中使指定主題和提供的屬性相聯(lián)系。如下進(jìn)一步所述,當(dāng)需要時(shí),各種聲明格式可被轉(zhuǎn)換成其它聲明格式。
驗(yàn)證是確認(rèn)用戶(hù)或代表用戶(hù)提供的一組憑證的過(guò)程。通過(guò)核實(shí)用戶(hù)知道的某事,用戶(hù)具有的某物或者用戶(hù)是某人,即關(guān)于用戶(hù)的某些物理特征,完成驗(yàn)證。用戶(hù)知道的某事可包括共享秘密,例如用戶(hù)的口令,或者通過(guò)核實(shí)只有特定用戶(hù)知道的某事,例如用戶(hù)的加密密鑰,完成用戶(hù)知道的某事的核實(shí)。用戶(hù)擁有的某物可包括智能卡或者硬件權(quán)標(biāo)。關(guān)于用戶(hù)的一些物理特征可包括生物統(tǒng)計(jì)輸入,例如指紋或視網(wǎng)膜圖。
驗(yàn)證憑證是在各種驗(yàn)證協(xié)議中使用的一組質(zhì)詢(xún)/響應(yīng)信息。例如,用戶(hù)姓名和口令組合是最常見(jiàn)形式的驗(yàn)證憑證。其它形式的驗(yàn)證憑證可包括各種形式的質(zhì)詢(xún)/響應(yīng)信息,公共密鑰基礎(chǔ)結(jié)構(gòu)(PKI)證書(shū)、智能卡、生物統(tǒng)計(jì)等。驗(yàn)證憑證不同于驗(yàn)證聲明驗(yàn)證憑證由用戶(hù)借助驗(yàn)證服務(wù)器或服務(wù),以驗(yàn)證協(xié)議序列的一部分的形式呈現(xiàn),而驗(yàn)證聲明是關(guān)于用戶(hù)的驗(yàn)證憑證的成功提供和確認(rèn)的陳述,當(dāng)需要時(shí),隨后可在實(shí)體之間傳送。
區(qū)別現(xiàn)有的單一注冊(cè)解決方案如上所述,現(xiàn)有的單一注冊(cè)解決方案局限于其中在參與企業(yè)之間存在預(yù)定確定的商業(yè)協(xié)議的同類(lèi)環(huán)境。這些商業(yè)協(xié)議建立信任,并定義在企業(yè)之間信息的安全傳送。這些商業(yè)協(xié)議還包括關(guān)于如何把用戶(hù)身份從一個(gè)企業(yè)轉(zhuǎn)換或映射到另一企業(yè),以及如何在參與企業(yè)之間傳送用于擔(dān)保用戶(hù)的信息的規(guī)則方面的技術(shù)協(xié)議。
換句話(huà)說(shuō),以前的單一注冊(cè)解決方案允許根據(jù)預(yù)先達(dá)成或預(yù)先設(shè)定的協(xié)議,信任由不同企業(yè)產(chǎn)生的驗(yàn)證聲明(以及在該聲明中提供的用戶(hù)的身份)。每個(gè)截然不同的企業(yè)知道如何產(chǎn)生和說(shuō)明可被已交換類(lèi)似協(xié)議的其它企業(yè),例如電子商務(wù)市場(chǎng)內(nèi)的企業(yè)理解的驗(yàn)證聲明。這些同類(lèi)環(huán)境緊密結(jié)合,因?yàn)榇嬖谄髽I(yè)已知的,用于在這些系統(tǒng)間映射用戶(hù)身份的確定關(guān)系。由于用于建立單一注冊(cè)環(huán)境的商業(yè)協(xié)議的緣故,這種緊密結(jié)合是可能的。
本發(fā)明的聯(lián)合體模型在萬(wàn)維網(wǎng)的環(huán)境中,用戶(hù)逐漸期望具有在極少考慮各個(gè)特定域之間的信息屏障的情況下,從與一個(gè)因特網(wǎng)域的應(yīng)用程序交互作用跳到與另一域的另一應(yīng)用交互作用的能力。用戶(hù)不希望由于關(guān)于單一交易,不得不向多個(gè)域驗(yàn)證所帶來(lái)的挫折。換句話(huà)說(shuō),用戶(hù)期望組織應(yīng)協(xié)作,但是用戶(hù)通常希望域尊重他們的隱私。另外,用戶(hù)寧愿限制永久保存私人信息的域。在快速發(fā)展的異類(lèi)環(huán)境中,存在這些用戶(hù)期望,在所述異類(lèi)環(huán)境中,許多企業(yè)和組織正在發(fā)布競(jìng)爭(zhēng)性驗(yàn)證技術(shù)。
和現(xiàn)有系統(tǒng)相反,本發(fā)明提供一種聯(lián)合體模型,以便在特定企業(yè)之間缺少具體的、預(yù)先確定的商業(yè)和技術(shù)協(xié)議的情況下,允許企業(yè)向用戶(hù)提供單一注冊(cè)經(jīng)歷。換句話(huà)說(shuō),本發(fā)明支持聯(lián)合異類(lèi)環(huán)境。作為本發(fā)明目的的一個(gè)例子,再次參見(jiàn)圖1E,用戶(hù)190能夠向域191驗(yàn)證,隨后使域191向交易中涉及的每個(gè)下游域提供恰當(dāng)?shù)穆暶?。這些下游域需要能夠理解并信任驗(yàn)證聲明和/或其它類(lèi)型的聲明,即使在域191和這些其它下游域之間不存在任何預(yù)先確定的聲明格式。除了識(shí)別聲明之外,下游域需要能夠把包含在聲明內(nèi)的身份轉(zhuǎn)換成代表特定域內(nèi)的用戶(hù)190的身份,即使不存在任何預(yù)先確定的身份映射關(guān)系。
本發(fā)明以聯(lián)合體環(huán)境為目標(biāo)。一般來(lái)說(shuō),企業(yè)具有它自己的用戶(hù)注冊(cè)處,并維持與它自己的一組用戶(hù)的關(guān)系。每個(gè)企業(yè)一般具有自己的驗(yàn)證這些用戶(hù)的手段。但是,本發(fā)明的聯(lián)合體方案允許企業(yè)集體協(xié)作,從而通過(guò)企業(yè)在企業(yè)聯(lián)合體中的參與,一個(gè)企業(yè)中的用戶(hù)可影響與一組企業(yè)的關(guān)系??蓽?zhǔn)許用戶(hù)訪(fǎng)問(wèn)位于任意聯(lián)合體企業(yè)的資源,好象用戶(hù)具有與每個(gè)企業(yè)的直接關(guān)系一樣。不需要用戶(hù)向關(guān)心的每個(gè)企業(yè)注冊(cè),并且不需要用戶(hù)不斷識(shí)別并驗(yàn)證他們自己。從而,在聯(lián)合體環(huán)境中,驗(yàn)證方案為信息技術(shù)中,快速發(fā)展的異類(lèi)環(huán)境內(nèi)的單一注冊(cè)體驗(yàn)創(chuàng)造條件。
本發(fā)明中,聯(lián)合體是協(xié)作向用戶(hù)提供單一注冊(cè)、易于使用的體驗(yàn)的一組不同實(shí)體,例如企業(yè)、組織、協(xié)會(huì)等。本發(fā)明中,聯(lián)合體環(huán)境不同于典型的單一注冊(cè)環(huán)境,因?yàn)閮蓚€(gè)企業(yè)不必具有直接的、預(yù)先確定的定義如何傳送及傳送和用戶(hù)有關(guān)的哪些信息的關(guān)系。在聯(lián)合體環(huán)境中,實(shí)體提供服務(wù),所述服務(wù)處理驗(yàn)證用戶(hù),接受其它實(shí)體提供的驗(yàn)證聲明,例如驗(yàn)證權(quán)標(biāo),和提供某一形式的被擔(dān)保用戶(hù)身份向在本地實(shí)體內(nèi)明白的用戶(hù)身份的轉(zhuǎn)換。
聯(lián)合體減輕服務(wù)提供者的負(fù)擔(dān)。服務(wù)提供者可依賴(lài)于它與聯(lián)合體整體的信任關(guān)系;服務(wù)提供者不需要管理諸如用戶(hù)口令信息之類(lèi)的驗(yàn)證信息,因?yàn)樗梢揽坑脩?hù)的驗(yàn)證主域完成的驗(yàn)證。
本發(fā)明還涉及一種聯(lián)合身份管理系統(tǒng),所述聯(lián)合身份管理系統(tǒng)建立其中松散結(jié)合的驗(yàn)證、用戶(hù)登記、用戶(hù)簡(jiǎn)介管理和/或授權(quán)服務(wù)跨越安全域合作的基礎(chǔ)。聯(lián)合身份管理允許駐留在不同域中的服務(wù)安全地協(xié)作和合作,即使在這些不同域的底層安全機(jī)制和操作系統(tǒng)平臺(tái)方面存在差異。一旦用戶(hù)確定他們?cè)诼?lián)合體中的參與,那么就確定了單一注冊(cè)體驗(yàn)。
主域、發(fā)布方和信賴(lài)方如下更詳細(xì)所述,本發(fā)明提供顯著的用戶(hù)好處。本發(fā)明允許用戶(hù)在第一實(shí)體驗(yàn)證,下面把所述第一實(shí)體稱(chēng)為用戶(hù)的主域或者驗(yàn)證主域。第一實(shí)體可充當(dāng)發(fā)布方,發(fā)布供在第二實(shí)體使用的關(guān)于該用戶(hù)的驗(yàn)證聲明。在不必明確向第二實(shí)體驗(yàn)證的情況下,通過(guò)提供第一實(shí)體發(fā)布的驗(yàn)證聲明,用戶(hù)可訪(fǎng)問(wèn)位于不同的第二實(shí)體(稱(chēng)為信賴(lài)方)方的受保護(hù)資源。從發(fā)布方傳送給信賴(lài)方的信息采取聲明的形式,該聲明可包含呈陳述形式的不同類(lèi)型的信息。例如,聲明可以是關(guān)于用戶(hù)的經(jīng)驗(yàn)證身份的陳述,或者可以是關(guān)于和特定用戶(hù)相聯(lián)系的用戶(hù)屬性信息的陳述。
現(xiàn)在參見(jiàn)圖2A,方框圖就用戶(hù)相對(duì)于第一聯(lián)合企業(yè)啟動(dòng)的交易,描述了聯(lián)合體環(huán)境的術(shù)語(yǔ),作為響應(yīng),第一聯(lián)合企業(yè)調(diào)用位于聯(lián)合體環(huán)境內(nèi)下游實(shí)體上的操作。圖2A表示對(duì)于指定的聯(lián)合操作,術(shù)語(yǔ)會(huì)根據(jù)聯(lián)合體內(nèi)的實(shí)體的觀(guān)點(diǎn)而不同。用戶(hù)202通過(guò)關(guān)于企業(yè)204的受保護(hù)資源的請(qǐng)求,啟動(dòng)交易。如果用戶(hù)202已被企業(yè)204驗(yàn)證,那么對(duì)于該聯(lián)合會(huì)話(huà)來(lái)說(shuō),企業(yè)204是用戶(hù)的主域。假定交易需要企業(yè)206的某一類(lèi)操作,并且企業(yè)204向企業(yè)206傳送聲明,那么企業(yè)204是該特定操作的發(fā)布域,企業(yè)206是該操作的信賴(lài)域。假定交易需要其它操作,并且企業(yè)206向企業(yè)208傳送聲明,那么企業(yè)206是所請(qǐng)求操作的發(fā)布域,企業(yè)208是該操作的信賴(lài)域。
在本發(fā)明的聯(lián)合體環(huán)境中,用戶(hù)在該處進(jìn)行驗(yàn)證的域被稱(chēng)為用戶(hù)的(驗(yàn)證)主域。主域保持驗(yàn)證憑證。主域可以是用戶(hù)的雇主,用戶(hù)的ISP或者其它一些服務(wù)提供者。在聯(lián)合體環(huán)境內(nèi)可能存在可充分用戶(hù)主域的多個(gè)企業(yè),因?yàn)榭赡艽嬖诰哂挟a(chǎn)生并確認(rèn)用戶(hù)的驗(yàn)證憑證的能力的多個(gè)企業(yè)。
從驗(yàn)證的觀(guān)點(diǎn)來(lái)看,驗(yàn)證聲明的發(fā)布方一般是用戶(hù)的驗(yàn)證主域。用戶(hù)的主域可以也可不保持用戶(hù)的個(gè)人信息或簡(jiǎn)介信息。從而,從涉及個(gè)人可識(shí)別的信息、個(gè)性化信息或者其它用戶(hù)屬性的屬性來(lái)看,屬性聲明的發(fā)布方可以是也可以不是用戶(hù)的驗(yàn)證主域。為了避免任何混亂,不同的術(shù)語(yǔ)可被用于屬性主域和驗(yàn)證主域,但是下面術(shù)語(yǔ)“主域”可被解釋為指的是驗(yàn)證主域。
但是,在指定的聯(lián)合會(huì)話(huà)的范圍內(nèi),通常有且只有一個(gè)充當(dāng)用戶(hù)主域的域。一旦用戶(hù)已向該域證實(shí)自己,那么在該會(huì)話(huà)的持續(xù)時(shí)間內(nèi),聯(lián)合體中的所有其它域或企業(yè)被看作是信賴(lài)方。
假定本發(fā)明提供可在使對(duì)現(xiàn)有的非聯(lián)合結(jié)構(gòu)的影響降至最小的同時(shí),增加到現(xiàn)有系統(tǒng)中的聯(lián)合結(jié)構(gòu),由于主域也可參與到聯(lián)合體環(huán)境中,因此不會(huì)改變?cè)谟脩?hù)主域的驗(yàn)證。換句話(huà)說(shuō),即使主域被并入根據(jù)本發(fā)明實(shí)現(xiàn)的聯(lián)合體環(huán)境中,在用戶(hù)的主域執(zhí)行驗(yàn)證操作時(shí),用戶(hù)也會(huì)具有相同的最終用戶(hù)體驗(yàn)。不過(guò)應(yīng)注意的是,不是指定企業(yè)的所有用戶(hù)都必須參與該聯(lián)合體環(huán)境。
此外,由于主域還可參與到聯(lián)合體環(huán)境中,因此用戶(hù)注冊(cè),例如用戶(hù)賬戶(hù)的建立不會(huì)被改變。用戶(hù)通過(guò)與聯(lián)合體環(huán)境無(wú)關(guān)的注冊(cè)過(guò)程,在某一域建立一個(gè)賬戶(hù)。換句話(huà)說(shuō),在主域的用戶(hù)賬戶(hù)的建立不包括在聯(lián)合體內(nèi)有效的賬戶(hù)信息,例如身份轉(zhuǎn)換信息的確定。如果存在能夠驗(yàn)證用戶(hù)的單一聯(lián)合域,即聯(lián)合體內(nèi)有且只有一個(gè)用戶(hù)已向其注冊(cè)的域,那么該域?qū)⑹冀K充當(dāng)用戶(hù)的主域,并且指導(dǎo)整個(gè)聯(lián)合體環(huán)境內(nèi)用戶(hù)的移動(dòng)。
如果在聯(lián)合體環(huán)境內(nèi),用戶(hù)具有多個(gè)可能的主域,那么用戶(hù)可通過(guò)一個(gè)以上的入口點(diǎn)進(jìn)入該聯(lián)合體。換句話(huà)說(shuō),用戶(hù)可在多個(gè)域具有賬戶(hù),并且這些域不必具有關(guān)于其它域的信息,也不必具有和用戶(hù)在其它域的身份有關(guān)的信息。
當(dāng)用戶(hù)在該處進(jìn)行驗(yàn)證的域被稱(chēng)為主域時(shí),發(fā)布域是發(fā)布供另一域,即信賴(lài)域使用的聲明的聯(lián)合體實(shí)體。發(fā)布域一般(不過(guò)不必要)是用戶(hù)的主域。從而,情況通常是發(fā)布方已通過(guò)典型的驗(yàn)證協(xié)議驗(yàn)證了用戶(hù),如上所述。但是,發(fā)布方先前可能充當(dāng)信賴(lài)方,從而它接收來(lái)自不同發(fā)布方的聲明。換句話(huà)說(shuō),由于用戶(hù)啟動(dòng)的交易可串聯(lián)通過(guò)聯(lián)合體環(huán)境內(nèi)的一系列企業(yè),因此接收方隨后可充當(dāng)下游交易的發(fā)布方。一般來(lái)說(shuō),具有代表用戶(hù)發(fā)布驗(yàn)證聲明的能力的任何域都可充當(dāng)發(fā)布域。
信賴(lài)域是接收來(lái)自發(fā)布方的聲明的域。信賴(lài)域能夠接受、信任和理解代表用戶(hù)的第三方,即發(fā)布域發(fā)布的聲明。依賴(lài)方的任務(wù)一般是使用適當(dāng)?shù)尿?yàn)證機(jī)構(gòu)解釋驗(yàn)證聲明。另外,信賴(lài)方有可能能夠驗(yàn)證特定用戶(hù),即充當(dāng)用戶(hù)的主域,不過(guò)依賴(lài)方也可能不能借助常規(guī)方法驗(yàn)證特定用戶(hù)。從而,信賴(lài)方是依靠用戶(hù)提供的驗(yàn)證聲明,向用戶(hù)提供單一注冊(cè)體驗(yàn),而不是作為與用戶(hù)的交互式會(huì)話(huà)的一部分,就用戶(hù)的驗(yàn)證憑證提示用戶(hù)的域或企業(yè)。
聯(lián)合體系統(tǒng)結(jié)構(gòu)—舊系統(tǒng)的聯(lián)合前端現(xiàn)在參見(jiàn)圖2B,方框圖描述了根據(jù)本發(fā)明的一個(gè)實(shí)施例,指定域的現(xiàn)有系統(tǒng)與本發(fā)明的一些聯(lián)合體系統(tǒng)結(jié)構(gòu)組件的結(jié)合。聯(lián)合體環(huán)境包括向用戶(hù)提供各種服務(wù)的聯(lián)合實(shí)體。用戶(hù)212與客戶(hù)裝置214交互作用,客戶(hù)裝置214可支持瀏覽器應(yīng)用程序216和各種其它客戶(hù)應(yīng)用程序218。用戶(hù)212與客戶(hù)裝置214、瀏覽器216或者充當(dāng)用戶(hù)和其它裝置及服務(wù)之間的接口的任何其它軟件截然不同。一些情況下,下述描述可區(qū)別在客戶(hù)應(yīng)用程序內(nèi)動(dòng)作的用戶(hù)和正在代表用戶(hù)動(dòng)作的客戶(hù)應(yīng)用程序。不過(guò),一般來(lái)說(shuō),請(qǐng)求者是可被假定為代表用戶(hù)行動(dòng)的中間人,例如客戶(hù)應(yīng)用程序、瀏覽器、SOPA客戶(hù)機(jī)等。
瀏覽器應(yīng)用程序216可以是包括許多模塊,例如HTTP通信組件220和置標(biāo)語(yǔ)言(ML)解釋器的典型瀏覽器。瀏覽器應(yīng)用程序還可支持可以需要也可不需要虛擬機(jī)運(yùn)行時(shí)間環(huán)境的插件,例如web服務(wù)客戶(hù)程序224,和/或可下載的支程序。web服務(wù)客戶(hù)程序224可使用簡(jiǎn)單對(duì)象訪(fǎng)問(wèn)協(xié)議(SOAP),它是定義分散的分布環(huán)境中結(jié)構(gòu)化和類(lèi)型化信息的交換的輕量協(xié)議。SOAP是一種基于XML的協(xié)議,由三部分組成定義描述消息中的內(nèi)容及如何處理所述內(nèi)容的框架的包絡(luò);表述應(yīng)用程序定義的數(shù)據(jù)類(lèi)型的實(shí)例的一組編碼規(guī)則;和代表遠(yuǎn)程程序調(diào)用和響應(yīng)的協(xié)定。用戶(hù)212可利用瀏覽器應(yīng)用程序216訪(fǎng)問(wèn)基于web的服務(wù),不過(guò)用戶(hù)212也可通過(guò)客戶(hù)裝置214上的其它web服務(wù)客戶(hù)應(yīng)用程序訪(fǎng)問(wèn)web服務(wù)。下面的附圖中表示的本發(fā)明的一些例子通過(guò)用戶(hù)的瀏覽器,采用HTTP重定向在聯(lián)合體環(huán)境中的實(shí)體間交換信息。但是,應(yīng)注意的是也可通過(guò)各種通信協(xié)議執(zhí)行本發(fā)明,本發(fā)明并不意味著局限于基于HTTP的通信。例如,當(dāng)需要時(shí),聯(lián)合體環(huán)境中的實(shí)體可直接通信;消息不需要通過(guò)用戶(hù)的瀏覽器被重定向。
可按照使聯(lián)合體環(huán)境所需的組件和現(xiàn)有系統(tǒng)結(jié)合的方式實(shí)現(xiàn)本發(fā)明。圖2B描述了把這些組件實(shí)現(xiàn)為現(xiàn)有系統(tǒng)的前端的一個(gè)實(shí)施例。聯(lián)合域的現(xiàn)存組件可被看作是舊應(yīng)用程序或者后端處理組件230,它包括和圖2C中所示相類(lèi)似的驗(yàn)證服務(wù)運(yùn)行時(shí)間(ASR)服務(wù)器232。當(dāng)域控制對(duì)應(yīng)用程序服務(wù)器234的訪(fǎng)問(wèn)時(shí),ASR服務(wù)器232負(fù)責(zé)驗(yàn)證用戶(hù),對(duì)應(yīng)用程序234的訪(fǎng)問(wèn)可被認(rèn)為是產(chǎn)生、取回或者以其它方式處理受保護(hù)的資源。域可繼續(xù)使用舊的用戶(hù)注冊(cè)應(yīng)用程序236關(guān)于對(duì)應(yīng)用程序服務(wù)器234的訪(fǎng)問(wèn)注冊(cè)用戶(hù)。驗(yàn)證注冊(cè)用戶(hù)所需的信息保存在舊的用戶(hù)注冊(cè)處238中。
在加入聯(lián)合體環(huán)境之后,域可在無(wú)聯(lián)合組件的干擾的情況下繼續(xù)操作。換句話(huà)說(shuō),域可被配置成使用戶(hù)能夠繼續(xù)直接訪(fǎng)問(wèn)特定的應(yīng)用程序服務(wù)器或者受保護(hù)資源,而不必經(jīng)過(guò)聯(lián)系點(diǎn)服務(wù)器或者實(shí)現(xiàn)這種聯(lián)系點(diǎn)服務(wù)器功能性的其它組件;按照這種方式訪(fǎng)問(wèn)系統(tǒng)的用戶(hù)會(huì)經(jīng)歷典型的驗(yàn)證流程和典型的訪(fǎng)問(wèn)。但是在這種做的過(guò)程中,直接訪(fǎng)問(wèn)舊系統(tǒng)的用戶(hù)不能夠建立為域的聯(lián)系點(diǎn)服務(wù)器了解的聯(lián)合會(huì)話(huà)。
通過(guò)使用聯(lián)合前端處理240,域的原有功能可被并入聯(lián)合體環(huán)境中,聯(lián)合前端處理240包括聯(lián)系點(diǎn)服務(wù)器242和信任代理服務(wù)器244(或者更簡(jiǎn)單地主,信任代理244),信任代理244本身包括安全權(quán)標(biāo)服務(wù)(STS)245,下面將參考圖2C更詳細(xì)地說(shuō)明所有這些。聯(lián)合體配置應(yīng)用程序246允許管理用戶(hù)配置聯(lián)合前端組件,從而允許它們通過(guò)聯(lián)合接口單元248與原有的后端組件交互作用。
位于指定企業(yè)的原有或現(xiàn)存驗(yàn)證服務(wù)可使用各種眾所周知的驗(yàn)證方法或權(quán)標(biāo),例如用戶(hù)姓名/口令或智能卡權(quán)標(biāo)信息。但是,就本發(fā)明來(lái)說(shuō),通過(guò)聯(lián)系點(diǎn)服務(wù)器的使用,可在聯(lián)合體環(huán)境中使用原有的驗(yàn)證服務(wù)的功能性。用戶(hù)可繼續(xù)直接訪(fǎng)問(wèn)原有的驗(yàn)證服務(wù)器,而不必經(jīng)過(guò)聯(lián)系點(diǎn)服務(wù)器,不過(guò)按照這種方式訪(fǎng)問(wèn)系統(tǒng)的用戶(hù)會(huì)經(jīng)歷典型的驗(yàn)證流程和典型的訪(fǎng)問(wèn);直接訪(fǎng)問(wèn)原有驗(yàn)證系統(tǒng)的用戶(hù)不能產(chǎn)生根據(jù)本發(fā)明,作為身份證據(jù)的聯(lián)合驗(yàn)證聲明。聯(lián)合前端的任務(wù)之一是把在聯(lián)系點(diǎn)服務(wù)器接收的聯(lián)合驗(yàn)證權(quán)標(biāo)轉(zhuǎn)換成原有的驗(yàn)證服務(wù)理解的格式。從而,從而不必要求通過(guò)聯(lián)系點(diǎn)服務(wù)器訪(fǎng)問(wèn)聯(lián)合體環(huán)境的用戶(hù)重新向原有的驗(yàn)證服務(wù)驗(yàn)證。最好,可借助聯(lián)系點(diǎn)服務(wù)器和信任代理的組合,向原有的驗(yàn)證服務(wù)驗(yàn)證用戶(hù),以致看起來(lái)用戶(hù)好象參與了驗(yàn)證會(huì)話(huà)。
聯(lián)合體系統(tǒng)結(jié)構(gòu)—聯(lián)系點(diǎn)服務(wù)器、信任代理和信任中介(broker)現(xiàn)在參見(jiàn)圖2C,根據(jù)本發(fā)明的實(shí)現(xiàn),方框圖描述了聯(lián)合體系統(tǒng)結(jié)構(gòu)。聯(lián)合體環(huán)境包括聯(lián)合企業(yè)或者向用戶(hù)提供各種服務(wù)的類(lèi)似實(shí)體。通過(guò)客戶(hù)裝置上的應(yīng)用程序,用戶(hù)可試圖訪(fǎng)問(wèn)位于不同實(shí)體,例如企業(yè)250的資源。位于每個(gè)聯(lián)合企業(yè)的聯(lián)系點(diǎn)服務(wù)器,例如位于企業(yè)250的聯(lián)系點(diǎn)(POC)服務(wù)器252是用戶(hù)進(jìn)入聯(lián)合體環(huán)境的入口點(diǎn)。聯(lián)系點(diǎn)服務(wù)器使對(duì)現(xiàn)有的非聯(lián)合體系統(tǒng)結(jié)構(gòu)內(nèi)的現(xiàn)有組件的影響降至最小,因?yàn)槁?lián)系點(diǎn)服務(wù)器處理許多聯(lián)合體要求。聯(lián)系點(diǎn)服務(wù)器提供會(huì)話(huà)管理、協(xié)議轉(zhuǎn)換,可能還啟動(dòng)驗(yàn)證聲明轉(zhuǎn)換。例如,聯(lián)系點(diǎn)服務(wù)器可把HTTP或HTTPS消息轉(zhuǎn)換成SOAP,反之亦然。如下更詳細(xì)所述,聯(lián)系點(diǎn)服務(wù)器還可用于調(diào)用信任代理轉(zhuǎn)換驗(yàn)證聲明,例如從發(fā)布方接收的SAML權(quán)標(biāo)可被轉(zhuǎn)換成接收方明白的Kerberos權(quán)標(biāo)。
信任代理或信任代理服務(wù)器,例如位于企業(yè)250的信任代理(TP)254建立并保持聯(lián)合體中兩個(gè)實(shí)體之間的信任關(guān)系。信任代理一般具有從發(fā)布方使用的格式到接收方明白的格式的驗(yàn)證權(quán)標(biāo)格式轉(zhuǎn)換能力(通過(guò)下面更詳細(xì)說(shuō)明的安全權(quán)標(biāo)服務(wù))。
同時(shí),聯(lián)系點(diǎn)服務(wù)器和信任代理的使用使實(shí)現(xiàn)聯(lián)合體系統(tǒng)結(jié)構(gòu)對(duì)現(xiàn)有的一組非聯(lián)合系統(tǒng)的影響降至最小。從而,本發(fā)明的聯(lián)合體系統(tǒng)結(jié)構(gòu)要求每個(gè)聯(lián)合實(shí)體,實(shí)現(xiàn)至少一個(gè)聯(lián)系點(diǎn)服務(wù)器和至少一個(gè)信任代理,不論該實(shí)體是企業(yè)、域還是其它邏輯或物理實(shí)體。不過(guò),本發(fā)明的聯(lián)合體系統(tǒng)結(jié)構(gòu)不必要求對(duì)現(xiàn)有的一組非聯(lián)合系統(tǒng)的任何改變。最好,對(duì)于指定的聯(lián)合實(shí)體,存在單一的信任代理,不過(guò)出于可用性的目的,可存在多個(gè)信任代理,或者對(duì)于聯(lián)合實(shí)體內(nèi)的各個(gè)更小實(shí)體,例如企業(yè)內(nèi)的獨(dú)立子公司,可存在多個(gè)信任代理。指定的實(shí)體有可能屬于一個(gè)以上的聯(lián)合體,不過(guò)這種情況不必需要多個(gè)信任代理,因?yàn)閱蝹€(gè)信任代理可管理多個(gè)聯(lián)合體內(nèi)的信任關(guān)系。
信任代理的一個(gè)任務(wù)是確定另一域和/或該域中的信任代理所需的權(quán)標(biāo)類(lèi)型。信任代理具有處理從發(fā)布方使用的格式到接收方明白的格式的驗(yàn)證權(quán)標(biāo)格式轉(zhuǎn)換的能力。信任代理254還負(fù)責(zé)關(guān)于企業(yè)250發(fā)生的任何用戶(hù)身份轉(zhuǎn)換或?qū)傩赞D(zhuǎn)換。但是,信任代理可向信任中介請(qǐng)求幫助,如下所述。為了把發(fā)布方已知的用戶(hù)身份和屬性變換成對(duì)接收方來(lái)說(shuō)有意義的用戶(hù)身份和屬性,需要身份轉(zhuǎn)換。這種轉(zhuǎn)換可被位于發(fā)布域的信任代理或者被位于接收域的信任代理調(diào)用。
信任代理254可包括內(nèi)在化的組件,表示為安全權(quán)標(biāo)服務(wù)(STS)組件255,該組件提供權(quán)標(biāo)轉(zhuǎn)換,并調(diào)用驗(yàn)證服務(wù)運(yùn)行時(shí)間(ASR)256確認(rèn)和產(chǎn)生權(quán)標(biāo)。安全權(quán)標(biāo)服務(wù)提供權(quán)標(biāo)實(shí)例和信任代理所需的確認(rèn)服務(wù)。于是,安全權(quán)標(biāo)服務(wù)包括相對(duì)于現(xiàn)有驗(yàn)證服務(wù)運(yùn)行時(shí)間的接口,或者它把驗(yàn)證服務(wù)運(yùn)行時(shí)間并于它自己的服務(wù)中。代替成為信任代理內(nèi)部的一部分,安全權(quán)標(biāo)服務(wù)組件也可實(shí)現(xiàn)成被信任代理調(diào)用的獨(dú)立組件,或者可成為交易服務(wù)器內(nèi)部的一部分,例如作為應(yīng)用程序服務(wù)器的一部分。
例如,STS組件可接收發(fā)豈有此理Kerberos權(quán)標(biāo)的請(qǐng)求。作為將為其產(chǎn)生權(quán)標(biāo)的用戶(hù)的驗(yàn)證信息的一部分,請(qǐng)求可包括二進(jìn)制權(quán)標(biāo),二進(jìn)制權(quán)標(biāo)包含用戶(hù)姓名和口令。STS組件將依據(jù),例如LDAP運(yùn)行時(shí)間(典型驗(yàn)證)確認(rèn)用戶(hù)姓名和口令,并調(diào)用Kerberos KDC(密鑰分發(fā)中心)產(chǎn)生該用戶(hù)的Kerberos票券。該權(quán)示被返回給信任代理,以便在企業(yè)內(nèi)使用;但是,這種使用可包括使該權(quán)標(biāo)具體化,以便傳送給聯(lián)合體中的另一域。
按照和參考圖1D所述相似的方式,用戶(hù)可能希望訪(fǎng)問(wèn)位于聯(lián)合體環(huán)境內(nèi)多個(gè)企業(yè),例如企業(yè)250和企業(yè)260的資源。按照上面關(guān)于企業(yè)250描述的相似方式,企業(yè)260包含聯(lián)系點(diǎn)服務(wù)器262,信任代理264,安全權(quán)標(biāo)服務(wù)265,和驗(yàn)證服務(wù)運(yùn)行時(shí)間266。雖然用戶(hù)可直接啟動(dòng)與每個(gè)企業(yè)的單獨(dú)交易,不過(guò)用戶(hù)可啟動(dòng)與企業(yè)250的交易,所述交易串聯(lián)通過(guò)聯(lián)合體環(huán)境。企業(yè)250需要與聯(lián)合體環(huán)境內(nèi)的多個(gè)其它企業(yè),例如企業(yè)260協(xié)作,以便完成特定交易,即使當(dāng)用戶(hù)啟動(dòng)該交易時(shí),用戶(hù)并不清楚這種必要性。企業(yè)260變成下游域,本發(fā)明允許企業(yè)250向企業(yè)260提供聯(lián)合聲明(如果需要),以便繼續(xù)用戶(hù)的交易。
情況也可能是信任代理不知道如何解釋相關(guān)聯(lián)系點(diǎn)服務(wù)器收到的驗(yàn)證權(quán)標(biāo)和/或如何轉(zhuǎn)換指定用戶(hù)身份和屬性。這種情況下,信任代理必須選擇調(diào)用位于信任中介組件,例如信任中介268的功能。信任中介與各個(gè)信任代理保持關(guān)系,從而在信任代理之間提供可傳遞的信任。使用信任中介允許聯(lián)合體環(huán)境內(nèi)的每個(gè)實(shí)體,例如企業(yè)250和260建立與信任中介的信任關(guān)系,而不是與聯(lián)合體環(huán)境中的每個(gè)域建立多個(gè)單獨(dú)的信任關(guān)系。例如,當(dāng)企業(yè)260變成用戶(hù)在企業(yè)250啟動(dòng)的交易的下游域時(shí),位于企業(yè)250的信任代理254可確保通過(guò)請(qǐng)求信任中介268的幫助(如果需要),位于企業(yè)260的信任代理264能夠理解來(lái)自信任代理254的聲明。雖然圖2C描述了具有單個(gè)信任中介的聯(lián)合體環(huán)境,不過(guò)聯(lián)合體環(huán)境可具有多個(gè)信任中介。
應(yīng)注意雖然圖2C把聯(lián)系點(diǎn)服務(wù)器252、信任代理254、安全權(quán)標(biāo)服務(wù)組件255和驗(yàn)證服務(wù)運(yùn)行時(shí)間256描述成不同的實(shí)體,不過(guò)不必在獨(dú)立的裝置上實(shí)現(xiàn)這些組件。例如,這些獨(dú)立組件的功能可被實(shí)現(xiàn)成位于單一物理裝置上的應(yīng)用程序,或者結(jié)合在單一應(yīng)用程序中。另外,圖2C描述了一個(gè)企業(yè)的單個(gè)聯(lián)系點(diǎn)服務(wù)器,單個(gè)信任代理,和單個(gè)安全權(quán)標(biāo)服務(wù)器,不過(guò)一種備選結(jié)構(gòu)可包括每個(gè)企業(yè)的多個(gè)聯(lián)系點(diǎn)服務(wù)器,多個(gè)信任代理,和多個(gè)安全權(quán)標(biāo)服務(wù)器??梢圆煌男问剑畿浖?yīng)用程序,目標(biāo)程序,模塊,軟件庫(kù)等實(shí)現(xiàn)聯(lián)系點(diǎn)服務(wù)器、信任代理、安全權(quán)標(biāo)服務(wù)和其它聯(lián)合實(shí)體。
信任代理/STS能夠接受并確認(rèn)許多不同的驗(yàn)證憑證,包括諸如用戶(hù)姓名和口令組合和Kerberos票券之類(lèi)的傳統(tǒng)憑證,和聯(lián)合驗(yàn)證權(quán)標(biāo)格式,包括第三方產(chǎn)生的聯(lián)合驗(yàn)證權(quán)標(biāo)格式。信任代理/STS允許在別處以驗(yàn)證證據(jù)的形式接受驗(yàn)證權(quán)標(biāo)。驗(yàn)證權(quán)標(biāo)由發(fā)布方產(chǎn)生,并被用于指示已向該發(fā)布方驗(yàn)證該用戶(hù)。發(fā)布方產(chǎn)生驗(yàn)證權(quán)標(biāo),作為宣稱(chēng)經(jīng)驗(yàn)證的用戶(hù)身份的一種手段。
安全權(quán)標(biāo)服務(wù)根據(jù)需要,調(diào)用驗(yàn)證服務(wù)運(yùn)行時(shí)間。驗(yàn)證服務(wù)運(yùn)行時(shí)間支持能夠驗(yàn)證用戶(hù)的驗(yàn)證服務(wù)。驗(yàn)證服務(wù)充當(dāng)借助驗(yàn)證響應(yīng),指示驗(yàn)證嘗試成功或失敗的驗(yàn)證機(jī)構(gòu)。信任代理/STS可使驗(yàn)證服務(wù)成為自己的一部分,例如其中存在不需要與現(xiàn)存的原有基礎(chǔ)結(jié)構(gòu)交互作用的web服務(wù)的全新安裝的情形。另外,STS組件將調(diào)用外部驗(yàn)證服務(wù),以便確認(rèn)驗(yàn)證權(quán)標(biāo)。例如,STS組件可“打開(kāi)”包含用戶(hù)姓名/口令的二進(jìn)制權(quán)標(biāo),隨后使用LDAP服務(wù)訪(fǎng)問(wèn)用戶(hù)注冊(cè)處,以便確認(rèn)呈送的憑證。
當(dāng)被諸如應(yīng)用程序服務(wù)器之類(lèi)的另一組件使用時(shí),STS組件可被用于產(chǎn)生向原有的驗(yàn)證系統(tǒng)進(jìn)行單一注冊(cè)所需的權(quán)標(biāo)。從而,STS組件可用于內(nèi)部權(quán)標(biāo)轉(zhuǎn)換,即在企業(yè)內(nèi)的權(quán)標(biāo)轉(zhuǎn)換,以及用于外部權(quán)標(biāo)轉(zhuǎn)換,即在聯(lián)合體中的企業(yè)之間的權(quán)標(biāo)轉(zhuǎn)換。作為內(nèi)部權(quán)標(biāo)轉(zhuǎn)換的一個(gè)例子,web應(yīng)用程序服務(wù)器可通過(guò)IBM CICS(客戶(hù)信息控制系統(tǒng))交易網(wǎng)關(guān)與主機(jī)聯(lián)系;CICS是為任務(wù)關(guān)鍵的應(yīng)用程序提供企業(yè)級(jí)在線(xiàn)交易管理和連通性的一組應(yīng)用程序服務(wù)器和連接器。web應(yīng)用程序服務(wù)器可調(diào)用STS組件把Kerberos票券(由web應(yīng)用程序服務(wù)器內(nèi)部使用)轉(zhuǎn)換成CICS交易網(wǎng)關(guān)所需的IBM RACF通行票。
可利用上面介紹的術(shù)語(yǔ),例如“發(fā)布方”和“信賴(lài)方”說(shuō)明圖2C中所示的實(shí)體。作為確定并保持信任關(guān)系的一部分,發(fā)布方的信任代理可確定信賴(lài)方的信任代理需要/接受何種權(quán)標(biāo)。從而,當(dāng)從安全權(quán)標(biāo)服務(wù)調(diào)用權(quán)標(biāo)服務(wù)時(shí),信任代理使用該信息。當(dāng)要求發(fā)布域的信任代理為信賴(lài)方產(chǎn)生驗(yàn)證聲明時(shí),信任代理確定所需的權(quán)標(biāo)類(lèi)型,并從安全權(quán)標(biāo)服務(wù)要求適當(dāng)?shù)臋?quán)標(biāo)。
當(dāng)信賴(lài)域的信任代理收到來(lái)自發(fā)布方的驗(yàn)證聲明時(shí),信任代理知道期望何種聲明,以及信賴(lài)域內(nèi)的內(nèi)部使用需要何種聲明。信賴(lài)域的信任代理于是請(qǐng)求安全權(quán)標(biāo)服務(wù)根據(jù)接收的驗(yàn)證聲明中的權(quán)標(biāo),產(chǎn)生所需的內(nèi)部應(yīng)用權(quán)標(biāo)。
信任代理和信任中介都具有把從發(fā)布方收到的聲明轉(zhuǎn)換成信賴(lài)方明白的格式的能力。信任中介具有為與其具有直接信任關(guān)系的每個(gè)信任代理解釋聲明格式的能力,從而允許信任中介提供發(fā)布方和信賴(lài)方之間的聲明轉(zhuǎn)換。任何一方可通過(guò)其本地信任代理,請(qǐng)求這種轉(zhuǎn)換。從而,發(fā)布方的信任代理可在把聲明發(fā)送給信賴(lài)方之前,請(qǐng)求聲明的轉(zhuǎn)換。同樣地,信賴(lài)方的信任代理可請(qǐng)求從發(fā)布方收到的聲明的轉(zhuǎn)換。
聲明轉(zhuǎn)換包含用戶(hù)身份轉(zhuǎn)換、驗(yàn)證聲明轉(zhuǎn)換、屬性聲明轉(zhuǎn)換、或者其它形式的聲明轉(zhuǎn)換。如前所述,聲明轉(zhuǎn)換由聯(lián)合體內(nèi)的信任組件,即信任代理和信任中介處理。信任代理可在發(fā)布域或者在信賴(lài)域本地完成轉(zhuǎn)換,或者信任代理可向信任中介請(qǐng)求幫助。
假定發(fā)布方和信賴(lài)方已具有與信任中介的單獨(dú)信任關(guān)系,那么如果需要,信任中介可動(dòng)態(tài)產(chǎn)生,即促成(broker)發(fā)布方和信賴(lài)方之間的新的信任關(guān)系。在信任中介提供的初始信任關(guān)系促成操作之后,發(fā)布方和信賴(lài)方可直接保持該關(guān)系,從而對(duì)于未來(lái)的轉(zhuǎn)換要求,不需調(diào)用信任中介。應(yīng)注意的是可在三個(gè)可能的位置發(fā)生驗(yàn)證權(quán)標(biāo)的轉(zhuǎn)換發(fā)布方的信任代理,信賴(lài)方的信任代理和信任中介。最好,發(fā)布方的信任代理產(chǎn)生信任中介明白的驗(yàn)證聲明,以便發(fā)送給信賴(lài)方。信賴(lài)方隨后請(qǐng)求把來(lái)自信任中介的這種權(quán)標(biāo)轉(zhuǎn)換成信賴(lài)方可識(shí)別的格式??稍趥鬏斨?,傳輸之后,或者在驗(yàn)證聲明的傳輸前后發(fā)生權(quán)標(biāo)轉(zhuǎn)換。
聯(lián)合體系統(tǒng)結(jié)構(gòu)內(nèi)的信任關(guān)系在根據(jù)本發(fā)明實(shí)現(xiàn)的聯(lián)合體環(huán)境內(nèi),存在兩種必須管理的“信任域”企業(yè)信任域和聯(lián)合體信任域。這兩種信任域之間的不同部分以管理與信任域的信任關(guān)系的商業(yè)協(xié)議和用于建立信任的技術(shù)為基礎(chǔ)。企業(yè)信任域包含企業(yè)管理的那些組件;該信任域內(nèi)的所有組件彼此信任。一般來(lái)說(shuō),不存在在企業(yè)內(nèi)建立信任所需的商業(yè)協(xié)議,因?yàn)橥ㄟ^(guò)要求組件間相互驗(yàn)證的SSL會(huì)話(huà),采用的技術(shù)產(chǎn)生企業(yè)內(nèi)部固有的信任。參見(jiàn)圖2B,原有應(yīng)用程序和后端處理系統(tǒng)可代表企業(yè)信任域。
聯(lián)合體信任域是跨越企業(yè)邊界的那些信任域;從某一觀(guān)點(diǎn)來(lái)看,聯(lián)合體信任域可代表截然不同的企業(yè)信任域之間的信任關(guān)系。通過(guò)跨越企業(yè)邊界的信任代理,建立聯(lián)合體信任域。聯(lián)合信任關(guān)系可涉及某一種類(lèi)的自舉過(guò)程,借助所述自舉過(guò)程,在信任代理之間建立初始信任。這種自舉過(guò)程的一部分可包括共用保密密鑰和定義預(yù)期和/或許可的權(quán)標(biāo)類(lèi)型及標(biāo)識(shí)符轉(zhuǎn)換的規(guī)則的確定。一般來(lái)說(shuō),帶外實(shí)現(xiàn)這種自舉過(guò)程,因?yàn)樵撨^(guò)程還包括管理企業(yè)在聯(lián)合體中的參與,以及與這種參與相關(guān)的責(zé)任的商業(yè)協(xié)議的確定。
在聯(lián)合企業(yè)模型中建立信任的機(jī)制有許多種。在聯(lián)合體模型中,出于商業(yè)原因,需要聯(lián)合體參與者之間信任的基本概念,以便提供在參與者之間傳送的聲明(包括權(quán)標(biāo)和屬性信息)有效的擔(dān)保水平。如果不存在信任關(guān)系,那么信賴(lài)域不能依靠從發(fā)布域接收的聲明;這些聲明不能被信賴(lài)域用于確定如何解釋從發(fā)布方接收的任何信息。
例如,大公司希望連接數(shù)千位全球客戶(hù),該公司可使用現(xiàn)有的解決方案。作為第一個(gè)例子,該公司可要求全球客戶(hù)使用來(lái)自商業(yè)證書(shū)管理機(jī)構(gòu)的數(shù)字證書(shū)建立互信。商業(yè)證書(shū)管理機(jī)構(gòu)使該公司的服務(wù)器能夠信任位于各個(gè)全球客戶(hù)的服務(wù)器。作為第二個(gè)例子,該公司可利用Kerberos實(shí)現(xiàn)第三方信任;該公司及其全球客戶(hù)可實(shí)現(xiàn)受信任的第三方Kerberos域服務(wù),該服務(wù)實(shí)現(xiàn)基于共享秘密的信任。作為第三例子,該公司可利用專(zhuān)有的安全消息權(quán)標(biāo)建立專(zhuān)用方案,其全球客戶(hù)的服務(wù)器互信所述專(zhuān)有安全消息權(quán)標(biāo)。
如果公司需要管理與少量全球客戶(hù)的信任關(guān)系,那么這些方法中的任何一種都是可接受的,但是如果存在數(shù)以百計(jì)或數(shù)以千計(jì)的潛在聯(lián)合伙伴,那么會(huì)變得難以管理。例如,雖然公司可強(qiáng)迫其較小的伙伴實(shí)現(xiàn)專(zhuān)用方法,但是該公司不可能能夠?qū)ζ漭^大的伙伴強(qiáng)加許多要求。
利用本發(fā)明,企業(yè)將采用通過(guò)信任代理,可能還有信任中介建立和保持的信任關(guān)系。本發(fā)明的聯(lián)合體系統(tǒng)結(jié)構(gòu)的一個(gè)優(yōu)點(diǎn)是不會(huì)強(qiáng)加超出企業(yè)及其潛在聯(lián)合伙伴的當(dāng)前基本結(jié)構(gòu)的額外要求。
但是,本發(fā)明不會(huì)使企業(yè)及其潛在聯(lián)合伙伴免除確定參與聯(lián)合體所需的商業(yè)和責(zé)任協(xié)議所需的預(yù)備工作。另外,參與者不能忽略信任關(guān)系的技術(shù)自舉。本發(fā)明允許這種自舉是靈活的,例如,第一聯(lián)合伙伴可發(fā)布具有某些信息的Kerberos票券,而第二聯(lián)合伙伴可發(fā)布具有某些信息的SAML驗(yàn)證聲明。
本發(fā)明中,信任關(guān)系由聯(lián)合體信任代理管理,聯(lián)合體信任代理可包括根據(jù)兩個(gè)信任代理間的預(yù)定關(guān)系,確認(rèn)和轉(zhuǎn)換從發(fā)布方接收的權(quán)標(biāo)的安全權(quán)標(biāo)服務(wù)。在聯(lián)合企業(yè)不能與另一聯(lián)合企業(yè)建立信任關(guān)系(和權(quán)標(biāo)轉(zhuǎn)換)的情形下,可調(diào)用信任中介。但是,聯(lián)合企業(yè)仍然必須與信任中介建立關(guān)系。
現(xiàn)在參見(jiàn)圖2D,方框圖根據(jù)本發(fā)明,描述了使用信任代理和信任中介的聯(lián)合域之間的一組例證信任關(guān)系。雖然圖2C介紹了信任中介,不過(guò)圖2D舉例說(shuō)明了本發(fā)明的聯(lián)合體系統(tǒng)結(jié)構(gòu)內(nèi)可傳遞信任關(guān)系的重要性。
聯(lián)合域271-273分別包含信任代理274-276。信任代理274與信任代理275具有直接信任關(guān)系277。信任中介280與信任代理275具有直接信任關(guān)系278,信任中介280與信任代理276具有直接信任關(guān)系279。信任中介280被用于代表一個(gè)聯(lián)合體參與者,根據(jù)與其它聯(lián)合體伙伴的可傳遞信任,確定信任關(guān)系??蓚鬟f信任的原理允許信任代理275和信任代理276通過(guò)信任中介280具有促成的信任關(guān)系281。信任代理275和276都不需知道如何轉(zhuǎn)換或確認(rèn)另一方的聲明;可調(diào)用信任中介,以便把聲明轉(zhuǎn)換成在另一信任代理處有效、受信任和明白的聲明。
通過(guò)利用ebXML(使用XML的電子商業(yè))標(biāo)準(zhǔn),可用XML表述相對(duì)于聯(lián)合企業(yè)之間的信任關(guān)系,規(guī)定契約性義務(wù)和責(zé)任的商業(yè)協(xié)議。例如,可用ebXML文檔表達(dá)直接信任關(guān)系;共享直接信任關(guān)系的每個(gè)聯(lián)合域具有表述為ebXML文檔的合同的副本??稍趀bXML編排設(shè)計(jì)內(nèi)規(guī)定聯(lián)合體內(nèi)各個(gè)實(shí)體的操作特性,并在ebXML注冊(cè)處公布所述操作特性;希望參與特定聯(lián)合體,例如操作信任代理或信任中介的任意企業(yè)需要遵守特定聯(lián)合體關(guān)于該聯(lián)合體內(nèi)的所有信任代理或信任中介規(guī)定的公開(kāi)要求。安全權(quán)標(biāo)服務(wù)可按照轉(zhuǎn)換來(lái)自其它域的權(quán)標(biāo)的方式,關(guān)于操作細(xì)節(jié)解析這些ebXML文檔。不過(guò)應(yīng)注意的是,本發(fā)明也可采用其它標(biāo)準(zhǔn)和機(jī)制規(guī)定和實(shí)現(xiàn)聯(lián)合體內(nèi)的信任關(guān)系的方式相關(guān)的細(xì)節(jié)。
聯(lián)合體系統(tǒng)結(jié)構(gòu)內(nèi)的聲明處理如上所述,用戶(hù)在聯(lián)合體內(nèi)的經(jīng)歷部分受在域之間傳送的和用戶(hù)有關(guān)的聲明控制。聲明提供和用戶(hù)的驗(yàn)證狀態(tài),屬性信息及其它信息相關(guān)的信息。使用驗(yàn)證聲明可使用戶(hù)不必在用戶(hù)訪(fǎng)問(wèn)的每個(gè)站點(diǎn)重新驗(yàn)證。在聯(lián)合體環(huán)境中,獲得從發(fā)布方到信賴(lài)方的聲明的模式有兩種推送模式和拖拉模式。在推送模式下,用戶(hù)的聲明和用戶(hù)的請(qǐng)求一起傳給發(fā)布方。在拖拉模式下,在不具有任何消息的信賴(lài)方接收用戶(hù)的請(qǐng)求,信賴(lài)方隨后向發(fā)布方請(qǐng)求相關(guān)或者所需的聲明。
已知在聯(lián)合體環(huán)境內(nèi)使用聲明的這些模式,本發(fā)明的說(shuō)明現(xiàn)在轉(zhuǎn)向描述在本發(fā)明的聯(lián)合體環(huán)境內(nèi)產(chǎn)生和使用聲明的一組過(guò)程的一組附圖。圖3A描述了位于發(fā)布域的,在聯(lián)合體環(huán)境內(nèi)產(chǎn)生聲明的一般過(guò)程,而圖3B描述了位于信賴(lài)域的,“扯下”聲明,即通過(guò)抽取和分析聲明的信息,將聲明還原為其本質(zhì)信息的一般過(guò)程。圖3C和圖3D通過(guò)描述推送模式的兩個(gè)變形,表示了圖3A中所示的一般過(guò)程的更具體過(guò)程,在推送模式中,在發(fā)布域內(nèi)產(chǎn)生聲明,隨后把聲明和用戶(hù)的請(qǐng)求一起傳送給信賴(lài)域。圖3E描述了拖位模式,其中信賴(lài)域向發(fā)布域請(qǐng)求關(guān)于用戶(hù)的任意所需聲明,同時(shí)試圖滿(mǎn)足信賴(lài)域從發(fā)出請(qǐng)求的用戶(hù)接收的資源請(qǐng)求。
現(xiàn)在參見(jiàn)圖3A,流程圖描述了位于發(fā)布域的,在聯(lián)合體環(huán)境內(nèi)產(chǎn)生聲明的一般過(guò)程。當(dāng)關(guān)于某一聲明觸發(fā)發(fā)布域的聯(lián)系點(diǎn)服務(wù)器(步驟302)時(shí),開(kāi)始該過(guò)程。聯(lián)系點(diǎn)服務(wù)器可從依賴(lài)域接收關(guān)于指定用戶(hù)的特定聲明請(qǐng)求,或者它可截取需要聲明的已知信賴(lài)域的輸出請(qǐng)求;下面分別參考圖3C和3D更詳細(xì)地說(shuō)明了這些情形。響應(yīng)關(guān)于某一聲明被觸發(fā),發(fā)布域的聯(lián)系點(diǎn)服務(wù)器向發(fā)布域的信任代理請(qǐng)求聲明(步驟304),發(fā)布域的信任代理產(chǎn)生所述聲明(步驟306);如果需要,發(fā)布域的信任代理可向信任中介請(qǐng)求幫助,以便產(chǎn)生所需的聲明。在產(chǎn)生所述聲明之后,發(fā)布域的信任代理隨后把所述聲明返回給發(fā)布域的聯(lián)系點(diǎn)服務(wù)器(步驟308),聯(lián)系點(diǎn)服務(wù)器隨后可按照適當(dāng)?shù)姆绞桨阉雎暶髯⑷胼敵鰯?shù)據(jù)流中(步驟310),例如通過(guò)把所述聲明插入輸出的HTTP或SOAP消息中,從而完成該過(guò)程。
圖3A描述了在不使用“本地皮夾(wallet)”的情況下,在發(fā)布域產(chǎn)生聲明的過(guò)程。但是,本發(fā)明允許包含本地皮夾功能性。一般來(lái)說(shuō),本地皮夾是可充當(dāng)用戶(hù)屬性信息或其它信息的保密數(shù)據(jù)庫(kù),以便簡(jiǎn)化交易的客戶(hù)機(jī)方代碼;客戶(hù)機(jī)方代碼還可參與推送和/或拖拉模式的聲明傳送。當(dāng)本地皮夾積極參與協(xié)議時(shí),它實(shí)現(xiàn)聯(lián)系點(diǎn)服務(wù)器功能性關(guān)于產(chǎn)生和把聲明插入?yún)f(xié)議流中的功能子集。利用本地皮夾并不便于本地皮夾實(shí)現(xiàn)在聯(lián)系點(diǎn)服務(wù)器和信任代理之間發(fā)生的基于信任的交互作用。在需要其它信任關(guān)系的情況下,必須調(diào)用聯(lián)系點(diǎn)服務(wù)器。
現(xiàn)在參見(jiàn)圖3B,流程圖描述了為了扯下聲明,在信賴(lài)域的一般過(guò)程。當(dāng)信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器收到帶有相關(guān)聲明的消息(步驟322)時(shí),開(kāi)始該過(guò)程,之后,它抽取所述聲明,并把所述聲明傳送給信賴(lài)域的信任代理(步驟324)。信賴(lài)域的信任代理從聲明抽取信息,包括從發(fā)布域接收的權(quán)標(biāo)(步驟326);信賴(lài)域的信任代理將調(diào)用安全權(quán)標(biāo)服務(wù)來(lái)確認(rèn)該權(quán)標(biāo),如果需要,把用戶(hù)的本地有效權(quán)標(biāo)。
作為步驟326的一部分,信任代理將確定聲明的來(lái)源,即發(fā)布方。如果信任代理能夠理解從該發(fā)布域接收的信任聲明,那么信任代理將內(nèi)部進(jìn)行步驟328。如果信任代理不能理解/信任從發(fā)布域接收的聲明,那么信任代理會(huì)向信任中介請(qǐng)求幫助。如果聲明不能被確認(rèn),那么會(huì)產(chǎn)生恰當(dāng)?shù)腻e(cuò)誤響應(yīng)。
假定聲明被確認(rèn),那么信賴(lài)域的信任代理確定用戶(hù)所需的本地信息(步驟330)。例如,本地信息可包括后端原有應(yīng)用程序所需的驗(yàn)證憑證。信賴(lài)域的信任代理把所需信息返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟332),聯(lián)系點(diǎn)服務(wù)器可建立用戶(hù)的本地會(huì)話(huà)。
在聯(lián)系點(diǎn)服務(wù)器建立用戶(hù)的會(huì)話(huà)之后,用戶(hù)表現(xiàn)為經(jīng)驗(yàn)證的用戶(hù)。聯(lián)系點(diǎn)服務(wù)器可使用該會(huì)話(huà)信息繼續(xù)管理該用戶(hù)具有的與該域的任何交易,直到啟動(dòng)退出或超時(shí)事件為止。假定聯(lián)系點(diǎn)服務(wù)器已具有用戶(hù)的經(jīng)驗(yàn)證的身份,那么如果需要,根據(jù)該特定用戶(hù)的身份和與該特定用戶(hù)相關(guān)的任何授權(quán)策略,聯(lián)系點(diǎn)服務(wù)器可獲得關(guān)于該請(qǐng)求的授權(quán)。聯(lián)系點(diǎn)服務(wù)器隨后把用戶(hù)的請(qǐng)求和任何相關(guān)信息一起傳送給被請(qǐng)求的后端應(yīng)用程序或服務(wù)(步驟334),從而完成該過(guò)程。
應(yīng)注意的是在聯(lián)系點(diǎn)服務(wù)器和信任代理之間傳送的數(shù)據(jù)項(xiàng)和這些數(shù)據(jù)項(xiàng)的格式可變化。聯(lián)系點(diǎn)服務(wù)器可把整個(gè)消息轉(zhuǎn)發(fā)給信任代理,而不是從該消息抽取聲明,并且只把所述聲明轉(zhuǎn)發(fā)給信任代理。例如,在信任代理處的處理可包括和關(guān)于SOAP消息的簽名確認(rèn)相似的步驟,所述簽名確認(rèn)需要整個(gè)SOAP包絡(luò)。
現(xiàn)在參見(jiàn)圖3C,流程圖描述了響應(yīng)位于發(fā)布域的用戶(hù)操作,把聲明從發(fā)布域推到信賴(lài)域的具體過(guò)程。當(dāng)用戶(hù)從某一Web頁(yè)或者發(fā)布域內(nèi)的類(lèi)似資源訪(fǎng)問(wèn)信賴(lài)域的鏈接(步驟342)時(shí),開(kāi)始該過(guò)程,從而調(diào)用某一形式的CGI(公共網(wǎng)關(guān)接口)處理建立特定的聲明。發(fā)布域識(shí)別信賴(lài)域需要聲明的能力意味著與現(xiàn)有舊系統(tǒng)的緊密結(jié)合,在所述現(xiàn)有舊系統(tǒng)上實(shí)現(xiàn)本發(fā)明的聯(lián)合體基礎(chǔ)結(jié)構(gòu)。它還意味著發(fā)布方和信賴(lài)方之間的緊密結(jié)合,從而發(fā)布方不必調(diào)用信任代理來(lái)建立所需的聲明;在具有良好建立的信任關(guān)系的某些類(lèi)型的聯(lián)合實(shí)體間,這種緊密結(jié)合是合適的。
調(diào)用位于發(fā)布域的后端處理,以便建立所需的聲明(步驟344),這可包括調(diào)用位于本地信任代理的功能。隨后確定用戶(hù)的關(guān)于信賴(lài)域的請(qǐng)求,包括所需的聲明(步驟346),發(fā)布域把所述聲明和用戶(hù)的請(qǐng)求一道傳送給信賴(lài)域(步驟348),從而完成該過(guò)程。當(dāng)信賴(lài)域接收該請(qǐng)求及其相關(guān)聲明時(shí),信賴(lài)域可按照?qǐng)D3B中所示的方式確認(rèn)所述聲明。
現(xiàn)在參見(jiàn)圖3D,流程圖描述了響應(yīng)發(fā)布域積極截取關(guān)于信賴(lài)域的輸出請(qǐng)求,把聲明從發(fā)布域推送到信賴(lài)域的具體過(guò)程。當(dāng)用戶(hù)請(qǐng)求位于信賴(lài)域的受保護(hù)資源(步驟352)時(shí),開(kāi)始該過(guò)程。聯(lián)系點(diǎn)服務(wù)器通過(guò)關(guān)于預(yù)定的統(tǒng)一資源標(biāo)識(shí)符(URI)、某些種類(lèi)的消息,某些種類(lèi)的消息內(nèi)容,或者按照其它方式,過(guò)濾輸出的消息,截取輸出的請(qǐng)求(步驟354)。發(fā)布域的聯(lián)系點(diǎn)服務(wù)器隨后向發(fā)布域的信任代理請(qǐng)求產(chǎn)生適當(dāng)?shù)穆暶?步驟356),如果需要,發(fā)布域的信任代理在來(lái)自信任中介的幫助下,產(chǎn)生所述聲明(步驟358)。發(fā)布域隨后把用戶(hù)的請(qǐng)求和產(chǎn)生的聲明一起傳送給信賴(lài)方(步驟360),從而完成該過(guò)程。當(dāng)信賴(lài)域接收該請(qǐng)求及其相關(guān)聲明時(shí),信賴(lài)域按照?qǐng)D3B中所示的方式確認(rèn)所述聲明。
現(xiàn)在參見(jiàn)圖3E,流程圖描述了信賴(lài)域向發(fā)布域請(qǐng)求關(guān)于用戶(hù)的任何所需聲明,同時(shí)試圖滿(mǎn)足信賴(lài)域從發(fā)出請(qǐng)求的用戶(hù)接收的資源請(qǐng)求的拖拉模式。當(dāng)信賴(lài)域收到關(guān)于受保護(hù)資源的用戶(hù)請(qǐng)求(步驟372)時(shí),開(kāi)始該過(guò)程。和圖3C或圖3D中所示的例子相反,圖3E中表示的例子描述了在缺少關(guān)于用戶(hù)的任何所需聲明的情況下,和在信賴(lài)域接收的用戶(hù)請(qǐng)求相關(guān)的處理。這種情況下,發(fā)布域不具有截取或者處理用戶(hù)的請(qǐng)求,以便把所需聲明插入用戶(hù)請(qǐng)求中的能力。例如,用戶(hù)可能已按照輸出請(qǐng)求不被發(fā)布域的聯(lián)系點(diǎn)服務(wù)器截取的方式,輸入統(tǒng)一資源定位符(URL)或使用資源的書(shū)簽索引。從而,信賴(lài)域向發(fā)布域請(qǐng)求聲明。
信賴(lài)域隨后確定用戶(hù)的主域(步驟374),即相關(guān)發(fā)布域。在基于HTTP的實(shí)現(xiàn)中,用戶(hù)可與信賴(lài)域具有預(yù)定的關(guān)系,所述預(yù)定關(guān)系導(dǎo)致永久cookie由位于用戶(hù)的客戶(hù)裝置的信賴(lài)域設(shè)置。永久cookie可包含用戶(hù)主域,即發(fā)布域的身份。在用戶(hù)按照某一方式操縱web服務(wù)客戶(hù)程序的SOAP實(shí)現(xiàn)中,位于信賴(lài)域的web服務(wù)已通過(guò)WSDL(Web服務(wù)描述語(yǔ)言)通告了服務(wù)要求,包括權(quán)標(biāo)要求。這隨后會(huì)要求用戶(hù)的web服務(wù)客戶(hù)程序/SOPA實(shí)現(xiàn)提供所需的權(quán)標(biāo)類(lèi)型。如果該要求未被滿(mǎn)足,那么技術(shù)上,web服務(wù)會(huì)返回一個(gè)錯(cuò)誤。在一些情況下,它可返回允許就驗(yàn)證信息提示用戶(hù)的web服務(wù)客戶(hù)程序的錯(cuò)誤代碼,從而可重復(fù)關(guān)于恰當(dāng)權(quán)標(biāo)的請(qǐng)求。
信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器利用信賴(lài)域的信任代理啟動(dòng)聲明請(qǐng)求(步驟376),信賴(lài)域的信任代理向發(fā)布域的信任代理請(qǐng)求關(guān)于用戶(hù)的聲明(步驟378)。如果實(shí)施例采用基于HTTP的通信,那么通過(guò)用戶(hù)瀏覽器應(yīng)用程序,借助重定向,信賴(lài)域的聯(lián)系服務(wù)器可把從信賴(lài)域的信任代理到發(fā)布域的信任代理的聲明請(qǐng)求傳送給發(fā)布域的聯(lián)系點(diǎn)服務(wù)器,發(fā)布域的聯(lián)系點(diǎn)服務(wù)器把聲明請(qǐng)求轉(zhuǎn)發(fā)給發(fā)布域的信任代理。
如果實(shí)施例采用基于SOAP的實(shí)現(xiàn),那么信賴(lài)域可向用戶(hù)的web服務(wù)客戶(hù)程序返回出錯(cuò)代碼。該出錯(cuò)代碼允許借助用戶(hù)的web服務(wù)客戶(hù)程序,就驗(yàn)證信息提示用戶(hù)。web服務(wù)客戶(hù)程序隨后會(huì)產(chǎn)生所請(qǐng)求的權(quán)標(biāo)。用戶(hù)的web服務(wù)客戶(hù)程序可直接調(diào)用信任代理,只要在UDDI(統(tǒng)一描述、發(fā)現(xiàn)和綜合)中通告了信賴(lài)域的信任代理,允許用戶(hù)的web服務(wù)客戶(hù)程序找到該信任代理。一般來(lái)說(shuō),這種情形只對(duì)內(nèi)部用戶(hù)有效,在企業(yè)內(nèi)的專(zhuān)用UDDI中通告信任代理,因?yàn)椴豢赡茉谝蛱鼐W(wǎng)上或者可在聯(lián)合體外部訪(fǎng)問(wèn)的公共UDDI中通告信任代理。
發(fā)布域的信任代理按照和接收聲明請(qǐng)求的方式對(duì)稱(chēng)(mirror)的方式產(chǎn)生所請(qǐng)求的聲明(步驟380),并且隨后返回所請(qǐng)求的聲明(步驟382)。在信賴(lài)域的信任代理接收所請(qǐng)求的聲明(步驟384)之后,信賴(lài)域的信任代理從聲明抽取信息(步驟386),并且嘗試解釋和/或確認(rèn)該聲明(步驟388);如果需要,信任代理可向信任中介請(qǐng)求幫助,以便轉(zhuǎn)換聲明。如果聲明不能被確認(rèn),那么會(huì)產(chǎn)生適當(dāng)?shù)某鲥e(cuò)響應(yīng)。假定聲明被確認(rèn),那么信賴(lài)域的信任代理以供試圖滿(mǎn)足用戶(hù)關(guān)于受保護(hù)資源的請(qǐng)求的后端服務(wù)使用所需的適當(dāng)格式確定本地信息(步驟390)。例如,本地信息可包括后端原有應(yīng)用程序所需的驗(yàn)證憑證。信賴(lài)域的信任代理把所需信息返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟392),所述聯(lián)系點(diǎn)服務(wù)器隨后建立該用戶(hù)的本地會(huì)話(huà),并把用戶(hù)的請(qǐng)求和任何相關(guān)信息轉(zhuǎn)發(fā)給被請(qǐng)求的后端應(yīng)用程序或服務(wù)(步驟394),從而完成該過(guò)程。
聯(lián)合體系統(tǒng)結(jié)構(gòu)內(nèi)的單一注冊(cè)圖2A-2D的描述集中于根據(jù)本發(fā)明的聯(lián)合數(shù)據(jù)處理環(huán)境內(nèi)的實(shí)體的操作特性,而圖3A-3E的描述集中于在這些實(shí)體之間發(fā)生的一些過(guò)程。和這些說(shuō)明相反,圖4的描述集中于在向用戶(hù)提供單一注冊(cè)體驗(yàn)的同時(shí),完成用戶(hù)交易的目標(biāo)。
換句話(huà)說(shuō),下面的描述討論上面已論述的實(shí)體和過(guò)程,不過(guò)下面的描述更集中于就用戶(hù)的會(huì)話(huà)內(nèi),用戶(hù)可具有單一注冊(cè)體驗(yàn)的方式而論,本發(fā)明的概觀(guān)。會(huì)話(huà)可被定義為從(包括)初始用戶(hù)驗(yàn)證,即登錄到退出的一組交易。在會(huì)話(huà)內(nèi),用戶(hù)的操作部分受就該會(huì)話(huà)向用戶(hù)批準(zhǔn)的特權(quán)控制。在聯(lián)合體內(nèi),用戶(hù)希望具有單一注冊(cè)體驗(yàn),在所述單一注冊(cè)體驗(yàn)中,用戶(hù)完成單個(gè)驗(yàn)證操作,并且在他們的會(huì)話(huà)的持續(xù)時(shí)間內(nèi),該驗(yàn)證操作滿(mǎn)足需要,而與在該會(huì)話(huà)期間所訪(fǎng)問(wèn)的聯(lián)合體伙伴無(wú)關(guān)。
在用戶(hù)的會(huì)話(huà)過(guò)程中,用戶(hù)可訪(fǎng)問(wèn)多個(gè)聯(lián)合域,以便使用這些域提供的web服務(wù)。域可利用諸如UDDI和WSDL之類(lèi)的標(biāo)準(zhǔn)規(guī)范,公布它們提供的服務(wù)的描述,UDDI和WSDL都使用XML作為共同的數(shù)據(jù)格式。用戶(hù)通過(guò)同樣遵守這些標(biāo)準(zhǔn)規(guī)范的應(yīng)用程序,查找可用服務(wù)和服務(wù)提供者。SOAP提供傳遞以XML表述的請(qǐng)求和響應(yīng)的范例。聯(lián)合體環(huán)境內(nèi)的實(shí)體可采用這些標(biāo)準(zhǔn)及其它許多標(biāo)準(zhǔn)。
為了簡(jiǎn)化單一注冊(cè)體驗(yàn),支持聯(lián)合體環(huán)境的web服務(wù)還支持使用第三方產(chǎn)生的驗(yàn)證聲明或安全權(quán)標(biāo)提供用戶(hù)的驗(yàn)證證據(jù)。這種聲明還包含用戶(hù)成功向發(fā)布方驗(yàn)證的某類(lèi)證據(jù)以及該用戶(hù)的標(biāo)識(shí)符。從而,用戶(hù)可向一個(gè)聯(lián)合體伙伴提供傳統(tǒng)的驗(yàn)證憑證,例如用戶(hù)姓名和口令,隨后向一個(gè)不同的聯(lián)合體伙伴提供驗(yàn)證/發(fā)布方產(chǎn)生的SAM驗(yàn)證聲明。
web服務(wù)環(huán)境中的驗(yàn)證是核實(shí)web服務(wù)請(qǐng)求的自稱(chēng)身份,從而企業(yè)可限制對(duì)授權(quán)客戶(hù)機(jī)的訪(fǎng)問(wèn)。請(qǐng)求或調(diào)用web服務(wù)的用戶(hù)理應(yīng)幾乎始終被驗(yàn)證,從而本發(fā)明的聯(lián)合體環(huán)境內(nèi)的驗(yàn)證需要和關(guān)于用戶(hù)驗(yàn)證的web服務(wù)的現(xiàn)有要求沒(méi)有任何不同。聯(lián)合體環(huán)境還允許web服務(wù)或其它應(yīng)用程序請(qǐng)求web服務(wù),這些web服務(wù)也應(yīng)被驗(yàn)證。
沒(méi)有參與聯(lián)合會(huì)話(huà)的用戶(hù)的驗(yàn)證不受本發(fā)明的聯(lián)合體系統(tǒng)結(jié)構(gòu)的影響。例如,通過(guò)HTTP/S利用形式(form)驗(yàn)證機(jī)制驗(yàn)證,以便訪(fǎng)問(wèn)位于特定域的非聯(lián)合資源的現(xiàn)有用戶(hù)不會(huì)因在該域引入對(duì)聯(lián)合體環(huán)境的支持而受到影響。驗(yàn)證部分由聯(lián)系點(diǎn)服務(wù)器處理,聯(lián)系點(diǎn)服務(wù)器現(xiàn)調(diào)用獨(dú)立的信任代理組件。聯(lián)系點(diǎn)服務(wù)器的使用使對(duì)現(xiàn)有域的基礎(chǔ)結(jié)構(gòu)的影響降至最小。例如,聯(lián)系點(diǎn)服務(wù)器可被配置成通過(guò)將由位于該域的后端或原有應(yīng)用程序和系統(tǒng)處理的所有非聯(lián)合請(qǐng)求。
聯(lián)系點(diǎn)服務(wù)器可選擇調(diào)用基于HTTP的驗(yàn)證方法,例如基本驗(yàn)證,形式驗(yàn)證或者其它一些驗(yàn)證方法。通過(guò)識(shí)別用戶(hù)以驗(yàn)證證據(jù)的形式提供的聲明,例如SAML驗(yàn)證聲明,聯(lián)系點(diǎn)服務(wù)器還支持聯(lián)合信任域,這里聲明越過(guò)了企業(yè)信任域。聯(lián)系點(diǎn)服務(wù)器可調(diào)用信任代理,信任代理再調(diào)用其安全權(quán)標(biāo)服務(wù),確認(rèn)驗(yàn)證憑證/安全權(quán)標(biāo)。
web服務(wù)或其它應(yīng)用程序的驗(yàn)證包括和用戶(hù)驗(yàn)證相同的過(guò)程。來(lái)自web服務(wù)的請(qǐng)求攜帶安全權(quán)標(biāo),安全權(quán)標(biāo)包含驗(yàn)證聲明,該安全權(quán)標(biāo)應(yīng)由信任代理/安全權(quán)標(biāo)服務(wù)按照和用戶(hù)提供的權(quán)標(biāo)相同的方式被確認(rèn)。來(lái)自web服務(wù)的請(qǐng)求應(yīng)總是攜帶有該權(quán)標(biāo),因?yàn)閣eb服務(wù)應(yīng)已發(fā)現(xiàn)在UDDI中通告的,被請(qǐng)求服務(wù)需要何種驗(yàn)證聲明/安全權(quán)標(biāo)。
現(xiàn)在參見(jiàn)圖4,方框圖描述了支持聯(lián)合單一注冊(cè)操作的聯(lián)合體環(huán)境。通過(guò)客戶(hù)裝置和適當(dāng)?shù)目蛻?hù)應(yīng)用程序,例如瀏覽器,用戶(hù)400希望訪(fǎng)問(wèn)企業(yè)/域410提供的web服務(wù),企業(yè)/域410支持充當(dāng)聯(lián)合體環(huán)境內(nèi)的聯(lián)合域的數(shù)據(jù)處理系統(tǒng)。域410支持聯(lián)系點(diǎn)服務(wù)器412和信任代理412;類(lèi)似地,域420支持聯(lián)系點(diǎn)服務(wù)器422和信任代理424,而域430支持聯(lián)系點(diǎn)服務(wù)器432和信任代理434。信任代理依賴(lài)信任中介450的幫助,如上所述。其它域和信任代理可參與該聯(lián)合體環(huán)境。圖4描述了域410和域420之間的聯(lián)合單一注冊(cè)操作;在域410和域430之間可發(fā)生類(lèi)似的操作。
用戶(hù)相對(duì)于域410完成驗(yàn)證操作;該驗(yàn)證操作由聯(lián)系點(diǎn)服務(wù)器412處理。當(dāng)用戶(hù)請(qǐng)求訪(fǎng)問(wèn)出于訪(fǎng)問(wèn)控制的目的或者出于個(gè)性化目的,需要經(jīng)驗(yàn)證身份的某些資源時(shí),觸發(fā)驗(yàn)證操作。聯(lián)系點(diǎn)服務(wù)器412可調(diào)用原有的驗(yàn)證服務(wù),或者可調(diào)用信任代理414確認(rèn)用戶(hù)提供的驗(yàn)證憑證。在用戶(hù)的聯(lián)合會(huì)話(huà)的持續(xù)時(shí)間內(nèi),域410變成該用戶(hù)的主域。
稍后,用戶(hù)在聯(lián)合體伙伴,例如也支持聯(lián)合域的企業(yè)420啟動(dòng)交易,從而觸發(fā)聯(lián)合單一注冊(cè)操作。例如,用戶(hù)可在域420開(kāi)始新的交易,或者用戶(hù)的初始交易可級(jí)聯(lián)成位于其它域的一個(gè)或多個(gè)其它交易。作為另一例子,用戶(hù)可借助聯(lián)系點(diǎn)服務(wù)器412,例如通過(guò)選擇駐留在域410內(nèi)的web頁(yè)上的特殊鏈接,或者通過(guò)請(qǐng)求駐留在域410內(nèi),但是顯示駐留在域420中的資源的入口頁(yè)面,調(diào)用相對(duì)于域420中的資源的聯(lián)合單一注冊(cè)操作。聯(lián)系點(diǎn)服務(wù)器412向信任代理414發(fā)送請(qǐng)求,產(chǎn)生被格式化成可被域420理解或信任的用戶(hù)的聯(lián)合單一注冊(cè)權(quán)標(biāo)。信任代理414把該權(quán)標(biāo)返回給聯(lián)系點(diǎn)服務(wù)器412,聯(lián)系點(diǎn)服務(wù)器412把該權(quán)標(biāo)發(fā)送給域中的聯(lián)系點(diǎn)服務(wù)器422。域410充當(dāng)在域420的用戶(hù)的發(fā)布方,域420充分信賴(lài)方。用戶(hù)的權(quán)標(biāo)會(huì)和用戶(hù)的請(qǐng)求一起傳送給域420;可通過(guò)用戶(hù)的瀏覽器,借助HTTP重定向,發(fā)送該權(quán)標(biāo),或者可通過(guò)代表在信任代理414提供的權(quán)標(biāo)中識(shí)別的用戶(hù),(通過(guò)HTTP或SOAP-over-HTTP)直接調(diào)用聯(lián)系點(diǎn)服務(wù)器422的請(qǐng)求,發(fā)送該權(quán)標(biāo)。
聯(lián)系點(diǎn)服務(wù)器422接收該請(qǐng)求以及聯(lián)合單一注冊(cè)權(quán)標(biāo),并調(diào)用信任代理424。信任代理424接收聯(lián)合單一注冊(cè)權(quán)標(biāo),確認(rèn)該權(quán)標(biāo),并假定該權(quán)標(biāo)有效并且可信,產(chǎn)生用戶(hù)的本地有效權(quán)標(biāo)。信任代理424把本地有效權(quán)標(biāo)返回給聯(lián)系點(diǎn)服務(wù)器422,聯(lián)系點(diǎn)服務(wù)器422建立域422內(nèi)該用戶(hù)的會(huì)話(huà)。如果需要,聯(lián)系點(diǎn)服務(wù)器422可在另一聯(lián)合體伙伴啟動(dòng)聯(lián)合單一注冊(cè)。
在域420的權(quán)標(biāo)確認(rèn)由信任代理424處理,可能還借助來(lái)自安全權(quán)標(biāo)服務(wù)的幫助。根據(jù)域410提供的權(quán)標(biāo)的類(lèi)型,安全權(quán)標(biāo)服務(wù)可能需要訪(fǎng)問(wèn)位于域420的用戶(hù)注冊(cè)處。例如,域420可提供包含要依據(jù)域420的用戶(hù)注冊(cè)處確認(rèn)的用戶(hù)姓名和口令的二進(jìn)制安全權(quán)標(biāo)。從而,本例中,企業(yè)簡(jiǎn)單地確認(rèn)來(lái)自聯(lián)合體伙伴的安全權(quán)標(biāo)。域410和420之間的信任關(guān)系確保域420能夠理解和信任域410代表用戶(hù)提供的安全權(quán)標(biāo)。
聯(lián)合單一注冊(cè)不僅需要確認(rèn)代表用戶(hù)提供給信賴(lài)域的安全權(quán)標(biāo),而且需要根據(jù)包含在安全權(quán)標(biāo)中的信息,確定信賴(lài)域的本地有效用戶(hù)標(biāo)識(shí)符。直接信任關(guān)系和建立這種關(guān)系所需的商業(yè)協(xié)議的一個(gè)結(jié)果是至少一方,發(fā)布域或信賴(lài)域或者這兩者知道如何把發(fā)布域提供的信息轉(zhuǎn)換成在依賴(lài)域有效的標(biāo)識(shí)符。在上面的簡(jiǎn)短例子中,假定發(fā)布域,即域410能夠向信賴(lài)域,即域420提供在域420有效的用戶(hù)標(biāo)識(shí)符。這種情形下,信賴(lài)域不需要調(diào)用任何身份映射功能。位于域420的信任代理424將為該用戶(hù)產(chǎn)生“擔(dān)?!痹撚脩?hù)的安全權(quán)標(biāo)。作為聯(lián)合體的商業(yè)協(xié)議的一部分,預(yù)先確定接受的權(quán)標(biāo)的類(lèi)型,權(quán)標(biāo)所需的簽名以及其它要求。管理標(biāo)識(shí)符轉(zhuǎn)換的規(guī)則和算法也作為聯(lián)合體的商業(yè)協(xié)議被預(yù)先確定。就兩個(gè)參與者之間的直接信任關(guān)系來(lái)說(shuō),已為這兩方確定了標(biāo)識(shí)符轉(zhuǎn)換算法,并且所述標(biāo)識(shí)符算法和聯(lián)合體中的其它任何方無(wú)關(guān)。
但是,發(fā)布域并不總是知道如何把用戶(hù)從域410的本地標(biāo)識(shí)符轉(zhuǎn)換成域420的本地標(biāo)識(shí)符。一些情況下,可能是信賴(lài)域知道如何完成這種變換,而在其它一些情況下,雙方都不知道如何完成這種轉(zhuǎn)換,這種情況下,需要調(diào)用第三方信任中介。換句話(huà)說(shuō),就促成的信任關(guān)系來(lái)說(shuō),發(fā)布域和信賴(lài)域彼此不具有直接信任關(guān)系。但是,它們與信任中介,例如信任中介450具有直接信任關(guān)系。標(biāo)識(shí)符映射規(guī)則和算法被確定為該關(guān)系的一部分,信任中介將使用該信息幫助促成的信任關(guān)系所需的標(biāo)識(shí)符轉(zhuǎn)換。
域420在聯(lián)系點(diǎn)服務(wù)器422接收域410發(fā)布的權(quán)標(biāo),聯(lián)系點(diǎn)服務(wù)器422調(diào)用信任代理確認(rèn)權(quán)標(biāo)并執(zhí)行身份映射。這種情況下,由于信任代理424不能把用戶(hù)從域410的本地標(biāo)識(shí)符變換成域420的本地標(biāo)識(shí)符,因此信任代理424調(diào)用信任中介450,信任中介450確認(rèn)該權(quán)標(biāo)并執(zhí)行標(biāo)識(shí)符映射。在獲得用戶(hù)的本地標(biāo)識(shí)符之后,信任代理424(可能還通過(guò)其安全權(quán)標(biāo)服務(wù))能夠產(chǎn)生域420的后端應(yīng)用程序需要的任何本地權(quán)標(biāo),例如為了簡(jiǎn)化從聯(lián)系點(diǎn)服務(wù)到應(yīng)用程序服務(wù)器的單一注冊(cè),需要Kerberos權(quán)標(biāo)。在獲得本地有效權(quán)標(biāo)之后,如果需要,聯(lián)系點(diǎn)服務(wù)器能夠建立用戶(hù)的本地會(huì)話(huà)。聯(lián)系點(diǎn)服務(wù)器還處理用戶(hù)請(qǐng)求的粗粒(coarse-grained)授權(quán),并把批準(zhǔn)的請(qǐng)求轉(zhuǎn)發(fā)給域420內(nèi)的適當(dāng)應(yīng)用程序服務(wù)器。
當(dāng)用戶(hù)退出或停止活動(dòng)時(shí),終止用戶(hù)的會(huì)話(huà)。當(dāng)用戶(hù)退出與其主域的會(huì)話(huà)時(shí),主域會(huì)通知所有信賴(lài)域,即主域已向其發(fā)布安全權(quán)標(biāo)的那些域,并在這些域請(qǐng)求用戶(hù)退出。如果這些信賴(lài)域中的任意域再充當(dāng)同一用戶(hù)的發(fā)布域,那么它們會(huì)按照級(jí)聯(lián)的方式,把用戶(hù)退出請(qǐng)求通知他們的全部信賴(lài)域。各個(gè)域的信任代理負(fù)責(zé)把用戶(hù)的退出請(qǐng)求通知所有信賴(lài)域,作為該過(guò)程的一部分,信任代理可調(diào)用信任中介。
聯(lián)合體系統(tǒng)結(jié)構(gòu)內(nèi)的擁有證明質(zhì)詢(xún)正如其它任何分布式數(shù)據(jù)處理環(huán)境的情況一樣,具有單一注冊(cè)操作的聯(lián)合體環(huán)境易受安全缺口的攻擊。例如,當(dāng)跨越聯(lián)合體環(huán)境傳送聲明時(shí),惡意用戶(hù)有可能實(shí)現(xiàn)所謂的欺騙攻擊。
作為另一例子,合法用戶(hù)可執(zhí)行與主域的驗(yàn)證操作,主域隨后作為代表聯(lián)合單一操作的合法用戶(hù)的發(fā)布域,發(fā)布驗(yàn)證聲明。合法用戶(hù)可能離可客戶(hù)裝置,并認(rèn)為一段時(shí)間之后,用戶(hù)與主域的現(xiàn)行會(huì)話(huà)會(huì)被終止。但是,合法用戶(hù)已使該客戶(hù)裝置易被非法方濫用,在合法用戶(hù)的會(huì)話(huà)期滿(mǎn)之前,惡意用戶(hù)可使用該客戶(hù)裝置。之后,由于主域或者其它一些發(fā)布域在一段時(shí)間內(nèi),未與合法用戶(hù)進(jìn)行驗(yàn)證討論,因此發(fā)布域不知道該客戶(hù)裝置正在代表惡意用戶(hù),而不是合法工作。
為了使發(fā)生這種情形的機(jī)會(huì)降至最小,并增強(qiáng)聯(lián)合體環(huán)境內(nèi)的安全性,最好在不需要改變整個(gè)聯(lián)合體系統(tǒng)結(jié)構(gòu)的情況下,在聯(lián)合體環(huán)境內(nèi)具有可選的額外安全等級(jí)。為此,發(fā)布方或者信賴(lài)方可直接向用戶(hù)發(fā)出擁有證明質(zhì)詢(xún),從而核實(shí)用戶(hù)的身份,確保代表用戶(hù)提供聲明,驗(yàn)證聲明或其它一些類(lèi)型的聲明的一方恰當(dāng)且正確地代表合法用戶(hù)。本質(zhì)上,擁有證明需要用戶(hù)證明該用戶(hù)擁有只應(yīng)被具有特定身份的用戶(hù)合法擁有的某物,例如和用戶(hù)姓名/口令組合,保密字,諸如智能卡之類(lèi)硬件權(quán)標(biāo),生物統(tǒng)計(jì)標(biāo)識(shí)符或者其它一些信息相關(guān)的知識(shí)。除了保持在用戶(hù)主域的驗(yàn)證憑證之外,這些擁有證明憑證將被用戶(hù)的主域和/或聯(lián)合體內(nèi)的信賴(lài)域保持。如果用戶(hù)信息通過(guò)HTTP重定向從一個(gè)域傳送到另一域,那么各個(gè)域會(huì)保持擁有證明憑證。如果通過(guò)SOAP而不是HTTP重定向,直接在域(信任代理到信任代理)之間傳送用戶(hù)信息,那么擁有證明憑證可被用戶(hù)的主域保持。
剩余的附圖表示了在前面論述的聯(lián)合體系統(tǒng)結(jié)構(gòu)內(nèi)實(shí)現(xiàn)擁有證明質(zhì)詢(xún)的特征的不同情形。圖5-8描述了表示聯(lián)合體環(huán)境內(nèi)實(shí)體之間信息的流動(dòng)的調(diào)用流或數(shù)據(jù)流圖;在每個(gè)實(shí)體,在應(yīng)答接收的消息之后,響應(yīng)消息的接收,執(zhí)行一些處理。雖然例子表示通過(guò)用戶(hù)的瀏覽器,利用HTTP重定向進(jìn)行通信,不過(guò)當(dāng)需要時(shí),域也可直接通信。圖5描述了利用位于發(fā)布域和信賴(lài)域的信任代理之間的直接通信,發(fā)布方核實(shí)的擁有證明質(zhì)詢(xún)。圖6描述了利用位于發(fā)布域和信賴(lài)域的信任代理之間的直接通信,信賴(lài)域核實(shí)的擁有證明質(zhì)詢(xún)。圖7描述了發(fā)布方核實(shí)的擁有證明質(zhì)詢(xún),其間位于發(fā)布域和信賴(lài)域的信任代理通過(guò)信任中介通信。圖8描述了信賴(lài)域核實(shí)的擁有證明質(zhì)詢(xún),其間位于發(fā)布域和信賴(lài)域的信任代理通過(guò)信任中介通信。
現(xiàn)在參見(jiàn)圖5,調(diào)用流圖描述了利用位于發(fā)布域和信賴(lài)域的信任代理之間的直接通信,發(fā)布方核實(shí)的擁有證明質(zhì)詢(xún)。從發(fā)布域的聯(lián)系點(diǎn)服務(wù)器借助用戶(hù)的瀏覽器(步驟502),利用HTTP重定向向信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器發(fā)送聲明(步驟504)開(kāi)始該過(guò)程。信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把該聲明轉(zhuǎn)發(fā)給信賴(lài)域的信任代理以便確認(rèn)(步驟506)。
此時(shí),信賴(lài)域的信任代理在確認(rèn)接收的聲明,或者更具體地說(shuō),在代表用戶(hù)執(zhí)行任何進(jìn)一步的操作之前,確定擁有證明質(zhì)詢(xún)應(yīng)被用戶(hù)完成。信賴(lài)域的信任代理向發(fā)布方的信任代理要求應(yīng)被置入擁有證明質(zhì)詢(xún)中的信息(步驟508)。按照這種方式,發(fā)布域確定提供給用戶(hù)或者向用戶(hù)要求的信息。呼應(yīng)該請(qǐng)求,發(fā)布域的信任代理把質(zhì)詢(xún)信息返回給信賴(lài)域的信任代理(步驟510),信賴(lài)域的信任代理隨后建立擁有證明質(zhì)詢(xún),并將其返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟512)。信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把擁有證明質(zhì)詢(xún)發(fā)送給用戶(hù)的瀏覽器(步驟514),用戶(hù)的瀏覽器向用戶(hù)呈現(xiàn)所述質(zhì)詢(xún)(步驟516)。質(zhì)詢(xún)信息可采取適當(dāng)?shù)母袷剑缈砂ㄇ度氲闹С绦蚧蚰_本的web頁(yè)。質(zhì)詢(xún)信息的內(nèi)容要求只應(yīng)被該用戶(hù)擁有的一切,例如和用戶(hù)姓名/口令組合,保密字,諸如智能卡之類(lèi)硬件,生物統(tǒng)計(jì)標(biāo)識(shí)符等有關(guān)的知識(shí)。另外,質(zhì)詢(xún)信息可被加密和/或數(shù)字簽名,以保護(hù)質(zhì)詢(xún)信息的完整性。
在用戶(hù)應(yīng)答該質(zhì)詢(xún)(步驟518)之后,瀏覽器把用戶(hù)對(duì)質(zhì)詢(xún)的響應(yīng)返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟520),信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把質(zhì)詢(xún)響應(yīng)轉(zhuǎn)發(fā)給信賴(lài)域的信任代理(步驟522),信賴(lài)域的信任代理再把質(zhì)詢(xún)響應(yīng)轉(zhuǎn)發(fā)給發(fā)布域的信任代理以便進(jìn)行確認(rèn)(步驟524)。發(fā)布域不必是用戶(hù)的主域;它可以是充當(dāng)事實(shí)上是用戶(hù)主域的發(fā)布域的一個(gè)信賴(lài)域(或者一個(gè)以上)的域。從而,如果擁有證明憑證由用戶(hù)的主域保持,并且發(fā)布域不是用戶(hù)的主域,那么發(fā)布域可再把請(qǐng)求轉(zhuǎn)發(fā)給用戶(hù)的主域。
總之,發(fā)布域的信任代理隨后確認(rèn)質(zhì)詢(xún)響應(yīng),隨后把回答返回給信賴(lài)域的信任代理(步驟526)。這種情形下,發(fā)布域仍然是確定用戶(hù)響應(yīng)的有效性的唯一參與者;這樣,所有驗(yàn)證和擁有證明憑證會(huì)由用戶(hù)的主域保持,用戶(hù)的主域充當(dāng)用戶(hù)的發(fā)布域。另外,質(zhì)詢(xún)響應(yīng)也可被加密和/或數(shù)字簽名(可能和開(kāi)始傳送的質(zhì)詢(xún)信息中的支程序或腳本配合),以便保護(hù)質(zhì)詢(xún)響應(yīng)的完整性。
假定用戶(hù)的質(zhì)詢(xún)響應(yīng)已被用戶(hù)主域的信任代理或位于發(fā)布域的擁有證明確認(rèn)信任代理成功確認(rèn),信賴(lài)域的信任代理隨后向信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器服務(wù)器返回聲明確認(rèn)響應(yīng)(步驟528)。雖然用戶(hù)的質(zhì)詢(xún)響應(yīng)已被成功確認(rèn),但是初始接收的聲明不一定保證能夠確認(rèn)操作。假定聲明被成功確認(rèn),那么在信賴(lài)域建立會(huì)話(huà)(步驟530),之后結(jié)束該過(guò)程。隨后可對(duì)與初始接收的聲明相關(guān)的資源請(qǐng)求執(zhí)行其它處理。如果用戶(hù)的質(zhì)詢(xún)響應(yīng)無(wú)效,那么信賴(lài)域可決定拒絕初始接收的聲明,即使它可被成功確認(rèn)。這樣,聯(lián)合體環(huán)境具有確定與聲明相關(guān)的用戶(hù)是否是與聲明正確相關(guān)的合法用戶(hù)的機(jī)制。
現(xiàn)在參見(jiàn)圖6,調(diào)用流描述了利用位于發(fā)布域和信賴(lài)域的信任代理之間的直接通信,信賴(lài)域核實(shí)的擁有證明質(zhì)詢(xún)。從發(fā)布域的聯(lián)系點(diǎn)服務(wù)器通過(guò)用戶(hù)的瀏覽器(步驟602),利用HTTP重定向向信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器發(fā)送聲明(步驟604)開(kāi)始該過(guò)程。信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把該聲明轉(zhuǎn)發(fā)給信賴(lài)域的信任代理以便進(jìn)行確認(rèn)(步驟606)。
此時(shí),在確認(rèn)接收的聲明之前,或者更具體地說(shuō),在代表用戶(hù)執(zhí)行任何進(jìn)一步操作之前,信賴(lài)域的信任代理確定擁有證明質(zhì)詢(xún)應(yīng)被用戶(hù)完成。信賴(lài)域的信任代理向發(fā)布方的信任代理要求應(yīng)被置入擁有證明質(zhì)詢(xún)中的信息(步驟608)。響應(yīng)該請(qǐng)求,發(fā)布域的信任代理把質(zhì)詢(xún)信息返回給信賴(lài)域的信任代理(步驟610),信賴(lài)域的信任代理隨后建立擁有證明質(zhì)詢(xún),并將其返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟612)。信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把擁有證明質(zhì)詢(xún)發(fā)送給用戶(hù)的瀏覽器(步驟614),瀏覽器向用戶(hù)呈現(xiàn)所述質(zhì)詢(xún)(步驟616)。
在用戶(hù)應(yīng)答質(zhì)詢(xún)(步驟618)之后,瀏覽器把用戶(hù)對(duì)質(zhì)詢(xún)的響應(yīng)返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟620),信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把質(zhì)詢(xún)響應(yīng)轉(zhuǎn)發(fā)給信賴(lài)域的信任代理(步驟622),信賴(lài)域的信任代理隨后確認(rèn)質(zhì)詢(xún)響應(yīng)。這種情形下,信賴(lài)域能夠通過(guò)各種機(jī)制確定用戶(hù)響應(yīng)的有效性。例如,發(fā)布域可能已連同質(zhì)詢(xún)信息一起向信賴(lài)域提供了正確的質(zhì)詢(xún)響應(yīng);可通過(guò)加密保護(hù)質(zhì)詢(xún)響應(yīng)信息,防止受到惡意用戶(hù)的欺騙。
假定信賴(lài)域的信任代理已成功確認(rèn)用戶(hù)的質(zhì)詢(xún)響應(yīng),那么信賴(lài)域的信任代理把聲明確認(rèn)響應(yīng)返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟624)。雖然用戶(hù)的質(zhì)詢(xún)響應(yīng)已被成功確認(rèn),不過(guò)初始接收的聲明不一定保證通過(guò)確認(rèn)操作。假定聲明被成功確認(rèn),那么在信賴(lài)域建立會(huì)話(huà)(步驟626),之后結(jié)束該過(guò)程。隨后可對(duì)與初始接收的聲明相關(guān)的資源請(qǐng)求進(jìn)行其它處理。如果用戶(hù)的質(zhì)詢(xún)響應(yīng)無(wú)效,那么信賴(lài)域可決定拒絕初始接收的聲明,即使該聲明可被成功確認(rèn)。
現(xiàn)在參見(jiàn)圖7,調(diào)用流圖描述了發(fā)布方核實(shí)的擁有證明質(zhì)詢(xún),其間位于發(fā)布域和信賴(lài)域的信任代理通過(guò)信任中介通信。從位于發(fā)布域的聯(lián)系點(diǎn)服務(wù)器通過(guò)用戶(hù)的瀏覽器(步驟702),使用HTTP重定向向位于信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器發(fā)送聲明(步驟704)開(kāi)始該過(guò)程。信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把該聲明轉(zhuǎn)發(fā)給信賴(lài)域的信任代理以便進(jìn)行確認(rèn)(步驟706)。
此時(shí),在確認(rèn)接收的聲明之前,更具體地說(shuō),在代表用戶(hù)進(jìn)行任何進(jìn)一步的操作之前,信賴(lài)域的信任代理確定用戶(hù)應(yīng)完成擁有證明質(zhì)詢(xún)。和圖5及圖6相反,信賴(lài)域的信任代理調(diào)用信任中介,請(qǐng)求應(yīng)被置入擁有證明質(zhì)詢(xún)中的信息(步驟708)。信任中介隨后向發(fā)布方的信任代理要求擁有證明質(zhì)詢(xún)信息(步驟710)。本實(shí)施例中,發(fā)布方通常理應(yīng)是用戶(hù)的主域。本實(shí)施例的優(yōu)點(diǎn)在于使用信任中介;該過(guò)程避免了當(dāng)在聯(lián)合體內(nèi)回溯多個(gè)發(fā)布域,直到到達(dá)發(fā)布域,即主域時(shí)發(fā)生的“鏈接”。
響應(yīng)該請(qǐng)求,發(fā)布域的信任代理把質(zhì)詢(xún)信息返回給信任中介(步驟712),信任中介隨后把質(zhì)詢(xún)信息轉(zhuǎn)發(fā)給信賴(lài)域的信任代理(步驟714)。信賴(lài)域的信任代理建立擁有證明質(zhì)詢(xún),并將其返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟716),信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把擁有證明質(zhì)詢(xún)發(fā)送給用戶(hù)的瀏覽器(步驟718),瀏覽器向用戶(hù)呈現(xiàn)所述質(zhì)詢(xún)(步驟720)。
在用戶(hù)應(yīng)答所述質(zhì)詢(xún)(步驟722)之后,瀏覽器把用戶(hù)對(duì)質(zhì)詢(xún)的響應(yīng)返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟724),信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把質(zhì)詢(xún)響應(yīng)轉(zhuǎn)發(fā)給信賴(lài)域的信任代理(步驟726),信賴(lài)域的信任代理再把質(zhì)詢(xún)響應(yīng)轉(zhuǎn)發(fā)給信任中介,以便幫助啟動(dòng)確認(rèn)操作(步驟728)。代理中介把質(zhì)詢(xún)響應(yīng)轉(zhuǎn)發(fā)給發(fā)布域的信任代理,以便進(jìn)行確認(rèn)(步驟730)。發(fā)布域的信任代理隨后確認(rèn)質(zhì)詢(xún)響應(yīng),并把回答返回給信任中介(步驟732),信任中介把確認(rèn)響應(yīng)轉(zhuǎn)發(fā)給信賴(lài)域的信任代理(步驟734)。按照和參考圖5中的情形表示的相似方式,發(fā)布域仍然是確定用戶(hù)響應(yīng)的有效性的唯一參與者,但是這種情形下,信賴(lài)域向信任中介請(qǐng)求幫助。
假定發(fā)布域的信任代理成功確認(rèn)了用戶(hù)的質(zhì)詢(xún)響應(yīng),那么信賴(lài)域的信任代理向信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器返回聲明確認(rèn)響應(yīng)(步驟736)。雖然用戶(hù)的質(zhì)詢(xún)響應(yīng)已被成功確認(rèn),不過(guò)初始接收的聲明不一定保證通過(guò)確認(rèn)操作。假定聲明被成功確認(rèn),那么在信賴(lài)域建立會(huì)話(huà)(步驟738),之后結(jié)束該過(guò)程。隨后可對(duì)與初始接收的聲明相關(guān)的資源請(qǐng)求進(jìn)行其它處理。如果用戶(hù)的質(zhì)詢(xún)響應(yīng)無(wú)效,那么信賴(lài)域可決定拒絕初始接收的聲明,即使該聲明可被成功確認(rèn)。
現(xiàn)在參見(jiàn)圖8,調(diào)用流圖描述了信賴(lài)域核實(shí)的擁有證明質(zhì)詢(xún),其間位于發(fā)布域和信賴(lài)域的信任代理通過(guò)信任中介通信。從位于發(fā)布域的聯(lián)系點(diǎn)服務(wù)器通過(guò)用戶(hù)的瀏覽器(步驟802),使用HTTP重定向向位于信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器發(fā)送聲明(步驟804)開(kāi)始該過(guò)程。信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把該聲明轉(zhuǎn)發(fā)給信賴(lài)域的信任代理以便進(jìn)行確認(rèn)(步驟806)。
此時(shí),在確認(rèn)接收的聲明之前,更具體地說(shuō),在代表用戶(hù)進(jìn)行任何進(jìn)一步操作之前,信賴(lài)域的信任代理確定用戶(hù)應(yīng)完成擁有證明質(zhì)詢(xún)。信賴(lài)域的信任代理調(diào)用信任中介,請(qǐng)求應(yīng)被置入擁有證明質(zhì)詢(xún)中的信息(步驟808),信任中介再向發(fā)布方的信任代理要求獲得質(zhì)詢(xún)信息(步驟810)。響應(yīng)該請(qǐng)求,發(fā)布域的信任代理把質(zhì)詢(xún)信息返回給信任中介(步驟812),信任中介隨后把質(zhì)詢(xún)信息轉(zhuǎn)發(fā)給信賴(lài)域的信任代理(步驟814),信賴(lài)域的信任代理隨后建立擁有證明質(zhì)詢(xún),并將其返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟816)。信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把擁有證明質(zhì)詢(xún)發(fā)送給用戶(hù)的瀏覽器(步驟818),瀏覽器向用戶(hù)呈現(xiàn)所述質(zhì)詢(xún)(步驟820)。
在用戶(hù)應(yīng)答所述質(zhì)詢(xún)(步驟822)之后,瀏覽器把用戶(hù)對(duì)質(zhì)詢(xún)的響應(yīng)返回給信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器(步驟824),信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器把質(zhì)詢(xún)響應(yīng)轉(zhuǎn)發(fā)給信賴(lài)域的信任代理(步驟826),信賴(lài)域的信任代理隨后確認(rèn)質(zhì)詢(xún)響應(yīng)。
假定信賴(lài)域的信任代理成功確認(rèn)了用戶(hù)的質(zhì)詢(xún)響應(yīng),那么信賴(lài)域的信任代理隨后向信賴(lài)域的聯(lián)系點(diǎn)服務(wù)器返回聲明確認(rèn)響應(yīng)(步驟828)。雖然用戶(hù)的質(zhì)詢(xún)響應(yīng)已被成功確認(rèn),不過(guò)初始接收的聲明不一定保證通過(guò)確認(rèn)操作。假定聲明被成功確認(rèn),那么在信賴(lài)域建立會(huì)話(huà)(步驟830),之后結(jié)束該過(guò)程。隨后可對(duì)與初始接收的聲明相關(guān)的資源請(qǐng)求進(jìn)行其它處理。如果用戶(hù)的質(zhì)詢(xún)響應(yīng)無(wú)效,那么信賴(lài)域可決定拒絕初始接收的聲明,即使該聲明可被成功確認(rèn)。
鑒于上面提供的本發(fā)明的詳細(xì)說(shuō)明,本發(fā)明的優(yōu)點(diǎn)應(yīng)是顯而易見(jiàn)的?,F(xiàn)有的技術(shù)方案把域安全服務(wù)組織成分級(jí)結(jié)構(gòu),要求域具有牢固的信任關(guān)系和內(nèi)在兼容的技術(shù)。其它方法對(duì)驗(yàn)證聲明強(qiáng)加統(tǒng)一格式,或者不便于驗(yàn)證聲明的傳送,有時(shí)傳送據(jù)其建立本地聲明的經(jīng)驗(yàn)證身份。
在本發(fā)明的優(yōu)點(diǎn)中,信任代理允許指定域中的現(xiàn)有安全服務(wù)與其它域建立信任關(guān)系,而不必預(yù)訂相同的信任根源或者使用相同的信任建立技術(shù)。從而,本發(fā)明的聯(lián)合體系統(tǒng)結(jié)構(gòu)提供實(shí)體的松散結(jié)合。主域管理驗(yàn)證,并且每個(gè)域只管理它自己的注冊(cè)用戶(hù)的驗(yàn)證。每個(gè)域自由接受、拒絕或修改任意其它域的關(guān)于用戶(hù)身份及屬性的陳述。信賴(lài)域依靠發(fā)布域(歸根結(jié)底,主域)的身份和屬性聲明,而每個(gè)域可實(shí)現(xiàn)任意驗(yàn)證協(xié)議,不需要修改指定域內(nèi)的應(yīng)用程序,即可實(shí)現(xiàn)先前不支持的協(xié)議,以便指定域參與聯(lián)合體。聯(lián)合體不需要特殊的信任模式;一組實(shí)體可形成遵守參與各方已建立的信任模式的聯(lián)合體。只有在信任代理和/或信任中介,才可發(fā)生聲明轉(zhuǎn)換;聯(lián)合體系統(tǒng)結(jié)構(gòu)充當(dāng)可在對(duì)現(xiàn)有舊系統(tǒng)影響極小的情況下實(shí)現(xiàn)的前端基礎(chǔ)結(jié)構(gòu)。
聯(lián)合體允許用戶(hù)按照單一注冊(cè)方式,在指定聯(lián)合體內(nèi)的不同站點(diǎn)間無(wú)縫來(lái)回移動(dòng)。由于在聯(lián)合體參與者之間建立的信任關(guān)系的緣故,一個(gè)參與者能夠驗(yàn)證用戶(hù),隨后充當(dāng)該用戶(hù)的發(fā)布方。其它聯(lián)合體伙伴變成信賴(lài)方,從而它們依靠發(fā)布方提供的關(guān)于用戶(hù)的信息,而不直接涉及該用戶(hù)。
通過(guò)借助在聲明的初始傳送之后執(zhí)行的擁有證明質(zhì)詢(xún),要求用戶(hù)重新證明他們的身份,發(fā)布方和信賴(lài)方可提高聯(lián)合體環(huán)境內(nèi)的安全性。擁有證明并不替代驗(yàn)證質(zhì)詢(xún)/響應(yīng),而是提供額外的一層安全性。擁有證明質(zhì)詢(xún)還可被認(rèn)為是“活性證明”質(zhì)詢(xún);它是用戶(hù)擁有一條或數(shù)條不能被設(shè)法劫持、截取或冒充合法用戶(hù)會(huì)話(huà)的惡意用戶(hù)知道的消息的測(cè)試。擁有證明質(zhì)詢(xún)不預(yù)防所謂的中間人攻擊,除非已通過(guò)利用客戶(hù)機(jī)方數(shù)字證書(shū)產(chǎn)生了安全會(huì)話(huà)。但是,擁有證明質(zhì)詢(xún)可防止其中某人非法偽稱(chēng)具有另一用戶(hù)的身份(假定通過(guò)擁有證明質(zhì)詢(xún)的附加質(zhì)詢(xún)/響應(yīng)測(cè)試,證實(shí)了該用戶(hù)身份)的欺騙。如果用戶(hù)不能通過(guò)擁有證明質(zhì)詢(xún),那么信賴(lài)方可拒絕代表用戶(hù)進(jìn)行任何操作。
重要的是注意雖然在全功能數(shù)據(jù)處理系統(tǒng)的環(huán)境中描述了本發(fā)明,不過(guò)本領(lǐng)域的普通技術(shù)人員會(huì)認(rèn)識(shí)到能夠以計(jì)算機(jī)可讀介質(zhì)中的指令形式,以及各種其它形式分布本發(fā)明的處理,而不考慮實(shí)際用于實(shí)現(xiàn)所述分布的信號(hào)承載介質(zhì)的特定類(lèi)型。計(jì)算機(jī)可讀介質(zhì)的例子包括諸如EPROM、ROM、磁帶、紙張、軟盤(pán)、硬盤(pán)驅(qū)動(dòng)器、RAM和CD-ROM之類(lèi)介質(zhì),以及傳輸型介質(zhì),例如數(shù)字和模擬通信鏈路。
方法通常被設(shè)想為導(dǎo)致所需結(jié)果的前后一致的步驟序列。這些步驟需要物理量的物理處理。通常(不過(guò)不是必定),這些物理量采取能夠被存儲(chǔ)、傳送、組合、比較和以其它方式處理的電或磁信號(hào)的形式。有時(shí)主要是出于共同應(yīng)用的原因,把這些信號(hào)稱(chēng)作位、數(shù)值、參數(shù)、項(xiàng)目、元素、對(duì)象、符號(hào)、字符、項(xiàng)、數(shù)字等是有利的。但是,應(yīng)注意的是所有這些術(shù)語(yǔ)和類(lèi)似術(shù)語(yǔ)與適當(dāng)?shù)奈锢砹肯嚓P(guān),并且只是適用于這些物理量的便利標(biāo)記。
出于舉例說(shuō)明的目的給出了本發(fā)明的說(shuō)明,但是所述說(shuō)明并不是詳盡的,或者局限于所公開(kāi)的實(shí)施例。對(duì)本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),許多修改和變化是顯而易見(jiàn)的。實(shí)施例用于說(shuō)明本發(fā)明的原理及其實(shí)際應(yīng)用,以及使本領(lǐng)域的普通技術(shù)人員能夠理解本發(fā)明,以便買(mǎi)現(xiàn)具有適合于其它預(yù)期應(yīng)用的各種修改的不同實(shí)施例。
權(quán)利要求
1.數(shù)據(jù)處理系統(tǒng)內(nèi)的聲明處理方法,所述方法包括在第二域中的第二信任代理從第一域內(nèi)的第一信任代理接收與用戶(hù)相關(guān)的聲明,其中所述聲明和來(lái)自客戶(hù)機(jī)的訪(fǎng)問(wèn)第二域內(nèi)的受控資源的請(qǐng)求相關(guān);質(zhì)詢(xún)客戶(hù)機(jī)的用戶(hù),提供要求被和所述聲明相關(guān)的用戶(hù)擁有的信息;和響應(yīng)客戶(hù)機(jī)的用戶(hù)擁有要求被和所述聲明相關(guān)的用戶(hù)擁有的信息的確定,在第二信任代理確認(rèn)聲明。
2.按照權(quán)利要求1所述的方法,還包括從第二信任代理向第一信任代理發(fā)送質(zhì)詢(xún)信息請(qǐng)求;在第二信任代理接收來(lái)自第一信任代理的質(zhì)詢(xún)信息;在第二信任代理產(chǎn)生擁有證明質(zhì)詢(xún),其中對(duì)擁有證明質(zhì)詢(xún)的有效響應(yīng)包括要求被和所述聲明相關(guān)的用戶(hù)擁有的信息;和向客戶(hù)機(jī)發(fā)送所述擁有證明質(zhì)詢(xún)。
3.按照權(quán)利要求2所述的方法,還包括在第二信任代理確認(rèn)對(duì)擁有證明質(zhì)詢(xún)的響應(yīng)。
4.按照權(quán)利要求2所述的方法,還包括在第一信任代理確認(rèn)對(duì)擁有證明質(zhì)詢(xún)的響應(yīng)。
5.按照權(quán)利要求2所述的方法,還包括通過(guò)信任中介,在第一信任代理和第二信任代理之間傳遞擁有證明質(zhì)詢(xún)和對(duì)所述擁有證明質(zhì)詢(xún)的響應(yīng)。
6.按照權(quán)利要求2所述的方法,還包括通過(guò)第三信任代理,在第一信任代理和第二信任代理之間傳遞擁有證明質(zhì)詢(xún)和對(duì)所述擁有證明質(zhì)詢(xún)的響應(yīng)。
7.按照權(quán)利要求1所述的方法,還包括響應(yīng)在第二信任代理的聲明的成功確認(rèn),提供對(duì)受控資源的訪(fǎng)問(wèn)。
8.按照權(quán)利要求1所述的方法,還包括在接收對(duì)第二域中系統(tǒng)的受控資源的請(qǐng)求之前,在第一域內(nèi)確定在第一信任代理產(chǎn)生關(guān)于該用戶(hù)的聲明;和把所述聲明和關(guān)于受控資源的請(qǐng)求一起從第一域推送給第二域。
9.按照權(quán)利要求1所述的方法,還包括在接收對(duì)第二域中系統(tǒng)的受控資源的請(qǐng)求之后,把所述聲明從第二信任代理拉到第一信任代理。
10.按照權(quán)利要求1所述的方法,還包括建立第一信任代理和第二信任代理之間的信任關(guān)系。
11.按照權(quán)利要求1所述的方法,還包括通過(guò)信任中介,保持第一信任代理和第二信任代理之間的間接關(guān)系。
12.按照權(quán)利要求1所述的方法,其中聲明是驗(yàn)證聲明,授權(quán)聲明或者屬性聲明。
13.數(shù)據(jù)處理系統(tǒng)內(nèi)的聲明處理設(shè)備,所述設(shè)備包括在第二域中的第二信任代理從第一域內(nèi)的第一信任代理接收與用戶(hù)相關(guān)的聲明的裝置,其中所述聲明和來(lái)自客戶(hù)機(jī)的訪(fǎng)問(wèn)第二域內(nèi)的受控資源的請(qǐng)求相關(guān);質(zhì)詢(xún)客戶(hù)機(jī)的用戶(hù),提供要求被和所述聲明相關(guān)的用戶(hù)擁有的信息的裝置;和響應(yīng)客戶(hù)機(jī)的用戶(hù)擁有要求被和所述聲明相關(guān)的用戶(hù)擁有的信息的確定,在第二信任代理確認(rèn)聲明的裝置。
14.按照權(quán)利要求13所述的設(shè)備,還包括從第二信任代理向第一信任代理發(fā)送質(zhì)詢(xún)信息請(qǐng)求的裝置;在第二信任代理接收來(lái)自第一信任代理的質(zhì)詢(xún)信息的裝置;在第二信任代理產(chǎn)生擁有證明質(zhì)詢(xún)的裝置,其中對(duì)擁有證明質(zhì)詢(xún)的有效響應(yīng)包括要求被和所述聲明相關(guān)的用戶(hù)擁有的信息;和向客戶(hù)機(jī)發(fā)送所述擁有證明質(zhì)詢(xún)的裝置。
15.按照權(quán)利要求14所述的設(shè)備,還包括在第二信任代理確認(rèn)對(duì)擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
16.按照權(quán)利要求14所述的設(shè)備,還包括在第一信任代理確認(rèn)對(duì)擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
17.按照權(quán)利要求14所述的設(shè)備,還包括通過(guò)信任中介,在第一信任代理和第二信任代理之間傳遞擁有證明質(zhì)詢(xún)和對(duì)所述擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
18.按照權(quán)利要求14所述的設(shè)備,還包括通過(guò)第三信任代理,在第一信任代理和第二信任代理之間傳遞擁有證明質(zhì)詢(xún)和對(duì)所述擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
19.按照權(quán)利要求13所述的設(shè)備,還包括響應(yīng)在第二信任代理的聲明的成功確認(rèn),提供對(duì)受控資源的訪(fǎng)問(wèn)的裝置。
20.按照權(quán)利要求13所述的設(shè)備,還包括在接收對(duì)第二域中系統(tǒng)的受控資源的請(qǐng)求之前,在第一域內(nèi)確定在第一信任代理產(chǎn)生關(guān)于該用戶(hù)的聲明的裝置;和把所述聲明和關(guān)于受控資源的請(qǐng)求一起從第一域推送給第二域的裝置。
21.按照權(quán)利要求13所述的設(shè)備,還包括在接收對(duì)第二域中系統(tǒng)的受控資源的請(qǐng)求之后,把所述聲明從第二信任代理拉到第一信任代理的裝置。
22.按照權(quán)利要求13所述的設(shè)備,還包括建立第一信任代理和第二信任代理之間的信任關(guān)系的裝置。
23.按照權(quán)利要求13所述的設(shè)備,還包括通過(guò)信任中介,保持第一信任代理和第二信任代理之間的間接關(guān)系的裝置。
24.按照權(quán)利要求13所述的設(shè)備,其中聲明是驗(yàn)證聲明,授權(quán)聲明或者屬性聲明。
25.計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,供數(shù)據(jù)處理系統(tǒng)用于進(jìn)行聲明處理,所述計(jì)算機(jī)程序產(chǎn)品包括在第二域中的第二信任代理從第一域內(nèi)的第一信任代理接收與用戶(hù)相關(guān)的聲明的裝置,其中所述聲明和來(lái)自客戶(hù)機(jī)的訪(fǎng)問(wèn)第二域內(nèi)的受控資源的請(qǐng)求相關(guān);質(zhì)詢(xún)客戶(hù)機(jī)的用戶(hù),提供要求被和所述聲明相關(guān)的用戶(hù)擁有的信息的裝置;和響應(yīng)客戶(hù)機(jī)的用戶(hù)擁有要求被和所述聲明相關(guān)的用戶(hù)擁有的信息的確定,在第二信任代理確認(rèn)聲明的裝置。
26.按照權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,還包括從第二信任代理向第一信任代理發(fā)送質(zhì)詢(xún)信息請(qǐng)求的裝置;在第二信任代理接收來(lái)自第一信任代理的質(zhì)詢(xún)信息的裝置;在第二信任代理產(chǎn)生擁有證明質(zhì)詢(xún)的裝置,其中對(duì)擁有證明質(zhì)詢(xún)的有效響應(yīng)包括要求被和所述聲明相關(guān)的用戶(hù)擁有的信息;和向客戶(hù)機(jī)發(fā)送所述擁有證明質(zhì)詢(xún)的裝置。
27.按照權(quán)利要求26所述的計(jì)算機(jī)程序產(chǎn)品,還包括在第二信任代理確認(rèn)對(duì)擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
28.按照權(quán)利要求26所述的計(jì)算機(jī)程序產(chǎn)品,還包括在第一信任代理確認(rèn)對(duì)擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
29.按照權(quán)利要求26所述的計(jì)算機(jī)程序產(chǎn)品,還包括通過(guò)信任中介,在第一信任代理和第二信任代理之間傳遞擁有證明質(zhì)詢(xún)和對(duì)所述擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
30.按照權(quán)利要求26所述的計(jì)算機(jī)程序產(chǎn)品,還包括通過(guò)第三信任代理,在第一信任代理和第二信任代理之間傳遞擁有證明質(zhì)詢(xún)和對(duì)所述擁有證明質(zhì)詢(xún)的響應(yīng)的裝置。
31.按照權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,還包括響應(yīng)在第二信任代理的聲明的成功確認(rèn),提供對(duì)受控資源的訪(fǎng)問(wèn)的裝置。
32.按照權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,還包括在接收對(duì)第二域中系統(tǒng)的受控資源的請(qǐng)求之前,在第一域內(nèi)確定在第一信任代理產(chǎn)生關(guān)于該用戶(hù)的聲明的裝置;和把所述聲明和關(guān)于受控資源的請(qǐng)求一起從第一域推送給第二域的裝置。
33.按照權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,還包括在接收對(duì)第二域中系統(tǒng)的受控資源的請(qǐng)求之后,把所述聲明從第二信任代理拉到第一信任代理的裝置。
34.按照權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,還包括建立第一信任代理和第二信任代理之間的信任關(guān)系的裝置。
35.按照權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,還包括通過(guò)信任中介,保持第一信任代理和第二信任代理之間的間接關(guān)系的裝置。
36.按照權(quán)利要求25所述的計(jì)算機(jī)程序產(chǎn)品,其中聲明是驗(yàn)證聲明,授權(quán)聲明或者屬性聲明。
全文摘要
提供一種方法、設(shè)備、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品,其中聯(lián)合域在聯(lián)合體環(huán)境中交互作用。聯(lián)合體內(nèi)的域能夠在其它聯(lián)合域?yàn)橛脩?hù)啟動(dòng)聯(lián)合單一注冊(cè)操作。域內(nèi)的聯(lián)系點(diǎn)服務(wù)器依靠域內(nèi)的信任代理管理域和聯(lián)合體之間的信任關(guān)系。根據(jù)需要,信任代理解釋來(lái)自其它聯(lián)合域的聲明。信任代理可與一個(gè)或多個(gè)信任中介具有信任關(guān)系,信任代理可依靠信任中介幫助解釋聲明。為了提高安全性,通過(guò)在用戶(hù)啟動(dòng)單一注冊(cè)操作之后執(zhí)行的擁有證明質(zhì)詢(xún),域還可要求用戶(hù)重新證明他們的身份。
文檔編號(hào)H04L29/06GK1521978SQ200310122318
公開(kāi)日2004年8月18日 申請(qǐng)日期2003年12月18日 優(yōu)先權(quán)日2002年12月31日
發(fā)明者喬治·R·布雷克利三世, 海澤·M·辛頓, M 辛頓, 喬治 R 布雷克利三世 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司