專利名稱:包括可顯示的聲明的安全性令牌的制作方法
包括可顯示的聲明的安全性令牌 版權提示本專利文檔的公開中的一部分包含受版權保護的材料。版權所有人不 反對出現在美國專利商標局專利文獻或記錄中的本專利文檔或專利公開的 任何人復制副本,但無論如何在其它方面保留全部的版權。背景身份是允許日常生活中的互動的重要組成。例如,個人的信用卡允許 商家識別個人并允許個人賒帳購買產品和服務。這在數字世界里也是一樣 的,在數字世界中,數字身份允許數字交互。例如,數字身份可用來在數 字環境中彼此認證。知道正和誰在交互是決定是否信任一方或向一方提供 信息的重要因素。一個實體可使用數字身份來認證一方的身份或關于該方的其它個人信 息。數字身份可由另一個實體頒發并包括有關該方的信息。這種信息的示 例包括該方的姓名、地址、社會保障號、年齡、電話號碼等。 一方可具有 由一個或多個其它實體頒發的多個數字身份,類似個人具有駕駛證、信用 卡和常飛飛行員卡那樣。該方可使用數字身份來向第三方標識自己。例如,諸如在線服務的第 三方可要求該方在第三方允許其訪問物品或服務之前認證其身份。為了認 證其身份,該方可向第三方采用由第三方信任的另一個實體頒發的安全性 令牌的形式向第三方轉發數字身份。 一旦認證完成,第三方可提供該方對 所請求的物品或服務的訪問。在許多情況下,該方具有很少或沒有能力控制或査閱由另一個實體頒 發的安全性令牌的內容。當該方向第三方在認證該方的身份期間共享安全 性令牌時,該方的隱私可成為一個令人擔心的問題。例如,在不知道安全 性令牌的內容的情況下,該方可能會在不知不覺中讓第三方共享了安全性令牌中的該方不需要用于認證的個人信息。另外,該方會在不知不覺中提 供了該方不希望與第三方共享的個人信息(例如,社會保障號、電話號碼 等)。概述提供本概述以便以簡化的形式介紹將在以下詳細描述中進一步描述的一 些概念。本概述并非意在確定所請求保護的主題的關鍵特征或必要特征,也并 非意在用來幫助確定所請求保護的主題的范圍。一方面涉及一種用于提供數字身份的系統,該系統包括被編程為生成包括 可計算令牌和顯示令牌的安全性令牌的聲明轉換方,該可計算令牌包括與一主方的身份相關聯的一個或多個聲明,并且該顯示令牌包括關于該可計算令牌中 的聲明的顯示信息。該顯示信息被配置成允許主方査看該顯示令牌。另一個方面涉及一種提供數字身份的方法,該方法包括接收包括可計算令 牌和顯示令牌的安全性令牌,該可計算令牌包括與一主方的身份相關聯的一個 或多個聲明,并且該顯示令牌包括關于該可計算令牌中的聲明的顯示信息;以及向主方顯示該顯示令牌中的顯示信息以便主方能審閱該顯示令牌的內容。 另一個方面涉及具有用于執行以下步驟的計算機可執行指令的計算機可讀介質生成安全性令牌,該生成安全性令牌包括接收包括可計算令牌和顯示 令牌的安全性令牌,該可計算令牌包括與一主方的身份相關聯的一個或多個聲 明,并且該顯示令牌包括關于該可計算令牌中的聲明的顯示信息;以及向主方 顯示該顯示令牌中的顯示信息以便主方能審閱該顯示令牌的內容。附圖簡述現在對附圖進行簡述,附圖不是必需要按比例繪出,并且在附圖中
圖1示出示例數字身份系統;圖2示出示例通用計算機系統;圖3示出圖1的系統的一部分;圖4示出圖1的系統的另一部分;圖5示出示例安全性令牌;圖6示出被編程為解釋和顯示安全性令牌的顯示令牌的示例計算機系統;圖7示出圖1的系統的另一個部分; 圖8示出認證主方的示例方法;圖9示出解釋和顯示安全性令牌的顯示令牌的示例方法; 圖IO示出用于顯示安全性令牌的顯示令牌的示例用戶界面;以及 圖11示出一種用于生成包括可計算令牌和顯示令牌的安全性令牌的示例 方法。詳細描述參考附圖,現在將在下面更詳細地描述示例實施例。提供這些實施例使得 本公開將徹底和完整。貫穿全文,相同的標號表示相同的元素。此處所公開的示例實施例一般涉及可在第一方和第二方之間進行交換以 認證與第一方有關的身份和/或信息的數字身份。在此處的示例實施例中,第一 方可以是個人、公司、組織、計算機或其它設備、服務或任何其它類型的實體。 第一方在此處稱為主方。在示例實施例中,第二方擁有主方希望訪問和/或獲得 的物品、服務或其它信息。第二方在此處被稱為信賴方。現在參考圖1,示出包括主方110和信賴方120的示例數字身份系統100。 如下進一步所述,主方110和信賴方120可通過一個或多個網絡彼此通信。在 示例實施例中,主方110可請求來自信賴方120的物品、服務、或其它信息, 并且信賴方120可要求在提供所請求的物品、服務或信息之前或之際認證主方 IIO的身份或其有關信息。圖1中還示出聲明轉換方130和聲明權威方140 (有時被稱為安全性令牌 服務,即"STS")。在示出的示例中,聲明轉換方130和聲明權威方140是 能提供關于主方的一個或多個聲明或斷言的一個或多個實體。聲明是例如,姓 名、地址、社會保障號、年齡等涉及主方身份或關于主方的信息而做出的關于 主方的陳述。如以下進一步所述的,聲明轉換方130和聲明權威方140可采用 經簽名的安全性令牌的形式向主方110和/或信賴方120提供聲明。在示例實施例中,聲明權威方140與信賴方120處于信任的關系中,以致 信任方120信任來自聲明權威方140所簽名的安全性令牌中的聲明。盡管聲明轉換方130和聲明權威方140顯示為圖1中的分開的實體,但是, 在替換實施例中,聲明轉換方130和聲明權威方140可以是同一個實體或不同換方130被示為正與主方110通信,但在替換實施例中,如下進一步所述的,信賴方120可與聲明轉換方130直接通信。在此處公開的示例實施例中,系統IOO被實現為在由華盛頓州雷德蒙市的 微軟公司的開發的WINFX應用程序編程接口中提供的InfoCard (信息卡)系 統。InfoCard系統允許主方管理來自各種聲明權威方的多個數字身份。InfoCard系統使用諸如WINFX應用程序編程接口中的Windows Communication Foundation( Windows通信基礎)等web服務平臺。另外,InfoCard 系統使用至少部分地由華盛頓州雷德蒙市的微軟公司推行的Web Services Security Specifications (Web服務安全規范)來構建。這些規范包括消息安 全模型(WS-S函ity),終端策略(WS-S隨ityPolicy)、元數據協議 (WS-MetadataExchange)和信任模型(WS-Trust)。 一般而言,WS-Security 模型描述如何將安全性令牌添附到消息中。WS-SecurityPolicy模型描述使 用WS-MetadataExchange來實現的端點策略要求,例如要求的安全性令牌 和支持的加密算法等。WS-Tmst模型描述允許不同web服務進行相互操作 的信任模型的框架。此處描述的示例實施例引用上述的Web服務安全規范。在替換實施例中, 一個或多個不同規范可用來方便系統100中的各種元素之間的通信。現在參考圖2,在一個示例實施例中,主方110是使用諸如示例計算機系 統200等計算機系統與信賴方120和聲明轉換方130通信的個體。計算機系統 可采用諸如臺式計算機、膝上型計算機和手持式計算機等形式。另外,盡管示 出計算機系統200,但是此處所公開的系統和方法同樣可在各種替換的計算機 系統中來實現。系統200包括處理器單元202、系統存儲器204和將包括系統存儲器204 的各種系統組件耦合至處理器單元202的系統總線206。系統總線206可以是 各種類型的總線結構中的一種,包括使用各種總線體系結構中的任何一種的存 儲器總線、外圍總線和局部總線。系統存儲器包括只讀存儲器(ROM) 208和 隨機存取存儲器(RAM) 210。包含幫助計算機系統200內的元件之間傳輸信 息的基本例程的基本輸入/輸出系統212 (BIOB)存儲于ROM208中。計算機系統200還包括用于讀取或寫入硬盤的硬盤驅動器212、用于讀取或寫入可移動磁盤216的磁盤驅動器214和用于讀取或寫入諸如CD ROM、 DVD或其它光學介質等可移動光盤219的光盤驅動器218。硬盤驅動器212、 磁盤驅動器214和光盤驅動器218分別通過硬盤驅動器接口 220、磁盤驅動器 接口 222和光驅動器接口 224連接至系統總線206。驅動器和與其相關聯的計 算機可讀介質為計算機系統220提供計算機可讀指令、數據結構、程序和其它 數據的非易失性存儲。盡管此處描述的示例環境可使用硬盤212、可移動磁盤216和可移動光盤 219,但是能夠存儲數據的其它類型的計算機可讀介質也可在本示例系統200 中使用。能在示例操作環境中使用的這些其它類型的計算機可讀介質的示例包 括磁帶盒、閃存卡、數字視頻盤、貝努里盒式磁帶、隨機存取存儲器(RAM) 和只讀存儲器(ROM)。多個程序模塊可存儲在硬盤212、磁盤216、光盤219、ROM208或RAM210 之上,這些程序模塊包括諸如來自微軟公司的WINDOWS操作系統等操作系 統、 一個或多個應用程序228、其它程序模塊230和程序數據232。用戶可通過諸如鍵盤234、鼠標236或其它定點設備等輸入設備將命令和 信息輸入至計算機系統200中。其它輸入設備的示例包括工具欄、菜單、觸摸 屏、擴音器、操縱桿、游戲手柄、圓盤式衛星天線、掃描儀等等。這些及其它 輸入設備通常通過耦合至系統總線206的串行端口接口 240連接至處理器單元 202。然而,這些輸入設備也可通過諸如并行端口、游戲端口、或通用串行總 線(USB)等其它接口來連接。LCD顯示器242或其它類型的顯示設備也通過 諸如視頻適配器244等接口連接至系統總線206。除了顯示器242之外,計算 機系統還可通常包括諸如揚聲器和打印機等其它外圍輸出設備(未示出)。計算機系統200采用與諸如遠程計算機246等一個或多個遠程計算機的邏 輯連接在聯網環境中操作。遠程計算機246可以是計算機系統、服務器、路由 器、網絡PC、對等設備、或其它常見的網絡節點等等,并且通常包括許多或 全部以上關于計算機系統200所描述的元件。網絡連接包括局域網(LAN) 248 和廣域網(WAN) 250。這樣的網絡連接環境在辦公室、企業范圍計算機網絡、 內聯網和因特網中是常見的。當在LAN網絡連接環境中使用時,計算機系統200通過網絡接口或適配器252連接至局域網248。當在WAN網絡連接環境中使用時,計算機系統200 通常包括調制解調器254,或用于通過諸如因特網等廣域網250建立通信的其 它裝置。可內置或外置的調制解調器254可通過串行端口接口 240連接至系統 總線206。在聯網環境中,相對于計算機系統200所描繪的程序模塊或其部分 可以存儲在遠程存儲器存儲設備中。將意識到,所示出的網絡連接是示例性的, 并且可以采用在計算機之間建立通信鏈路的其它手段。在此描述的實施例能夠作為在計算機系統中的邏輯操作來實現。邏輯操作 被實現為運行在計算機系統上的計算機實現的步驟或程序模塊的序列和/或實 現為計算系統內運行的互相連接的邏輯或硬件模塊。實現是一個取決于特定的 計算系統的性能要求的選擇的問題。因此,組成此處所描述的實施例的邏輯操 作被稱為操作、步驟或模塊。本領域的普通技術人員將意識到,這些操作、步 驟和模塊可以軟件、固件、專用數字邏輯和它們的任何組合來實現,而不脫離本公開的精神和范圍。這種軟件、固件或類似的計算機指令的序列可被編碼并 存儲在計算機可讀存儲介質上并且還可編碼到載波信號中,以供計算設備之間 進行傳輸。現在參考圖3,又一次示出示例主方110和信賴方120。主方110可使用 例如類似于上述計算機系統200的計算機系統300 (見圖6)與信賴方120通 信。在示出的實例中,主方110使用計算機300向信賴方120發送對物品、服 務或其它信息的請求。例如,在一個實施例中,主方110向信賴方120發送對 主方IIO期望的信息的訪問請求。由主方110發送的請求可包括使用例如WS-MetadataExchange中提供的機 制對信賴方120的安全策略的請求。響應于該請求,信賴方120向主方110發 送信賴方120認證主方IIO身份或關于主方110的其它信息的要求。信賴方120 的認證要求在此處被稱為安全策略。安全策略定義了主方110必需向信賴方 120提供的以供信賴方120認證主方110的一組聲明。在一個示例中,信賴方120使用WS-SecuityPolicy來規范其安全策略,該 安全策略包括信賴方120要求的聲明要求和安全性令牌的類型兩者。根據 WS-SecruityPolicy的用于安全策略的基本形式在以下示例中示出。 <sp:IssuedToken . ><sp:RequestSecurityTokenTemplate> <wst: TokenType>urn:oasis:names:tc:SAML: 1.0:assertion </wst:TokenType> 〈wst:Claimswst:Dialect="http:〃schemas.microsoft.com/ws/2005/05/ identity"><ic:ClaimURI="http :〃.. ./ws/2005/05/identity/claims/givenname'V></wst:Claims> </sp:RequestSecurityTokenTemplate> </sp:IssuedToken>在此示例中,關于主方的姓氏的一項聲明是安全策略所要求的用于認證 的。其它類型的聲明的示例沒有限制地包括以下 名一類型XS:字符串一對象的名; 姓一類型XS:字符串一對象的首名字或祖姓; 電子郵件地址一類型XS:字符串一用于將發送至對象的電子郵件中的"To:"欄的首選地址,通常是<用戶>@<域>的形式; 街地址—類型XS:字符串—對象的地址信息中的街地址組分; 地區名或市一類型XS:字符串一對象的地址信息中的地區組分; 州或縣一類型XS:字符串一對象的地址信息中的州或縣名的縮寫; 郵政編碼一類型XS:字符串一對象的地址信息中的郵政編碼組分; 國家一類型XS:字符串一對象的國家; 第一或家庭電話號碼一類型XS:字符串一對象的第一或家庭電話號 碼; 第二或工作電話號碼一類型XS:字符串一對象的第二或工作電話號 碼; 移動電話號碼一類型XS:字符串—對象的移動電話號碼; 出生日期一類型XS:日期一采用XS:日期數據類型允許的形式的對象 的出生日期; 性別一類型XS:標記一可具有確切的字符串值"男"、"女"或"未指明的"中的一個的對象的性別;以及 專用個人標識符一類型xs:基64的二進制(base64binary) —指示向信賴方標識該對象的專用標識符 本策略還可用來指定信賴方120所要求的安全性令牌的類型,或者使用如 WS-Trust指定的默認類型。例如,以上指出的策略指定了信賴方120所要求的 安全性令牌的某個類型(即,"wst:TokenType")。除了指定所要求的聲明和令牌類型之外,安全策略可指定信賴方所要求的 一特定的聲明權威方("sp:Issuer"),如下所示。<sp:IssuedToken sp:Usage="xs:anyURT sp:IncludeToken="xs:anyURT ...> <sp:Issuer><wsa:EndpointReference>...</wsa:EndpointReference> </sp:Issuer><sp:RequestSecurityTokenTemplate></sp:RequestSecurityTokenTemplate> <wsp:Policy></wsp:Policy></sp:IssuedToken>該策略可略去這個元素,而將對適當的聲明權威方的確定留給主方。還可以在安全策略中指定其它元素,例如,所要求的安全性令牌的新鮮性。 現在參考圖4, 一旦主方IIO從信賴方120接收了安全策略,主方110可 與一個或多個聲明權威方通信來搜集該策略所需的聲明。在示出的示例中,主 方IIO將安全策略的要求與聲明轉換方130和聲明權威方140傳達。例如,主方110可使用WS-Trust中所描述的頒發機制向聲明權威方14012請求一個或多個安全性令牌。在一個示例中,主方110將信賴方120的策略中 的聲明要求轉發給聲明權威方140。信賴方120的身份可以(而不是必需)在 主方110發送給聲明權威方140的請求中被指定。該請求還可包括其它要求, 諸如以下進一步描述的顯示令牌的請求。 以下提供對安全性令牌的請求的示例。 <wst:RequestSecurityToken> <wst:TokenType>urn: oasis :names :tc: S AML :1.0: assertion </wst:TokenType> 〈wst:Claimswst:Dialect= "http :〃schemas .microsoft. com/ws/2005/05/identity"><ic: ClaimURI="http:〃.../ws/2005/05/identity/claims/givenname"/> </wst:Claims> </wst:RequestSecurityToken> 在示例實施例中,聲明權威方140可具有如WS-SecurityPolicy中指定的其自 己的安全策略并且聲明權威方140向主方IIO轉發安全性令牌之前請求認 證主方110。聲明權威方140可提供信賴方120的策略所要求的聲明中的一個或多 個聲明。例如,聲明權威方140被編程為生成該策略所要求的一個或多個 聲明。聲明轉換方130被編程為將聲明權威方140的聲明翻譯成信賴方120 可理解的一個或多個聲明。在示例實施例中,如下所述,聲明轉換方130 生成包括一個或多個聲明的一個或多個經簽名的安全性令牌150。然后,安全性令牌150被轉發給主方110。在示例實施例中,聲明轉換 方130使用WS-Trust中所描述的響應機制向主方110轉發安全性令牌150。現在參考圖5,示出示例安全性令牌150。在示出的實施例中,安全性 令牌150包括可計算令牌152和顯示令牌154。可計算令牌152包括由聲明 權威方130以加密格式提供的聲明。在示例實施例中,如下所述的,聲明轉換方130以能被信賴方120所理解(即,解密)的加密格式生成可計算令牌152。聲明轉換方130還生成顯示令牌154。 一般而言,顯示令牌154至少包 括安全性令牌150的可計算令牌152中所包括的聲明的概要。例如,在某 些實施例中,顯示令牌154包括可計算令牌152中所包括的所有聲明的列 表。如下所述,可按一種能被主方110通過使用例如計算機系統300來審 閱的格式生成顯示令牌154。在某些示例中,顯示令牌154以純文本格式或 超文本標記語言("HTML")格式生成。以下示出作為安全性令牌響應的 一部分而被包括的顯示令牌的一個實施例的示例。 <ic:RequestedDisplayToken><ic:DisplayToken xml:lang="en-us"〉<ic:DisplayClaim URI="http :〃.. ./ws/2005/05/identity/claims/givenname"〉<ic:DisplayTag>Given Name</ic:DisplayTag> <ic:DisplayValue>John</ic:DisplayValue> </ic:DisplayClaim> <ic:DisplayClaim URI="http:〃.../ws/2005/05/identity/claims/sumame"><ic:DisplayTag>Last Name</ic:DisplayTag> <ic:DisplayValue>Doe</ic:DisplayValue> </ic:DisplayClaim> <ic:DisplayToken> </ic:RequestedDisplayToken>以下是以上所示的顯示令牌中的元素的總體描述。
/ic:RequestedDisplayToken/ic:DisplayToken--返回的顯示令牌;* /ic:RequestedDisplayToken/ic:DisplayToken/@xml:lang--這個屬性指示語言標識符,使用RFC3066中指定的語言代碼,在該語 言代碼中,顯示令牌的內容被本地化; /ic:RequestedDisplayToken/ic:DisplayToken/ic:DisplayClaim--這個元素指示安全性令牌中所返回的個人聲明; /ic:RequestedDisplayToken/ic:DisplayToken/ic:DisplayClaim/@URI_—這個屬性提供安全性令牌中所返回的個人聲明的唯一標識符(腦); /ic:RequestedDisplayToken/ic:DisplayToken/ic:DisplayClaim/ic:Disp layTag_—這個可選項元素為安全性令牌中所返回的聲明提供通 用或友好的名稱; /ic:RequestedDisplayToken/ic:DisplayToken/ic:DisplayClaim/ic:Des cription—一這個選項為安全性令牌中所返回的聲明提供語義學的 描述° /ic:RequestedDisplayToken/ic:DisplayToken/ic:DisplayClaim/ic:Dis playValue——這個可選項元素為安全性令牌中所返回的聲明提 供一個或多個可顯示值; /ic :RequestedDisplay Token/ic :DisplayToken/ic :Display TokenText(未顯示)一一當令牌內容不適用于作為單個聲明顯示時,這個 可選項元素從整體上提供整個令牌的替換文本表示。在某些實施例中,根據結構化信息標準促進組織(OASIS)發布的安 全斷言標記語言("SAML")標準來頒發包括可計算令牌152的安全性令 牌150。例如,可根據SAMLl.l或SAML2.0標準來頒發安全性令牌150。還 有使用例如(非限制性)X.509證書和Kerberos票證等其它標準。另外,安全性令牌150可使用已知算法由聲明轉換方130對其以密碼方式 簽名或背面簽署。在一個實施例中,使用例如(非限制性)2048比特非對稱 RSA密鑰。在其它實施例中,可使用例如base64編碼的對稱加密密鑰等其它 加密算法。在一個實施例中,默認使用對稱密鑰。按這種方式,在示出的示例 中,諸如信賴方120等一方可以密碼方式驗證安全性令牌150是否源于聲明轉 換方140。在示例實施例中,使用例如(非限制性)對來自聲明權威方的包含可計算 令牌152和顯示令牌154兩者的整個響應消息的數字簽名的一個或多個已知算法將可計算令牌152以密碼方式與顯示令牌154綁定。現在參考圖6,主方110的示例計算機系統300可包括解釋器312和顯示 設備314。例如,在示出的實施例中,解釋器312可以是計算機系統300可執 行的一個或多個應用程序(例如,見上述的程序228)。另外,顯示設備314 可以是諸如能將信息輸出至主方110的打印機或監視器等輸出設備。在示例實施例中,解釋器312被編程為解釋安全性令牌150的顯示令牌 152。例如,解釋器312可標識顯示令牌152中所概述的聲明,并且解釋器312 可使用顯示設備314向主方IIO顯示該聲明。如下進一步所述,主方110可使 用安全性令牌150中包括的提供于顯示設備314上的聲明概要來做出是否要與 信賴方120共享安全性令牌150的決定。現在參考圖7,主方110可向信賴方120轉發安全令牌150來滿足于信賴 方120的全部或部分的安全策略。在一個示例中,主方110可通過使用 WS-Security所描述的安全綁定機制將安全性令牌150綁定至應用程序消息以 便將安全性令牌150轉發至信賴方120。一旦信賴方120接收到安全性令牌150,信賴方120可以密碼方式驗證該 簽名的安全性令牌150的來源。信賴方120還可使用安全性令牌150的計算令 牌152中的聲明來滿足于信賴方120的安全策略以便認證主方110。 一旦認證 完成,信賴方120可提供對主方110所請求的物品、服務或其它信息的訪問。現在參考圖8,示出用于認證主方的示例方法400。參考一個在其中主方 是雇員A的非限制性示例來描述方法400。雇員A是一被稱為"公司A"的公 司的雇員,并且信賴方是被稱為"旅行社A"的旅行社。公司A與旅行社A 合作以打折價為公司A的員工作旅行安排。在方法400的操作410處,主方向信賴方請求信息。例如,在示出的 實施例中,雇員A使用雇員A的計算機上的應用程序來向旅行社A的網站 請求旅行安排。接著,在操作420處,雇員A的計算機接收來自旅行社A 的網站的安全策略。該策略要求雇員A在能訪問旅行社A的網站中的打折 的旅行安排之前提交帶有證實該雇員A是公司A的雇員的聲明的安全性令 牌。在操作430中,雇員A的計算機向聲明權威方轉發該策略,在本示例中,該聲明權威方是公司A運行的安全性令牌服務即STS。公司A的STS 可頒發帶有證實雇員A是公司A的雇員的聲明的安全性令牌。例如,該聲 明可簡單地是"是公司A的雇員^真"。接著,在操作440處,雇員A的 計算機接收來自公司A的STS的經簽名的安全性令牌。該安全性令牌包括 可計算令牌和顯示令牌,其中該可計算令牌包括證實該雇員A是公司A的
雇員的聲明。
然后,控制傳遞給操作450處,并且雇員A的計算機將來自顯示令牌 的聲明的概要展示給雇員A以供審閱。接著,在操作460處,雇員A可基 于向雇員A所展示的顯示令牌中的信息決定是否將安全性令牌轉發至旅行 社A的網站。
例如,如果公司A的安全性令牌中的僅有聲明是雇員A是公司A的雇 員(即,"是公司A的雇員二真"),則顯示令牌將向雇員A列出該聲明 以供審閱。如果雇員A認為可以將該信息顯示給旅行社A,則在操作465 處,雇員A可將安全性令牌轉發至旅行社A的網站。然后,控制傳遞給操 作470,并且雇員A獲得對旅行社A的網站上的所請求的打折旅行安排的 訪問。
在操作460處,如果雇員A取而代之地決定不轉發該安全性令牌,則控制 傳遞給操作480,并且雇員A不將該安全性令牌轉發至旅行社A的網站。例如, 如果公司A的安全性令牌包括關于雇員A的多于一個的聲明,并且雇員A標 識出雇員A不愿意與旅行社A共享的一個聲明(通過審閱顯示令牌),則雇 員A可決定不轉發該安全性令牌。例如,如果來自公司A的安全性令牌不只 是包括證實雇員A是公司A的雇員的聲明,還包括帶有雇員A的家庭電話號 碼的聲明,則雇員A可能會不希望與旅行社A共享雇員A的家庭電話號碼。 在這種情況下,雇員A可審閱來自安全性令牌的顯示令牌的顯示信息,確定該 安全性令牌包括雇員A的家庭電話號碼并決定不將該安全性令牌轉發至旅行 社A。
現在參考圖9,示出關于方法400的操作450中所涉及的主方審閱安全性 令牌中的顯示令牌的另外的示例細節。在操作510中,安全性令牌的顯示令牌 由主方解釋。例如,在某些實施例中,諸如網絡瀏覽器插件或小應用程序或其它應用程序等應用程序被編程為解釋顯示令牌中所包含的信息。接著,在操作
520處,應用程序被編程為使用諸如web瀏覽器界面等圖形用戶界面來向主方
顯示信息。在替換實施例中,其它配置也是可能的。
例如,現在參考圖IO,示出示例用戶界面550。用戶界面550顯示安全性 令牌的顯示令牌中的信息。用戶界面550包括來自顯示令牌的顯示信息的列表 555。在該示出的示例中,顯示信息包括雇員信息(例如,"公司A")和家 庭電話號碼(例如,"999-999-9999")。用戶界面550還包括發送元素557 和取消元素559。主方可選擇發送元素557來向信賴方(例如,旅行社A)發 送安全性令牌,或選擇取消元素559來制止發送安全性令牌。
在替換實施例中,用戶界面550中可提供額外信息。例如,在某些實施例 中,可列出關于已發送至特定的信賴方的其它安全性令牌的信息和/或可列出關 于當前正顯示的特定安全性令牌先前被發送至何處的信息。在其它實施例中, 用戶界面中可提供關于將要向其發送安全性令牌的特定信賴方的信息,和/或提 供獲得關于該信賴方的額外信息的鏈接。其它配置也是可能的。
現在參考圖ll,示出一種用于聲明權威方和聲明轉換方生成包括可計算令 牌和顯示令牌的安全性令牌的示例方法600。再一次,參考上述提供的其中主 方是雇員A、信賴方是旅行社A、聲明權威方和聲明轉換方是公司A的非限制 性示例來描述方法600。
在操作610處,公司A的STS接收由雇員A轉發的旅行社A的策略。接 著,在操作620處,公司A生成包括該策略所要求的一個或多個聲明的計算令 牌。在操作630處,生成包括關于可計算令牌中的聲明的顯示信息的顯示令牌。 最后,在操作650處,向雇員A轉發包括以密碼方式一起被綁定在響應消息中 的可計算令牌和顯示令牌的安全性令牌。
在示例實施例中,在聲明轉換方頒發的每個安全性令牌中可默認地提供一 顯示令牌。在其它實施例中,僅當主方請求顯示令牌時才提供顯示令牌。以下 是安全性令牌請求中所包括的該顯示令牌請求的示例。 <wst:RequestSecurityToken>
<ic:RequestDisplayToken Langld="en-us" />
</wst:RequestSecurityToken>選項屬性"LangID"指示用于顯示令牌的語言標識符,它使用RFC3066中
指定的語言代碼。
在示例實施例中,如果安全性令牌缺少顯示令牌,則主方被告知缺少 顯示令牌并且主方可決定是否將該安全性令牌轉發至信賴方。在其它實施 例中,如果沒有提供顯示令牌,則不向主方提供任何顯示信息。
在示例實施例中,主方可審閱來自顯示令牌的顯示信息并決定是否將該安 全性令牌轉發至信賴方。在其它實施例中,主方可審閱顯示信息,但是不能選 擇來停止將該安全性令牌轉發至信賴方。換言之, 一旦主方請求安全性令牌, 則一旦主方接收到該安全性令牌,安全性令牌會自動被轉發至信賴方。
在示例實施例中,主方向信賴方只轉發安全性令牌的可計算令牌那部分。 在其它實施例中,主方向信賴方轉發包括可計算令牌和顯示令牌兩者的整個安 全性令牌。
盡管此處示出的示例實施例闡述了由聲明轉換方轉發至主方并接著轉發 至信賴方的安全性令牌,但是在替換實施例中,可將安全性令牌直接從聲明轉 換方轉發至信賴方。例如,在某些實施例中, 一個包括可計算令牌(且很可能 包括顯示令牌)的安全性令牌可轉發至信賴方,并且包括顯示令牌(且很可能 包括可計算令牌)的其它安全性令牌可轉發至主方。其它配置也是可能的。
盡管此處示出的示例實施例闡述了僅要求單個聲明的安全策略并且單個 安全性令牌由一個聲明轉換方頒發,但是在其它實施例中,策略可要求多個聲 明,并且一個或多個聲明權威方可頒發帶有一個或多個聲明的一個或多個安全 性令牌以便滿足于該策略。
盡管在此處公開的某些實施例中,主方是個人,但是在替換實施例中,主 方可以是公司、組織、計算機或其它設備、服務或任何其它類型的實體。例如, 在一個替換實施例中,主方是作為網絡的一部分的設備。該設備可向網絡上作 為信賴方的另一個設備請求諸如軟件升級等信息。該信賴方可在其提供所請求 的更新之前要求認證該設備的身份。該設備可向一個或多個聲明轉換方請求信 賴方的安全策略所要求的一個或多個聲明,并且該聲明轉換方可向該設備提供 包括顯示令牌的一個或多個安全性令牌。該設備可被編程為審閱顯示令牌的內 容并基于其內容決定是否向信賴方轉發安全性令牌。如果該設備向信賴方轉發了安全性令牌,貝lj,然后,該信賴方可完成認證過程并向該設備提供該請求的 升級。
可以有各種與包括計算令牌和帶有能被主方審閱的顯示信息的顯示令牌
的安全性令牌相關聯的優點。例如,主方可使用主方的客戶端計算機系統上的 被編程為解釋和顯示該顯示令牌的內容的應用程序來有效地審閱安全性令牌 的內容。另外,主方對安全性令牌的內容的審閱允許主方對與信賴方共享安全 性令牌中的信息有更多的控制。此外,萬一發生了關于主方的未授權信息的公 開,則這樣一種包括綁定在一起的可計算令牌和顯示令牌兩者的安全性令牌的 系統可提供可審核追蹤。
僅作為示例提供上述的各種實施例,并且不應該被理解為是限制性的。本 領域的技術人員將容易地認識到可對上述的各實施例做出各種修改和改變,而 不離開本公開或所附權利要求的真正的精神和范圍。
權利要求
1.一種用于提供數字身份的系統,所述系統包括被編程為生成包括可計算令牌和顯示令牌的安全性令牌的聲明轉換方,所述可計算令牌包括與一主方的身份相關聯的一個或多個聲明,并且所述顯示令牌包括關于所述可計算令牌中的所述聲明的顯示信息,其中所述顯示信息被配置成允許所述主方查看所述顯示令牌。
2. 如權利要求1所述的系統,其特征在于,所述安全性令牌被所述聲明轉換方以密碼方式簽名。
3. 如權利要求1所述的系統,其特征在于,所述可計算令牌以密碼方式 與所述顯示令牌綁定。
4. 如權利要求1所述的系統,其特征在于,所述顯示令牌按純文本格式 來提供。
5. 如權利要求1所述的系統,其特征在于,所述顯示令牌包括被編程為 列出所述聲明之一的名稱的第一顯示標簽,和被編程為列出所述聲明之一的值 的第二顯示標簽。
6. —種用于提供數字身份的方法,所述方法包括接收包括可計算令牌和顯示令牌的安全性令牌,所述可計算令牌包括與一 主方的身份相關聯的一個或多個聲明,并且所述顯示令牌包括關于所述可計算 令牌中的所述聲明的顯示信息;以及向所述主方顯示所述顯示令牌中的所述顯示信息以便所述主方可審閱所 述顯示令牌的內容。
7. 如權利要求6所述的方法,其特征在于,還包括向一信賴方轉發所述安全性令牌。
8. 如權利要求7所述的方法,其特征在于,還包括允許所述主方決定是 否向所述信賴方轉發所述安全性令牌。
9. 如權利要求6所述的方法,其特征在于,所述可^f算令牌以密碼方式與所述顯示令牌綁定。
10. 如權利要求6所述的方法,其特征在于,所述顯示令牌包括被編程為 列出所述聲明之一的名稱的第一顯示標簽,和被編程為列出所述聲明之一的值 的第二顯示標簽。
11. 一種具有用于執行以下步驟的計算機可執行指令的計算機可讀介質, 所述步驟包括接收包括可計算令牌和顯示令牌的安全性令牌,所述可計算令牌包括與一 主方的身份相關聯的一個或多個聲明,并且所述顯示令牌包括關于所述可計算令牌中的所述聲明的顯示信息;以及向所述主方顯示所述顯示令牌中的所述顯示信息以便所述主方可審閱所 述顯示令牌的內容。
12. 如權利要求11所述的計算機可讀介質,其特征在于,所述步驟還包 括向一信賴方轉發所述安全性令牌。
13. 如權利要求12所述的計算機可讀介質,其特征在于,所述步驟還包 括允許所述主方決定是否向所述信賴方轉發所述安全性令牌。
14. 如權利要求11所述的計算機可讀介質,其特征在于,所述可計算令 牌以密碼方式與所述顯示令牌綁定。
15.如權利要求11所述的計算機可讀介質,其特征在于,所述顯示令牌 包括被編程為列出所述聲明之一的名稱的第一顯示標簽,以及被編程為列出所 述聲明之一的值的第二顯示標簽。
全文摘要
一種用于提供數字身份的系統包括被編程為生成包括可計算令牌和顯示令牌的安全性令牌的聲明轉換方,該可計算令牌包括與主方相關聯的一個或多個聲明,并且該顯示令牌包括關于該可計算令牌中的聲明的顯示信息。該顯示信息被配置成允許該主方查看該顯示令牌。
文檔編號G06Q20/40GK101331509SQ200680047525
公開日2008年12月24日 申請日期2006年11月22日 優先權日2005年12月19日
發明者A·K·納恩達, K·凱美倫 申請人:微軟公司