專利名稱:信任關(guān)系的聲明變換的制作方法
信任關(guān)系的聲明變換 背景
具有不同且獨(dú)立的計(jì)算機(jī)系統(tǒng)的各單獨(dú)組織通常期望以高效的方式互 相,并且,具體地,向其員工、顧客等提供信息。為從組織獲得信息,通 常要求用戶通過向其請(qǐng)求信息的組織提供對(duì)例如用戶名和口令的憑證的擁 有來認(rèn)證或證明其身份。然而,取代要求獨(dú)立的安全登錄憑證,例如,用 戶名和密碼,以訪問各單獨(dú)組織的網(wǎng)站所提供的信息,各單獨(dú)組織可以互 相形成商業(yè)級(jí)協(xié)定以共享和訪問信息。聯(lián)合認(rèn)證系統(tǒng)是其中伙伴可以通過 部署其聯(lián)合服務(wù)來共享和訪問信息的系統(tǒng)的一個(gè)示例。為共享和訪問這一 信息,第一伙伴可以使用身份數(shù)據(jù)和/或認(rèn)證相關(guān)數(shù)據(jù)來向第二伙伴作出"聲 明"。在這一關(guān)系中,第二伙伴信任第一伙伴來認(rèn)證用戶和作出關(guān)于該用 戶的某些聲明。然而,情況可能是第二伙伴不能理解第一伙伴向其呈現(xiàn)的 聲明。例如,聲明可以是第二伙伴所不能識(shí)別的格式。在各組織與多個(gè)伙 伴進(jìn)行通信時(shí),這一問題惡化。
雖然本背景是針對(duì)特定的問題的,但本發(fā)明決不旨在限于解決那些特 定問題。
概述
本發(fā)明的各實(shí)施例一般涉及用于在可信伙伴之間共享的聲明或認(rèn)證信 息的變換。其它各實(shí)施例涉及在聯(lián)合系統(tǒng)中使用多個(gè)聲明變換模塊。
如此處所討論的,特定實(shí)施例的一個(gè)方面涉及將多個(gè)自定義聲明變換 模塊作為可擴(kuò)展性點(diǎn)的一部分來使用。在一實(shí)施例中,可以給予多個(gè)聲明 變換模塊以流水線的方式操作聲明或聲明集的機(jī)會(huì)來產(chǎn)生經(jīng)變換的聲明或 聲明集。在另一實(shí)施例中,可以存在多個(gè)聲明變換模塊,但只給予適當(dāng)?shù)?聲明變換模塊操作聲明或聲明集的機(jī)會(huì)。
提供本概述以便以簡(jiǎn)化的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的 一些概念。本概述并不旨在標(biāo)識(shí)要求保護(hù)的主題的關(guān)鍵特征或必要特征,
也決不旨在用于限制要求保護(hù)的主題的范圍。
附圖簡(jiǎn)述
圖1示出根據(jù)本發(fā)明的一實(shí)施例的用于在兩個(gè)組織之間共享包括身份 數(shù)據(jù)和/或認(rèn)證相關(guān)數(shù)據(jù)的"聲明"信息的網(wǎng)絡(luò)環(huán)境的邏輯表示,其中第一 組織是身份提供方而第二組織是資源提供方。
圖2描繪根據(jù)本發(fā)明的一實(shí)施例的示出從一個(gè)組織到另一個(gè)組織,例 如從圖1所示的身份提供方到資源提供方的聲明數(shù)據(jù)流的、具有可擴(kuò)展聲 明變換模塊的總體認(rèn)證環(huán)境。
圖3示出根據(jù)本發(fā)明的一實(shí)施例的示出除圖1所示的示例關(guān)系之外的 多個(gè)信任關(guān)系和對(duì)多個(gè)自定義聲明變換模塊的使用的網(wǎng)絡(luò)環(huán)境的邏輯表 示。
圖4描繪了根據(jù)本發(fā)明的一實(shí)施例的作為可擴(kuò)展性點(diǎn)的一部分且以流 水線的方式來安排的圖3的多個(gè)自定義聲明變換模塊。
圖5是示出根據(jù)本發(fā)明的一實(shí)施例的用于通過使用圖4所示的多個(gè)流 水線化的自定義聲明變換子模塊來變換聲明信息的過程的操作特性的流程 圖。
圖6是示出根據(jù)本發(fā)明的另一實(shí)施例的涉及圖3的多個(gè)自定義聲明變 換子模塊和聲明到適當(dāng)?shù)淖远x聲明變換子模塊的映射的過程的操作特性 的流程圖。
圖7是與圖5相關(guān)聯(lián)的用于聚集孤立的所得聲明的另一實(shí)施例。 圖8是與圖6相關(guān)聯(lián)的用于聚集孤立的所得聲明的另外的實(shí)施例。 圖9是示出涉及圖3的自定義聲明變換子模塊的創(chuàng)建、插入和配置的 過程的操作特性的流程圖。
圖IO描繪其上可以實(shí)現(xiàn)本發(fā)明的各實(shí)施例的示例性計(jì)算系統(tǒng)。 詳細(xì)描述
本發(fā)明現(xiàn)將參考其中示出了某些實(shí)施例的附圖來更完整地描述一些示 例性實(shí)施例。然而,其它方面能以許多不同的形式來實(shí)現(xiàn)并且在本發(fā)明中 包括具體的實(shí)施例不應(yīng)被解釋為將這些方面限于在此所述的各實(shí)施例。相 反,包括附圖中描繪的各實(shí)施例是為了提供全面且完整的且將預(yù)期的范圍 完全地傳達(dá)給本領(lǐng)域技術(shù)人員的公開。在參考附圖時(shí),使用相同的附圖標(biāo) 記來指示在所有附圖中示出的相同的結(jié)構(gòu)和元素。圖1中示出環(huán)境100,其示出了也被稱為身份提供方102的第一組織
102,其與也被稱為資源提供方104的第二組織104共享安全令牌108,其 中該令牌由身份提供方102密碼地簽名且包括一個(gè)聲明或多個(gè)聲明。盡管 本發(fā)明的一實(shí)施例提到"多個(gè)聲明",但根據(jù)本發(fā)明的另一實(shí)施例的安全 令牌108中可以包括單個(gè)聲明。在該示例性環(huán)境中,用戶103使用通過網(wǎng) 絡(luò)105發(fā)送到身份提供方102的某一憑證來認(rèn)證。用戶請(qǐng)求可被用來向資 源提供方104認(rèn)證的安全令牌108。利用原始認(rèn)證事件,身份提供方102 形成包括關(guān)于該用戶的各種聲明的安全令牌108。用戶103將安全令牌108 呈獻(xiàn)給資源提供方104,并且在資源提供方104驗(yàn)證該安全令牌由可信方發(fā) 放且該方被授權(quán)作出其中這些聲明之后,資源提供方104基于那些聲明授 予對(duì)資源的訪問。
在一實(shí)施例中,密碼地簽名的安全令牌包括身份提供方102,即"請(qǐng) 求者"被資源提供方104所信任的密碼證明。由此,資源提供方104信任 身份提供方102以認(rèn)證用戶103并作出關(guān)于該用戶的特定聲明。該關(guān)系被 稱為"信任關(guān)系",因?yàn)橘Y源提供方104'"信任"身份提供方102。資源提 供方104和身份提供方102的信任關(guān)系由此被定義為資源提供方104域和 身份提供方102域之間的邏輯關(guān)系,其中資源提供方104尊重身份提供方 102關(guān)于其用戶的聲明。雖然使用了術(shù)語"信任關(guān)系",但該關(guān)系絕不是雙 邊的。相反,資源提供方104信任身份提供方102,且身份提供方102和資 源提供方104可被稱為信任伙伴。
在圖1的示例性實(shí)施例中,組織102和104由此具有信任關(guān)系以使可 被用來向資源提供方104認(rèn)證的安全令牌108可通過網(wǎng)絡(luò)106發(fā)送到組織 104。根據(jù)圖l示出的示例性實(shí)施例,安全令牌108向資源提供方104認(rèn)證 用戶103,其中安全令牌108由可信方,即身份提供方102發(fā)放。安全令牌 108中包括的聲明在認(rèn)證之后被用來定制用戶103的體驗(yàn)和/或做出授權(quán)決 定。該信任關(guān)系由此允許身份提供方102和資源提供方104之間的不同的 信息流。盡管信息流可以存在,但在一個(gè)實(shí)施例中,安全令牌108中所傳 輸?shù)穆暶髟诠蚕碇耙驯粡囊环N格式變換成另一種格式。安全令牌108中 的聲明信息的這一變換可以通過使用作為身份提供方102域中的可擴(kuò)展性點(diǎn)124的一部分插入的聲明變換模塊來完成。盡管可以使用單個(gè)聲明變換 模塊,但也可以插入多個(gè)聲明變換模塊作為該可擴(kuò)展性點(diǎn)的一部分。在另 一實(shí)施例中,聲明信息可在其通過網(wǎng)絡(luò)106發(fā)送之后通過使用可擴(kuò)展聲明
變換模塊126來變換。該實(shí)施例的各方面還允許使用多個(gè)聲明變換模塊。 圖1示出聲明信息108從身份提供方102到資源提供方104的流程。 根據(jù)本發(fā)明的一實(shí)施例,安全令牌108中的聲明信息實(shí)際是被示為聲明集 110的一組具體聲明。每一聲明一般都涉及與特定個(gè)人或用戶相關(guān)的標(biāo)識(shí)信 息,例如, 一個(gè)聲明可以包括用戶的名字112,而另一個(gè)聲明可以包括用戶 的電子郵件地址114。其它聲明可以涉及用戶的員工標(biāo)識(shí)號(hào)116、社會(huì)保險(xiǎn) 號(hào)118、身體特征120 (例如,發(fā)色)、其它112。包括在安全令牌108中 的聲明信息被用來定制用戶體驗(yàn)和/或做出授權(quán)決定。由此,如下討論的, 聲明的格式(或內(nèi)容)可以取決于資源提供方來修改。在一實(shí)施例中,資 源提供方104使用聲明來驗(yàn)證或認(rèn)證身份提供方102的用戶的帳戶。盡管 一實(shí)施例可以使圖1描繪的安全令牌108包括多個(gè)聲明,但另一實(shí)施例則 可以涉及由單個(gè)聲明組成的流程。
如所述的,在本發(fā)明的實(shí)施例中,身份提供方102和資源提供方104 是信任伙伴。身份提供方102和資源提供方104可以是任何類型的實(shí)體, 如,僅作為示例,公司、企業(yè)、個(gè)人等。可以理解,任何計(jì)算機(jī)系統(tǒng)都可 以用作這一實(shí)體。還可以理解,這些實(shí)體之間的信任關(guān)系對(duì)本領(lǐng)域技術(shù)人 員來說是公知的。 一般而言,信任關(guān)系要求安全認(rèn)證以在準(zhǔn)許對(duì)該組織的 資源訪問之前認(rèn)證用戶。web服務(wù)(WS)聯(lián)盟是啟用跨組織邊界的身份信 息共享的機(jī)制,其中每一信任伙伴都部署其聯(lián)合的服務(wù)以啟用這種信息共 享和訪問。由此,這種信任關(guān)系還可被稱為"聯(lián)合的"認(rèn)證關(guān)系,且聲明 可被稱為是通過網(wǎng)絡(luò)從身份提供方102 "聯(lián)合"到資源提供方104。為啟用 這一共享,WS聯(lián)盟通常使用可擴(kuò)展標(biāo)記語言(XML)安全令牌,其中這 種安全令牌利用諸如安全斷言標(biāo)記語言(SAML)或可擴(kuò)展權(quán)限標(biāo)記語言
(XrML)等格式。這些安全令牌包括但不限于,聲明信息。WS聯(lián)盟是描 述通信協(xié)議的規(guī)范。WS聯(lián)盟協(xié)議以由微軟公司生產(chǎn)的現(xiàn)用目錄聯(lián)合服務(wù)
("ADFS")來實(shí)現(xiàn)。在本發(fā)明的一實(shí)施例中,身份提供方102具有實(shí)現(xiàn)從一個(gè)格式到資源
提供方104指定的一個(gè)格式的聲明信息變換的可擴(kuò)展聲明變換模塊124。變 換模塊124用于將聲明或聲明集變換成所需格式。同樣地,在另一實(shí)施例 中,資源提供方可以部署多個(gè)且不同的應(yīng)用程序,其中這些應(yīng)用程序可以 不以同一格式接受所有安全聲明。僅作為示例,資源提供方的一個(gè)應(yīng)用程 序可以要求用戶的出生日期而另一應(yīng)用程序可以要求用戶以年為單位的年 齡。由此,資源提供方有必要將身份提供方提供的聲明的格式變換成特定 資源應(yīng)用程序所要求的格式。由此,在一實(shí)施例中,可擴(kuò)展資源提供方聲 明變換模塊126被用于各種情況中,包括但不限于,諸如其中身份提供方 102不以資源提供方104所識(shí)別的或要求的適當(dāng)格式來提供聲明或其中特 定資源應(yīng)用程序要求聲明的進(jìn)一步或不同的變換的情況。在各實(shí)施例中, 由此為該信任關(guān)系中的特定身份提供方102和特定資源提供方104(或類似 地,為特定資源應(yīng)用程序)定制身份提供方和資源提供方聲明變換模塊, 且其還可以被稱為"自定義"聲明變換模塊。
如所述的,身份提供方102和資源提供方104通過網(wǎng)絡(luò)106共享和訪 問信息。網(wǎng)絡(luò)105和106可以是本領(lǐng)域技術(shù)人員常規(guī)上已知的任何類型的 網(wǎng)絡(luò)。根據(jù)一示例性實(shí)施例,網(wǎng)絡(luò)可以是全球網(wǎng)絡(luò)(例如,因特網(wǎng)或萬維 網(wǎng))。其還可以是局域網(wǎng)或廣域網(wǎng)。在另一實(shí)施例中,網(wǎng)絡(luò)可以是專用網(wǎng) 絡(luò),例如,內(nèi)聯(lián)網(wǎng),但組織具有完全分開且不同的管理域。盡管網(wǎng)絡(luò)106 可以是本領(lǐng)域技術(shù)人員常規(guī)上已知的任何類型的網(wǎng)絡(luò),但根據(jù)一示例性實(shí) 施例,網(wǎng)絡(luò)106被描述為"萬維網(wǎng)"(即縮寫為"Web")。如此,通過 網(wǎng)絡(luò)106的通信則通過一個(gè)或多個(gè)標(biāo)準(zhǔn)的基于分組的格式(例如,H.323、 IP、以太網(wǎng)、ATM)來發(fā)生。
現(xiàn)轉(zhuǎn)向根據(jù)本發(fā)明的一實(shí)施例的聯(lián)合認(rèn)證系統(tǒng)的更詳細(xì)的圖示,圖2 示出身份提供方102和資源提供方104之間的通過網(wǎng)絡(luò)106的聲明數(shù)據(jù)流。 總體流200開始于身份提供方102側(cè)的帳戶存儲(chǔ)202處,其中帳戶存儲(chǔ)202 提供身份提供方102用來作出聲明的身份信息。在該實(shí)施例中,帳戶存儲(chǔ) 202是管理關(guān)于用于認(rèn)證與身份提供方102相關(guān)聯(lián)的帳戶(例如,用戶)的 數(shù)據(jù)的組件。僅作為示例,帳戶存儲(chǔ)202可以包括現(xiàn)用目錄(AD)、現(xiàn)用目錄應(yīng)用程序模式(ADAM)、結(jié)構(gòu)化查詢語言(SQL)系統(tǒng)、或類似的 這種系統(tǒng)。
帳戶存儲(chǔ)202用安全信息填充204帳戶組織聲明("聲明")206。隨 后在可擴(kuò)展身份提供方變換模塊208中,將聲明206從帳戶存儲(chǔ)專用格式 變換成資源提供方104所識(shí)別的聯(lián)合格式。經(jīng)變換的聲明作為傳出聲明210 離開變換模塊208,該傳出聲明210被打包到諸如安全令牌108等安全令牌 中,并通過網(wǎng)絡(luò)106發(fā)送212到資源提供方104。傳出聲明210作為傳入聲 明214進(jìn)入資源提供方104側(cè)。盡管使用了術(shù)語"傳出聲明"210和"傳入 聲明"214,但可以理解,這些聲明被包括在,或打包在諸如安全令牌108 等安全令牌中。在資源提供方側(cè)104進(jìn)行任何進(jìn)一步處理之前,驗(yàn)證安全 令牌108的密碼簽名以確保信任發(fā)放者,即圖1的示例性實(shí)施例中的身份 提供方102,作出安全令牌108中的聲明。 一旦進(jìn)行了該驗(yàn)證,處理在資源 提供方側(cè)104繼續(xù)。盡管安全令牌108中的聲明的格式可能已經(jīng)被變換成 資源提供方104可識(shí)別的格式,但在其中這一變換未發(fā)生或其中要求進(jìn)一 步變換的實(shí)施例中,可擴(kuò)展資源提供方變換模塊216可以將傳入聲明214 從聯(lián)合格式變換,或進(jìn)一步變換成被資源應(yīng)用程序222識(shí)別為資源組織聲 明("聲明")218的格式。因?yàn)樵摬襟E可被認(rèn)為是可任選的,所以資源提 供方自定義聲明變換模塊216以虛線格式被示于圖2中。在一實(shí)施例中, 身份提供方自定義聲明變換模塊208也可被認(rèn)為是可任選的。在另一實(shí)施 例中,只有資源提供方自定義聲明變換模塊216,或另選地,只有身份提供 方自定義聲明變換模塊208可被認(rèn)為是可任選的。該聲明隨后被啟用220 以供資源應(yīng)用程序222使用。啟用步驟220可以涉及聲明數(shù)據(jù)的過濾以便 不將所有的聲明數(shù)據(jù)都發(fā)送到資源應(yīng)用程序222。應(yīng)當(dāng)注意,雖然身份提供 方和資源提供方變換模塊208和216在聯(lián)合認(rèn)證系統(tǒng)200中被示為單個(gè)框, 但如所討論的,這些變換模塊可以是用于使用多個(gè)聲明變換模塊或子模塊 的可擴(kuò)展性點(diǎn)。
圖2中的聲明數(shù)據(jù)流是在特定身份提供方102和特定資源提供方104 之間的。例如,在身份提供方102側(cè),身份提供方變換模塊208將傳入帳 戶組織聲明206從帳戶存儲(chǔ)202專用格式變換為資源提供方104所識(shí)別的聯(lián)合格式。在該變換中可能涉及一個(gè)或多個(gè)中間步驟。該變換的示例性實(shí)
施例在轉(zhuǎn)讓給共同受讓人微軟公司的標(biāo)題為"Security Claim Transformation with Intermediate Claims (使用中間聲明的安全聲明變換)"的美國專利申 請(qǐng)?zhí)?1/119236 (MS 312161.01)中描述,該申請(qǐng)全部公開內(nèi)容合并于此。所 得的聲明信息可通過使用根據(jù)本發(fā)明的多個(gè)自定義聲明變換模塊或子模塊 來變換。
根據(jù)某些實(shí)施例,給定身份提供方可以聯(lián)合并向若干不同的資源提供 方發(fā)送聲明信息?;仡^參考圖2,雖然在該圖中描繪了可擴(kuò)展聲明變換模塊, 例如,身份提供方聲明變換模塊208,但本發(fā)明的一個(gè)實(shí)施例可以涉及對(duì)作 為身份提供方"A" 102側(cè)的可擴(kuò)展性點(diǎn)的一部分插入的單個(gè)自定義聲明變 換模塊的使用,其中該變換模塊被定制為將聲明變換成身份提供方與其處 于信任關(guān)系的預(yù)定資源提供方"A" 104所識(shí)別的格式。然而,在身份提供 方"A" 102創(chuàng)建與不同的資源提供方"B"的新的信任關(guān)系時(shí),將必須改 變身份提供方自定義聲明變換模塊來定制到新資源提供方"B"所識(shí)別的聯(lián) 合格式的聲明變換,并隨后為每一新的資源提供方"n"都進(jìn)行改變。
由此,多個(gè)信任關(guān)系和自定義聲明變換模塊是可能的,且其被示于圖 3中的網(wǎng)絡(luò)環(huán)境300的邏輯表示中。身份提供方"A" 102具有與資源提供 方"A" 104的信任關(guān)系,且該聲明由自定義聲明變換模塊i;i 304來變換。 隨后在身份提供方"A" 102和不提供資源提供方"B" 302之間創(chuàng)建新的 信任關(guān)系,并重寫聲明變換模塊以被定制為對(duì)該新的對(duì)的Tx2 306。這種關(guān) 系和自定義聲明變換模塊可以存在直到未定數(shù)目的資源提供方"n" 308, 如省略號(hào)312所示,和對(duì)應(yīng)的自定義聲明變換模塊Txn310。同樣地,且類 似地,可以在其中傳入聲明具有為可能的多個(gè)預(yù)定的分開且不同的資源應(yīng) 用程序222所變換的專用聯(lián)合格式的典型的聯(lián)合認(rèn)證系統(tǒng)的資源提供方側(cè) 104要求多個(gè)變換。
然而,取代具有關(guān)于每一對(duì)身份和資源提供方的單個(gè)自定義聲明變換 模塊并且在創(chuàng)建與新的資源提供方的每一新的信任關(guān)系時(shí)必須改變?cè)搯蝹€(gè) 模塊,本發(fā)明的各實(shí)施例具有插入到聯(lián)合認(rèn)證系統(tǒng)的變換模塊208和/或216 的可擴(kuò)展性點(diǎn)的多個(gè)自定義聲明變換子模塊。盡管此處使用了術(shù)語"子模塊",但這些"子模塊"是技術(shù)上獨(dú)立的實(shí)體,根據(jù)本發(fā)明的各實(shí)施例其 可被獨(dú)立地或組合地使用。由此,術(shù)語"模塊"可被用來描述這些獨(dú)立的 實(shí)體。然而,此處使用術(shù)語"子模塊"是出于簡(jiǎn)化的目的,指的是構(gòu)成整
體可擴(kuò)展變換模塊208和/或216的那些模塊。轉(zhuǎn)向圖4,示出了變換模塊 實(shí)施例400,其中這些子模塊能以連接(或流水線)的方式被插入到聯(lián)合認(rèn) 證系統(tǒng)的變換模塊208和/或216可擴(kuò)展性或擴(kuò)充點(diǎn)處。這些流水線化的變 換子模塊隨后可被以流水線的方式調(diào)用,以便每一變換子模塊在適用處可 以操作聲明集,并構(gòu)建所得聲明集以便發(fā)送給資源提供方信任伙伴。這多 個(gè)自定義聲明變換子模塊可以用逐漸處理聲明集的流水線的方式來調(diào)用。 如所述的,本發(fā)明的各實(shí)施例可以涉及單個(gè)聲明,而其它實(shí)施例可以涉及 聲明集。如圖4所示,傳入帳戶組織聲明206 (或另一實(shí)施例中的傳入聲明 214)首先由變換子模塊1 ( "Txl" ) 304處理,并隨后由TJ 306等以"n" 個(gè)不同的變換模塊幾n310的流水線的方式處理為傳出聲明210 (或在另一 實(shí)施例中啟用220)。每一變換子模塊都以流水線的方式來調(diào)用;然而,只 有為所要求的特定變換所編寫的那些子模塊會(huì)實(shí)際操作,即變換聲明或聲 明集。
參考圖4中描繪的示例性實(shí)施例,如果Txl 304被編寫來將聲明從身份 提供方102變換成資源提供方所識(shí)別的格式,則其只有在傳入聲明是來自 身份提供方02的且傳出聲明210是去往資源提供方104的時(shí)候才會(huì)操作 該聲明。如果涉及身份提供方102和資源提供方302,但例如,Txl 304被 編寫為將聲明從身份提供方102變換到資源提供方104,則Ll 304將不操 作該聲明,且該聲明將傳到Tx2 306 (如圖4所示)。同樣地,且類似地, Txl 304可被編寫為將具有特定聯(lián)合格式的傳入聲明214變換到特定資源應(yīng) 用程序222,而Tx2 306可被編寫來為不同且分開的資源應(yīng)用程序?qū)崿F(xiàn)這一 變換。
參考圖5,示出了根據(jù)本發(fā)明的一實(shí)施例的用于通過使用以流水線的 方式組織的多個(gè)自定義聲明變換子模塊來變換聲明或聲明集的過程500。根 據(jù)本發(fā)明的一實(shí)施例,在變換聲明集時(shí),該變換應(yīng)用于該聲明集中的所有 聲明,而不是應(yīng)用于個(gè)別聲明。由此,在一實(shí)施例中,可以基于若干聲明的值來進(jìn)行改變,或另選地, 一個(gè)聲明可以導(dǎo)致若干新聲明。盡管變換模
塊208和216 —般意義上允許對(duì)聲明進(jìn)行特定量的操縱,但使用以流水線
的方式組織的多個(gè)自定義聲明變換模塊或子模塊允許對(duì)聲明的這些操縱的
模塊化。變換過程500使用開始于開始操作502的操作流程來執(zhí)行。
開始操作502在填充帳戶組織聲明206 (或另一實(shí)施例中的傳入聲明 214)之后啟動(dòng)。從開始操作502處,過程500的操作流程前進(jìn)至接收操作 504。接收操作504接收傳入帳戶組織聲明206 (或另一實(shí)施例中的傳入聲 明214)。從接收操作504處,操作流程前進(jìn)至自定義聲明變換操作Txl 506。 如果適用,則幾l變換操作變換聲明。操作隨后傳至査詢操作508。查詢 操作508確定是否存在另一自定義聲明變換子模塊和所得的變換操作。如 果查詢操作508確定存在另一自定義聲明變換操作,則流程通過"是"分 支到關(guān)于不定數(shù)量的自定義聲明變換子模塊和查詢操作的自定義聲明變換 子模塊Txn510。如果在查詢操作508處未檢測(cè)到另一自定義聲明變換子模 塊,則流程通過"否"分支到確定是否做出任何改變的查詢操作518。如果 檢測(cè)到改變,則流程通過"是"分支回到接收操作504以通過自定義聲明 變換子模塊流水線進(jìn)行重復(fù)處理?;诟淖冎匦绿幚砺暶饔米靼踩卣饕?便不允許一個(gè)變換子模塊做出與另一個(gè)自定義聲明變換不一致的改變。
另一方面,如果査詢操作518未檢測(cè)出對(duì)聲明的改變,則到達(dá)穩(wěn)定狀 態(tài)且變換過程500的操作流程通過"否"分支到終止操作520。終止操作 520結(jié)束變換過程。作為附加安全特征,還可能通過變換檢查查詢操作522 傳遞操作流程來證實(shí)任何自定義聲明變換子模塊沒有做出不一致的、或不 可允許的改變。該最終檢査步驟是可任選的,并因而作為查詢操作522以 虛線格式示于圖5中。如果査詢操作522確定最終檢査不令人滿意,即存 在不可允許的改變,則流程通過"否"分支到校正操作524。校正操作524 校正任何不一致的或不可允許的聲明。從校正操作524處,過程500前進(jìn) 至產(chǎn)生經(jīng)校正的聲明(或聲明集)的產(chǎn)生操作526。在產(chǎn)生經(jīng)校正的聲明或 聲明集之后,流程前進(jìn)至確定是否應(yīng)當(dāng)重新開始處理以允許重新處理所做 的改變的重新開始查詢528。如果重新開始查詢528確定應(yīng)當(dāng)執(zhí)行重新處 理,則流程通過"是"分支到接收操作504。如果重新開始查詢528確定不應(yīng)當(dāng)執(zhí)行重新處理,則流程通過"否"分支到終止操作520。同樣地,如果
査詢操作522確定最終檢查是令人滿意的,即改變是可允許的和/或一致的, 則流程通過"是"分支到終止操作520。終止操作520結(jié)束變換過程500。 從此處,經(jīng)由網(wǎng)絡(luò)106將傳出聲明發(fā)送到資源提供方104。另選地,但類似 地,為資源應(yīng)用程序222啟用資源提供方變換模塊216所變換的聲明220。 在啟用聲明220時(shí),如果需要?jiǎng)t可以過濾聲明數(shù)據(jù)。
現(xiàn)轉(zhuǎn)向圖6,示出了根據(jù)本發(fā)明的一實(shí)施例的涉及多個(gè)自定義聲明變 換模塊或子模塊的映射過程600。映射過程600指的是其中只給適當(dāng)?shù)淖远?義聲明變換子模塊操作安全聲明或聲明集的機(jī)會(huì)的實(shí)施例。例如,在參考 本發(fā)明的一實(shí)施例描述的聯(lián)合認(rèn)證系統(tǒng)的身份提供方側(cè)102變換的情況下, "適當(dāng)?shù)?可以指為信任關(guān)系中所涉及的特定身份提供方和成對(duì)的資源提 供方所編寫的那些自定義聲明變換子模塊。同樣地,且類似地,在涉及在 典型聯(lián)合認(rèn)證系統(tǒng)的資源提供方側(cè)104的變換的另一實(shí)施例中,"適當(dāng)?shù)? 可以指,例如,為特定的聯(lián)合聲明格式和預(yù)定資源應(yīng)用程序或服務(wù)222所 編寫的那些變換。
根據(jù)一個(gè)示例性實(shí)施例,變換映射過程600被描述為使用開始于在填 充帳戶組織聲明206 (或在另一實(shí)施例中接收傳入聲明214)之后啟動(dòng)的開 始操作602的操作流程來執(zhí)行。如上所述, 一個(gè)實(shí)施例可以涉及單個(gè)聲明, 而另一個(gè)實(shí)施例可以涉及聲明集。在變換聲明集時(shí),變換應(yīng)用于該聲明集 的所有聲明。從開始操作602處,過程600的操作流程前進(jìn)至接收操作604。 接收操作604接收帳戶組織聲明206 (或另一實(shí)施例中的傳入聲明214)。 從接收操作604處,操作流程前進(jìn)至評(píng)估操作606。評(píng)估操作606確定向其 發(fā)送聲明以供變換的適當(dāng)?shù)淖远x聲明變換子模塊,即Txl 608、 Tx2 610...Txn612。根據(jù)本發(fā)明的一實(shí)施例,如省略號(hào)611所示,可以使用一個(gè) 或多個(gè)聲明變換子模塊。為確定哪一自定義聲明變換子模塊是適當(dāng)?shù)?,評(píng) 估操作606解析該聲明626,査看映射選擇628,比較改變(如果有)630 等(在其中在接收操作604處接收到的聲明已被變換的實(shí)施例中,已經(jīng)做 出了改變)。另外,在其中不止一個(gè)變換子模塊是"適當(dāng)?shù)?的實(shí)施例中, 評(píng)估操作606將確保給予每一這種適當(dāng)?shù)穆暶髯儞Q子模塊操作該聲明的機(jī)會(huì)。例如,在一實(shí)施例中,評(píng)估操作606確定適當(dāng)?shù)淖远x聲明變換子模
塊,且在不止一個(gè)這種模塊被認(rèn)為是適當(dāng)?shù)那闆r下,評(píng)估操作606以交替 的方式632將聲明發(fā)送到適當(dāng)?shù)淖远x聲明變換子模塊,從而不會(huì)像聲明 被重復(fù)發(fā)送到同一自定義聲明變換子模塊時(shí)那樣發(fā)生穩(wěn)定狀態(tài)改變的虛假 出現(xiàn)。
在確定向其發(fā)送該聲明的適當(dāng)?shù)淖儞Q子模塊之后,該聲明被發(fā)送到Txl 608、 Tx2 610...Txn612。在自定義聲明變換TJ 608, Tx2 610...Txn 612之后, 操作前進(jìn)至査詢操作614。査詢操作614確定是否對(duì)該聲明做出了任何改 變。如果查詢確定存在對(duì)聲明的改變,則流程通過"是"分支到接收操作 604并隨后流向再一次解析聲明626、評(píng)估映射628、比較改變630、檢測(cè) 替換的"適當(dāng)"變換子模塊模式(如果有的話)632等的評(píng)估操作606。
重復(fù)該操作流程直到查詢操作614確定不存在對(duì)聲明的改變且達(dá)到穩(wěn) 定狀態(tài)為止。如果査詢操作614確定不存在改變,則流程通過"否"分支 到終止操作616。作為附加安全特征,還可能使操作流程通過變換檢查査詢 操作618來證實(shí)自定義聲明變換子模塊沒有做出不一致的、或不可允許的 改變。該最終檢査步驟是可任選的,并因而作為查詢操作618以虛線形式 示于圖6中。如果查詢操作618確定最終檢査不令人滿意,即存在不可允 許的改變,則流程通過"否"分支到校正操作620。校正操作620校正任何 不一致的或不可允許的改變。從校正操作620處,過程600前進(jìn)至產(chǎn)生經(jīng) 校正的聲明(或一實(shí)施例中的聲明集)的產(chǎn)生操作622。在產(chǎn)生經(jīng)校正的聲 明之后,流程前進(jìn)至確定是否應(yīng)當(dāng)重新開始處理以允許重新處理所做的改 變的重新開始查詢624。如果重新開始查詢624確定應(yīng)當(dāng)執(zhí)行重新處理,則 流程通過"是"分支到接收操作604。如果重新開始查詢624確定不應(yīng)當(dāng)執(zhí) 行重新處理,則流程通過"否"分支到終止操作616。同樣地,如果查詢操 作618確定最終檢査是令人滿意的,即改變是可允許的,則流程通過"是" 分支到終止操作616。終止操作616結(jié)束變換過程600。從此處,經(jīng)由網(wǎng)絡(luò) 106將傳出聲明發(fā)送到資源提供方104。另選地,但類似地,為資源應(yīng)用程 序222啟用資源提供方變換模塊216所變換的聲明220。在啟用聲明220 時(shí),如果需要?jiǎng)t可以過濾聲明數(shù)據(jù)??梢岳斫?,圖5和圖6示出的且此處相應(yīng)地所描述的過程可應(yīng)用于典
型的聯(lián)合認(rèn)證系統(tǒng)的身份提供方102側(cè)或資源提供方104側(cè)的聲明變換。
例如,身份提供方側(cè)的到適當(dāng)?shù)穆暶髯儞Q子模塊的映射將涉及確定身份提
供方102和資源提供方104的身份。類似地,到適當(dāng)?shù)馁Y源提供方聲明變 換子模塊的映射將涉及類似的確定過程但不涉及關(guān)于聯(lián)合的傳入聲明的格 式和該聲明旨在供其使用的特定資源應(yīng)用程序或服務(wù)所要求的格式的確 定。由此,接收操作604可應(yīng)用于根據(jù)本發(fā)明的各實(shí)施例的帳戶組織安全 聲明206或傳入聲明214。
現(xiàn)轉(zhuǎn)向圖7和8,示出了根據(jù)本發(fā)明的示例性實(shí)施例過程700和過程 800,在這些實(shí)施例中,從每一自定義聲明變換子模塊所得的聲明或聲明集 被隔離,以使每一變換子模塊只在原始聲明或聲明集上操作。過程700和 800隨后維護(hù)并聚集所得聲明。開始操作702響應(yīng)于填充帳戶組織聲明206 (或在涉及資源提供方側(cè)104的另一實(shí)施例中,發(fā)送傳入聲明214)來啟動(dòng)。 從開始操作702處,過程700的操作流程前進(jìn)至接收操作704。接收操作 704接收帳戶組織聲明206 (或另一實(shí)施例中的傳入聲明214)。從接收操 作704處,流程前進(jìn)至自定義變換操作iy 706,如果適用,其將聲明變換 成所得聲明1 708。未經(jīng)改變的形式的原始聲明隨后傳到Tx2 710,如果適 用,其將聲明變換成所得聲明2 712。根據(jù)本發(fā)明的各實(shí)施例,且如省略號(hào) 711和713所示,可以使用單個(gè)變換模塊706或"n"個(gè)變換模塊714和單 個(gè)所得聲明708或"n"個(gè)所得聲明716。原始聲明以流水線的方式傳遞到 Txii子模塊714和所得的"n"個(gè)聲明716。維護(hù)所得聲明708、 712和716, 且流程隨后前進(jìn)至聚集所得聲明以產(chǎn)生最終聲明或聲明集720的聚集操作 718。終止操作722結(jié)束該過程。
同樣地,過程800開始于以與參考以上開始操作702描述的相同的方 式啟動(dòng)的開始操作802。操作流程隨后也以與關(guān)于接收操作704描述的相同 的方式前進(jìn)至接收操作804。從接收操作804處,操作流程前進(jìn)至確定向其 發(fā)送原始聲明的適當(dāng)?shù)淖儞Q子模塊(如以上圖6中所述和所描繪的)的評(píng) 估操作806。根據(jù)本發(fā)明的各實(shí)施例,且如省略號(hào)815和817所示,可以使 用單個(gè)變換子模塊808或"n"個(gè)變換子模塊816和單個(gè)所得聲明810或"n"個(gè)所得聲明818。變換子模塊Txl 808、 Tx2 812...Txn 816隨后可以隔 離地操作原始聲明或聲明集以分別產(chǎn)生所得聲明810、 814和818。操作隨 后前進(jìn)至聚集所得聲明以產(chǎn)生最終聲明或聲明集822的聚集操作820。終止 操作824結(jié)束該過程。如參考圖7和過程700所述,與圖8相關(guān)的另一實(shí) 施例可以涉及傳入聲明214到接收操作804,其中傳入聲明214存在于圖2 所描繪的資源提供方104側(cè)。
應(yīng)當(dāng)理解,本發(fā)明的其它實(shí)施例可以將附加步驟添加到過程700和 800,以便允許例如檢査關(guān)于對(duì)聲明的改變等以達(dá)到穩(wěn)定狀態(tài)操作。過程700 和800以概括的形式示出以便顯示隔離來自每一自定義聲明變換子模塊的 所得聲明或聲明集的概念。如其它附圖一樣,概括形式的圖7和8決不應(yīng) 被解釋為限于此處所描繪的或所描述的具體步驟。
根據(jù)圖9示出的實(shí)施例的各方面,如以上參考圖1和3所討論的,各 組織可以定制其聲明要求和變換能力。與此相關(guān)的流程操作在圖9中示出。 過程900開始于響應(yīng)于用諸如描繪為圖1和2中的特定實(shí)施例的可擴(kuò)展認(rèn) 證系統(tǒng)創(chuàng)建信任環(huán)境而啟動(dòng)的開始操作卯2。流程隨后前進(jìn)至標(biāo)識(shí)可擴(kuò)展性 點(diǎn)124、 126、 208和/或216的存在的標(biāo)識(shí)操作卯4。從標(biāo)識(shí)操作卯4處, 流程前進(jìn)至確定格式操作906,其在一實(shí)施例中確定身份提供方102的聲明 格式和資源提供方104所要求的或更喜歡的聲明格式。在圖2示出的聲明 數(shù)據(jù)流的涉及資源提供方側(cè)104的另一實(shí)施例中,確定格式操作906確定 傳入聲明214的聲明格式和預(yù)定資源應(yīng)用程序222所要求的格式。在確定 格式操作906之后,流程前進(jìn)至創(chuàng)建自定義聲明變換子模塊操作908。根據(jù) 一實(shí)施例,創(chuàng)建操作卯8創(chuàng)建自定義聲明變換子模塊,例如,304、 306或 310,來將自定義格式從身份提供方102的格式改變?yōu)橘Y源提供方104所要 求的或更喜歡的格式。在另一實(shí)施例中,操作908創(chuàng)建自定義聲明變換子 模塊,例如304,來將聲明格式從傳入聲明214的格式改變?yōu)轭A(yù)定資源應(yīng)用 程序或服務(wù)222所要求的格式。
從創(chuàng)建操作908處,流程前進(jìn)至插入和配置操作910,其中在創(chuàng)建操 作908創(chuàng)建的自定義聲明變換子模塊被作為在標(biāo)識(shí)操作904所標(biāo)識(shí)的可擴(kuò) 展性點(diǎn)的一部分來插入。在一實(shí)施例中,自定義聲明變換子模塊304可與以流水線的方式配置的其它自定義聲明變換子模塊一起作為可擴(kuò)展變換模
塊124、 126、 208禾卩/或216的一部分來插入。如以上參考圖6所示出和討 論的,在另一實(shí)施例中,自定義聲明變換子模塊304可作為被配置為只向 被確定為對(duì)于這些處理適當(dāng)?shù)哪切┳幽K發(fā)送聲明以供變換的可擴(kuò)展變 換,例如124的一部分來插入。其它實(shí)施例可以涉及另外的和/或不同的配 置,且此處描述的類型絕不旨在被解釋為限制性的。此外,對(duì)變換304或 124的引用只是出于示例性的目的??梢允褂萌魏巫儞Q模塊或子模塊。終止 操作912結(jié)束過程900。
圖10中示出用于實(shí)現(xiàn)此處所描述和示出的系統(tǒng)和方法的示例性計(jì)算 環(huán)境。在其最基本的配置中,計(jì)算系統(tǒng)1000通常包括至少一個(gè)中央處理單 元(CPU) 1002和諸如如一實(shí)施例中的帳戶存儲(chǔ)202 —樣的存儲(chǔ)安全令牌 108中的聲明信息的存儲(chǔ)器104。取決于計(jì)算設(shè)備的確切配置和類型,存儲(chǔ) 器1004可以是易失性的(如RAM)、非易失性的(如ROM、閃存等)或 是兩者的某種組合。另外,計(jì)算設(shè)備1000還可具有附加的特征/功能。例如, 計(jì)算設(shè)備1000可以包括多個(gè)CPU。所描述的方法能以任何方式由計(jì)算設(shè)備 1000中的任何處理單元來執(zhí)行。例如,所述過程可由多個(gè)CPU并行執(zhí)行。
計(jì)算設(shè)備IOOO還可以包括附加存儲(chǔ)1006(可移動(dòng)的和/或不可移動(dòng)的), 包括但不限于,如同根據(jù)一實(shí)施例的帳戶存儲(chǔ)202 —樣用于存儲(chǔ)安全令牌 108中的聲明信息的磁盤或光盤或磁帶。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括以用于存儲(chǔ)諸 如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的任意方法或 技術(shù)來實(shí)現(xiàn)的易失性和非易失性、可移動(dòng)和不可移動(dòng)介質(zhì)。存儲(chǔ)器1004和 存儲(chǔ)1006都是計(jì)算機(jī)存儲(chǔ)介質(zhì)的示例。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括但不限于, RAM、 ROM、 EEPROM、閃存或其它存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能 盤(DVD)或其它光存儲(chǔ)、磁帶盒、磁帶、磁盤存儲(chǔ)或其它磁存儲(chǔ)設(shè)備, 或者可用于存儲(chǔ)所需信息并且可由計(jì)算設(shè)備1000訪問的任何其它介質(zhì)。任 何這樣的計(jì)算機(jī)存儲(chǔ)介質(zhì)都可以是計(jì)算設(shè)備1000的一部分。
計(jì)算設(shè)備100還可以包括允許該設(shè)備如根據(jù)本發(fā)明的一實(shí)施例在可信 伙伴102和104之間傳輸安全令牌108中的聲明信息那樣與其它設(shè)備進(jìn)行 通信的通信設(shè)備1012。通信設(shè)備1012是通信介質(zhì)的一個(gè)示例。通信介質(zhì)通常以諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號(hào)來體現(xiàn)計(jì)算機(jī)可讀指令、 數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),并包括任意信息傳送介質(zhì)。術(shù)語"已調(diào) 制數(shù)據(jù)信號(hào)"指的是其一個(gè)或多個(gè)特征以在信號(hào)中編碼信息的方式被設(shè)定 或更改的信號(hào)。作為示例而非限制,通信介質(zhì)包括有線介質(zhì),如有線網(wǎng)絡(luò) (如根據(jù)一個(gè)實(shí)施例示出的網(wǎng)絡(luò)105或106)或直接線連接,以及無線介質(zhì),
如聲學(xué)、RF、紅外線和其它無線介質(zhì)。如此處所用的術(shù)語計(jì)算機(jī)可讀介質(zhì)
既包括計(jì)算機(jī)存儲(chǔ)介質(zhì)又包括通信介質(zhì)。所述方法可用諸如數(shù)據(jù)、計(jì)算機(jī) 可執(zhí)行指令等任何形式編碼在任何計(jì)算機(jī)可讀介質(zhì)中。
計(jì)算設(shè)備IOOO也可以具有諸如鍵盤、鼠標(biāo)、筆、語音輸入設(shè)備、觸摸 輸入設(shè)備等的輸入設(shè)備1010。另外,也可以包括諸如顯示器、揚(yáng)聲器、打 印機(jī)等的輸出設(shè)備1008。所有這些設(shè)備在本領(lǐng)域是公知的,因此不必在此 詳細(xì)討論。盡管給出了關(guān)于計(jì)算設(shè)備1000的組件的具體示例,但這些示例 決不旨在是限制性的。
考慮以上提供的本發(fā)明時(shí),本領(lǐng)域技術(shù)人員容易理解,本發(fā)明提供眾 多好處。例如,出于聚集功能的目的,能夠例如為聲明或聲明集的單個(gè)授 權(quán)調(diào)用參考圖4、 5和6討論的多個(gè)變換子模塊是有益的。本發(fā)明的將聲明 變換代碼例如如圖4、 5和6所述劃分為多個(gè)模塊或子模塊,并且因而達(dá)到 與全異版本的核心運(yùn)行時(shí)庫的集成的能力也是有利的。因?yàn)楸景l(fā)明允許多 個(gè)自定義聲明變換模塊或子模塊被插入到變換模塊208和/或216的可擴(kuò)展 性點(diǎn)處,所以本發(fā)明允許第三方聲明變換模塊或子模塊被插入到系統(tǒng)中。 此外,本發(fā)明允許引入確定用于正向鏈接例如圖5和6中所描繪的且如上 所描述的變換的穩(wěn)定狀態(tài)。
另外,本發(fā)明提供多個(gè)安全特征是有益的。例如,如檢査操作522和 618所示出和描述的,通過本發(fā)明的使用保證在其它變換后面運(yùn)行的附加聲
明信息模塊或子模塊來最終化聲明的能力來達(dá)到增強(qiáng)的安全性。例如,如 參考評(píng)估操作606和解析準(zhǔn)則628、 630和632所示出和描述的,以管理員
的控制每一變換模塊允許操縱哪些聲明或聲明集的能力來提供額外的安全 特征。進(jìn)一步的安全特征與如圖7和8示出的本發(fā)明的實(shí)施例相關(guān)聯(lián),其 中所得聲明集被從每一變換模塊或子模塊隔離,以便每一變換模塊或子模塊只在原始聲明或聲明集的上下文中工作。系統(tǒng)隨后維護(hù)并聚集所得聲明。 這種系統(tǒng)可得益于其通過保留對(duì)最終聲明或聲明集的控制提供安全性的能 力。
以上參考附圖描述了本發(fā)明的各實(shí)施例,可以理解,可以對(duì)本發(fā)明做 出本領(lǐng)域技術(shù)人員易于想到且包含在所公開的發(fā)明的且如所附權(quán)利要求書 所定義的精神和范圍內(nèi)的眾多修改。實(shí)際上,盡管出于公開的目的描述了 目前優(yōu)選的實(shí)施例,但可以做出落入本發(fā)明的范圍的各種改變和修改。
同樣地,雖然本發(fā)明使用了對(duì)結(jié)構(gòu)特征、方法動(dòng)作和含有這些動(dòng)作的 計(jì)算機(jī)可讀介質(zhì)專用的語言,但是應(yīng)該理解,在所附權(quán)利要求中定義的本 發(fā)明不必限于此處描述的具體結(jié)構(gòu)、動(dòng)作、或介質(zhì)。例如,盡管本發(fā)明將 資源提供方稱為信任關(guān)系中的信任伙伴,但任何其它類型的伙伴都可從本 發(fā)明中受益。僅作為示例,資源提供方可被稱為服務(wù)提供方或依賴方。本 領(lǐng)域技術(shù)人員將認(rèn)識(shí)到本發(fā)明精神和范圍中的其它實(shí)施例或?qū)崿F(xiàn)。因此, 這些具體結(jié)構(gòu)、動(dòng)作、或介質(zhì)是作為實(shí)現(xiàn)所要求保護(hù)的本發(fā)明的示例性實(shí)
施例而公開的。本發(fā)明由所附權(quán)利要求來定義。
權(quán)利要求
1. 一種用于將聲明從一種格式變換成不同格式的聲明變換系統(tǒng)(208、216),所述系統(tǒng)包括第一聲明變換子模塊(304);第二聲明變換子模塊(306);以及其中所述第一和第二聲明變換子模塊具有將聲明從一種格式(206、214)變換(506、510)成多種不同的格式(210、222)的能力。
2. 如權(quán)利要求1所述的聲明變換系統(tǒng),其特征在于,所述第一和第二 聲明變換子模塊(304、 306、 506、 510)以流水線的方式來安排。
3. 如權(quán)利要求2所述的聲明變換系統(tǒng),其特征在于,所述第一和第二 聲明變換子模塊被安排為變換所述聲明,直到檢測(cè)不到對(duì)所述聲明的改變 為止(518)。
4. 如權(quán)利要求3所述的聲明變換系統(tǒng),其特征在于,所述系統(tǒng)還包括 驗(yàn)證其它子模塊所做的改變是否是不可允許的(522)聲明變換子模塊。
5. 如權(quán)利要求1所述的聲明變換系統(tǒng),其特征在于 所述第一聲明變換子模塊變換處于其原始格式(706)的所述聲明以產(chǎn)生第一所得聲明(708);所述第二聲明變換子模塊處理處于其原始格式(710)的所述聲明以產(chǎn) 生第二所得聲明(712);以及聚集模塊聚集所述第一和第二所得聲明(718)以產(chǎn)生最終聲明(720)。
6. 如權(quán)利要求1所述的聲明變換系統(tǒng),其特征在于 如果所述第一聲明變換子模塊被確定為適于對(duì)所述聲明的處理(606、608),則所述系統(tǒng)將所述聲明定向到該子模塊;以及如果所述第二聲明變換子模塊被確定為適于對(duì)所述聲明的處理(606、 610),則所述系統(tǒng)將所述聲明定向到該子模塊。
7. 如權(quán)利要求6所述的聲明變換系統(tǒng),其特征在于,所述第一和第二 聲明變換子模塊變換所述聲明,直到檢測(cè)不到改變?yōu)橹?614)。
8. 如權(quán)利要求7所述的聲明變換系統(tǒng),其特征在于,所述系統(tǒng)還包括 驗(yàn)證其它子模塊所做的改變是否是不可允許的(618)聲明變換子模塊。
9. 如權(quán)利要求6所述的聲明變換系統(tǒng),其特征在于所述第一聲明變換子模塊變換處于其原始格式(808)的所述聲明以產(chǎn) 生第一所得聲明(810);所述第二聲明變換子模塊變換處于其原始格式(812)的所述聲明以產(chǎn)生第二所得聲明(814);以及聚集模塊聚集所述所得聲明(820)以產(chǎn)生最終聲明(822)。
10. —種用于在信任關(guān)系環(huán)境的可擴(kuò)展性點(diǎn)處變換聲明的方法 (900),所述方法包括在信任關(guān)系環(huán)境中維護(hù)可擴(kuò)展性點(diǎn)(904、 124、 126、 208、 216), 其中可以插入單個(gè)聲明變換子模塊(124、 126、 208、 216)或多個(gè)聲明變 換子模塊(304、 306);確定所述聲明的第一格式(906); 確定所述聲明的第二格式(卯6);創(chuàng)建被定制為將所述聲明格式從所述第一格式改變?yōu)樗龅诙袷降?聲明變換子模塊(304、 306) (908);以及將所述聲明變換子模塊(304、 306)插入到所述可擴(kuò)展性點(diǎn)(910)。
11. 如權(quán)利要求IO所述的方法,其特征在于,所述方法還包括將所 述子模塊作為所述可擴(kuò)展性點(diǎn)的一部分配置到流水線中(910、 506、 510)。
12. 如權(quán)利要求11所述的方法,其特征在于,所述方法還包括插入 附加子模塊(910、 310)。
13. 如權(quán)利要求10所述的方法,其特征在于,所述方法還包括確定 向其發(fā)送所述聲明的適當(dāng)?shù)穆暶髯儞Q子模塊(304、 306) (910、 606、 608、 610)。
14. 如權(quán)利要求10所述的方法,其特征在于,所述方法還包括處理 所述聲明,直到達(dá)到穩(wěn)定狀態(tài)為止(910、 518、 614)。
15. 如權(quán)利要求10所述的方法,其特征在于,涉及聲明集并且其中 所述變換應(yīng)用于所述聲明集中的所有聲明。
16. 如權(quán)利要求IO所述的方法,其特征在于,還包括 以其原始格式向聲明變換子模塊(706)發(fā)送所述聲明以將所述聲明變換成所得聲明(708);將來自一個(gè)聲明變換子模塊的所述所得聲明與來自其它聲明變換子模塊的所述所得聲明(708、 712、 716)分開; 收集所述所得聲明(718); 聚集所述所得聲明以產(chǎn)生最終聲明(720)。
17. —種用于在信任關(guān)系中共享和變換聲明信息的可擴(kuò)展系統(tǒng),所述 系統(tǒng)包括請(qǐng)求信息以認(rèn)證帳戶的資源提供方(104); 向資源提供方(104)提供認(rèn)證信息的身份提供方(102);維護(hù)認(rèn)證信息以填充聲明(204)來發(fā)送到所述做出請(qǐng)求的資源提供 方(104)的帳戶存儲(chǔ)(202);以及可擴(kuò)展性點(diǎn)(124、 126、 208、 216),其中一個(gè)或多個(gè)聲明變換子 模塊(304、 306、 310)可作為這一點(diǎn)的一部分來插入以將所述聲明從所述 身份提供方提供的第一格式變換成所述資源提供方所識(shí)別的第二格式。
18. 如權(quán)利要求17所述的可擴(kuò)展系統(tǒng),其特征在于,所述聲明變換 子模塊(304、 306、 506、 510)以流水線的方式來安排。
19. 如權(quán)利要求17所述的可擴(kuò)展系統(tǒng),其特征在于,所述聲明只被 發(fā)送到被認(rèn)為適于處理所述聲明的聲明變換子模塊(606、 608、 610)。
20. 如權(quán)利要求17所述的可擴(kuò)展系統(tǒng),其特征在于,存在附加可擴(kuò) 展性點(diǎn)以將從身份提供方接收到的聲明的格式變換成資源應(yīng)用程序(126、 216、 222)所識(shí)別的格式。
全文摘要
本發(fā)明涉及在信任關(guān)系中使用多個(gè)聲明變換模塊的能力。聲明變換模塊將聲明或聲明集變換成經(jīng)變換的聲明和聲明集以供可信伙伴和/或應(yīng)用程序使用。可以給予多個(gè)聲明變換模塊以流水線的方式操作聲明或聲明集的機(jī)會(huì)。在另一實(shí)施例中,可以存在多個(gè)聲明變換模塊,但只給予適當(dāng)?shù)穆暶髯儞Q模塊操作聲明或聲明集的機(jī)會(huì)。在一實(shí)施例中,所涉及的聲明是用于聯(lián)合認(rèn)證系統(tǒng)中的信任伙伴之間的認(rèn)證目的的安全聲明。
文檔編號(hào)G06F17/00GK101438274SQ200780015930
公開日2009年5月20日 申請(qǐng)日期2007年3月15日 優(yōu)先權(quán)日2006年5月1日
發(fā)明者D·E·施米特, D·T·德爾孔泰, D·W·哈托普, J·F·斯佩爾曼, J·卡爾基, K·捷沃相, R·D·約翰遜, V·諾瑞 申請(qǐng)人:微軟公司