專利名稱:可信設備專用認證的制作方法
可信設備專用認證背景典型的用戶認證機制在用戶試圖訪問受保護的資源(例如經由因特網訪問的服 務器)時驗證用戶的憑證,諸如通過確認用戶名和口令。然而,使用這種傳統(tǒng)的認證機制, 如果用戶名和口令被惡意實體竊取,則該實體可以通過任何設備從世界上任何地方訪問用 戶的帳戶,而導致不合需要的安全風險。另一認證場景涉及用戶試圖登錄到遠程設備上。用戶認證機制可以認證用戶,但 是這也涉及確定遠程設備實際上是用戶所期望的可信設備。例如,用戶可能試圖登錄到遠 程服務器上以上傳憑證文件。如果認證過程未驗證用戶的憑證和設備的憑證兩者,那么用 戶可能將機密文件上傳到錯誤的服務器上。搞錯正在訪問的設備的風險引入了嚴重的安全 風險。概述此處所描述和要求保護的實現通過組合設備憑證認證和用戶憑證認證以提供對 用戶方便并且跨企業(yè)邊界有效的更加健壯的認證機制來解決上述問題。在一個實現中, 組合用戶憑證驗證和設備憑證驗證以提供方便的雙因素認證。一般地,用戶提供用戶憑證 (例如用戶名和口令),而用戶的設備提供已與用戶和設備兩者相關聯的設備憑證。這樣, 帳戶授權服務或其他認證提供方依照用戶想要訪問的帳戶網絡資源的安全策略驗證這兩 個因素并且提供安全令牌。如果所需因素未得到驗證,那么帳戶授權服務可以用另一因素 (例如指紋掃描、視網膜掃描、HIP解決方案、秘密問題等)請求認證。目標帳戶網絡資源授 予的特權級別可以根據帳戶授權服務驗證的因素的數目和類型而變化。在一些實現中,提供制品作為計算機程序產品。計算機程序產品的一個實現提供 了計算機系統(tǒng)可讀并且編碼計算機程序的計算機程序存儲介質。計算機程序產品的另一實 現可以由計算系統(tǒng)在體現在載波中并且編碼計算機程序的計算機數據信號中提供。此處也 描述和陳述了其他實現。提供本概述是為了以簡化的形式介紹將在以下詳細描述中進一步描述的一些概 念。本概述并不旨在標識出所要求保護的主題的關鍵特征或必要特征;也不旨在用于確定 或限制所要求保護的主題的范圍。附圖簡述
圖1示出了采用可信設備專用認證的示例性系統(tǒng)。圖2示出了用于生成可信設備專用證書的示例性操作和通信。圖3示出了用于使用可信設備專用認證訪問安全服務器的示例性操作和通信。圖4示出了基于可信設備專用認證提供遠程設備訪問的示例性系統(tǒng)。圖5示出了基于可信設備專用認證提供遠程設備訪問的示例性操作和通信。圖6示出了可能可用于實現所述技術的示例性系統(tǒng)。詳細描述圖1示出了采用可信設備專用認證的示例性系統(tǒng)100。用戶操作用戶設備102在 設立用戶帳戶時經由通信網絡108與帳戶授權服務104通信。在一個實現中,用戶帳戶可用于訪問各種網絡服務或資源(統(tǒng)稱為“帳戶網絡資源”)。例如,通過使用帳戶授權服務104 設立帳戶,用戶可以配置可用于訪問帳戶網絡內的電子郵件服務、日歷制定服務、即時消息 傳遞服務、文本消息傳遞服務、博客制作服務、在線音樂服務、照片共享服務、各種電子商務 站點、各種遠程設備等單組憑證。(術語“帳戶網絡”指與帳戶授權服務有信任關系的帳戶 網絡資源的網絡。)帳戶授權服務104管理帳戶網絡內用戶帳戶的初始化與維護。帳戶授 權服務104也維護與這些帳戶網絡資源中每一個的信任關系,使得每個帳戶網絡資源將基 于帳戶授權服務104提供的身份表示(例如安全令牌)來允許用戶訪問。在一個實現中, 帳戶授權服務基于保護帳戶授權服務和每個帳戶網絡資源之間的通信的諸如使用條款、安 全策略和密鑰的合同的組合來建立并維護與帳戶網絡資源的這些信任關系。安全令牌例如使用唯一的秘密來提供一個或多個實體(例如用戶和/或設備)的 身份的證據。通過將安全令牌提供給另一實體,進行提供的實體提供其身份的證據。由進行 接收的實體基于安全令牌確定是否向進行提供的實體授予特權級別。此外,安全令牌可具 有有效期,在有效期之后安全令牌不再可靠。在一個實現中,安全令牌支持允許計算設備詢 問它(例如以確定安全令牌是否包括用戶名和/或設備ID)的API (應用程序編程接口)。 應該理解用戶名是用戶ID的一個示例,可以采用其他用戶ID。其他示例可以包括電子郵件 地址和別名,包括游戲者標簽。在一個實現中,雖然可以采用其他信息組合來設立用戶帳戶,用戶提供用戶憑證 (例如用戶名和用戶口令)來設立帳戶。帳戶信息被存儲在可由帳戶授權服務104訪問的數 據存儲庫106中。例如,帳戶記錄可以包括用戶名、口令、一個或多個設備ID以及它們相應 的設備口令和用戶友好設備名等其他數據項。當用戶試圖登錄到其帳戶上時,帳戶授權服 務104查找用戶的帳戶信息并對照存儲在帳戶信息中的那些信息來驗證用戶憑證。例如, 帳戶授權服務104使用所提供的用戶名來查找用戶的帳戶信息。接著,帳戶授權服務104 認證用戶憑證(例如用戶名和口令)以授權對用戶帳戶的訪問。無論是在帳戶設立期間還是之后提供設備憑證(例如設備標識符(ID)和設備口 令),也可以將其從用戶設備102發(fā)送給帳戶授權服務104并且將其存儲為與用戶憑證相 關聯的帳戶信息。設備ID是指為設備生成的全局唯一的設備標識符??梢允褂酶鞣N方法 生成設備ID。在一個實現中,設備ID可以是具有較大的值集的諸如全局唯一標識符的隨 機生成的數字,使得一個設備ID不會與另一個設備ID沖突。另一實現可以包括對設備自 身的唯一特征的考慮。對于個人計算機設備,例如硬盤和BIOS的組合提供了可用于有助于 設備ID生成的某些唯一的、非易失性參數或特征。其他特征可以與操作系統(tǒng)內一般為非易 失性的用戶設置相關。這些非易失性特征允許設備ID與實際設備本身關系密切,使得設備 ID較不能欺騙并且更易于從丟失中恢復。在一個實現中,用戶指定用戶設備102是可信設備,在用戶設備102上執(zhí)行的客戶 端軟件生成設備ID和設備口令,用戶設備102將設備ID和設備口令作為設備憑證發(fā)送給 帳戶授權服務104。用戶也可以提供與設備憑證相關聯的用戶友好的設備名,使得用戶(以 及潛在的其他用戶)可以在將來標識用戶設備102。在一個實現中,帳戶授權服務104將設備ID與用戶名相關聯地記錄在數據存儲庫 106中,以建立用戶和用戶設備102之間的信任關系。通過該過程,用戶已聲明用戶設備102 是其在附屬于與帳戶授權服務104的帳戶網絡內的可信設備之一。應該理解用戶可以使用類似的過程指定多個可信設備。此外,用戶可以將設備從其帳戶中的其可信設備列表中移除,這在當設備被盜且 用戶希望防止通過被盜的設備認證時是有用的。例如,用戶向帳戶授權服務104發(fā)送請求 以解除其用戶ID與指定設備ID的關聯。帳戶授權服務104作為響應可以從用戶的帳戶刪 除指定設備的設備ID或用其他方式指示用戶ID不再與該設備ID相關聯。例如當用戶正 在更新其計算機或移動電話時,該機制會是有用的——例如通過較老的用戶設備的請求可 以指定“從我的可信設備列表移除該設備”。然而,在某些情況下,用戶可能不再擁有要從可 信設備列表移除的用戶設備(例如用戶設備被損壞、丟失或被盜)。在某些情況下,用戶可 以請求其可信設備列表并從該列表選擇要移除的設備,所述可信設備可以按照用戶友好的 設備名來列出?;蛘?,用戶可以僅在移除請求中向帳戶授權服務105提供用戶友好的設備 名。在一個實現中,如果用戶用帳戶授權服務104設立了其帳戶,那么用戶與用戶設 備102的設備ID相關聯,用戶可以請求與用戶設備102相關聯的設備證書。一般地,設備證 書是將公鑰與設備ID綁定的數字證書。設備證書提供了公鑰屬于設備ID所標識的設備的 證據。例如,用戶可以生成公/私鑰對并且將公鑰與所關注的設備的引用(例如用戶友好 的設備名稱、設備ID等)一起發(fā)送給帳戶授權服務104。將公鑰與設備憑證和/或用戶憑 證一起提交是為了確保證書請求是由可信設備和/或用戶作出的。公鑰可以在帳戶設立的 同時或其后某一時間傳送給帳戶授權服務104。帳戶授權服務104使用公鑰來加密設備ID 以創(chuàng)建設備證書、使用其私鑰簽署設備證書并且將經簽署的設備證書發(fā)回給用戶設備102。 作為該事務的結果,用戶設備102擁有它是由設備ID標識的設備的可信證據(例如設備證 書)。當用戶希望啟動對諸如電子商務服務器110的帳戶網絡資源的訪問時,用戶的瀏 覽器可以導航到電子商務服務器110,后者將用戶的瀏覽器重定向到帳戶授權服務104。用 戶設備102可以在對訪問電子商務服務器110的安全令牌的請求中將用戶憑證和設備證書 提供給帳戶授權服務104。在一個實現中,安全令牌可以包括用戶名和/或設備ID,帳戶網 絡資源可以通過API訪問該用戶名和/或設備ID。在一個實現中,帳戶授權服務104評估 用戶憑證、設備證書和電子商務服務器110的安全策略以確定是否向用戶設備102提供用 于訪問電子商務服務器110的安全令牌。一般地,安全策略定義服務器定義了什么安全活 動的條款。安全策略針對對其中功能和流的約束、對包括程序的外部系統(tǒng)和對手訪問以及 用戶對數據的訪問的約束。在另一實現中,帳戶授權服務104也可以考慮用戶憑證和設備 憑證是否兩者都被認證,并且如果否,那么帳戶授權服務104可以拒給安全令牌。這種拒給 可以依照網絡服務的安全策略來執(zhí)行或由帳戶授權服務自身規(guī)定。如果用戶設備102接收安全令牌,那么它將安全令牌轉發(fā)給電子商務服務器110, 后者在允許用戶在確定的特權級別下訪問之前評估安全令牌。如果允許用戶訪問電子商務 服務器110,那么用戶設備102和電子商務服務器110之間的通信可以在服務器的安全策略 的條款和用戶的特權級別之下進行。多因素認證(例如雙因素認證)可以提供比單因素認證更強的安全性。在一個實 現中,多因素可以包括用戶憑證加上可信設備憑證,盡管可以在多因素認證中采用其他因 素組合。多因素認證往往更強大,因為單獨的用戶名稱和口令可以被容易地釣魚或盜用,但是對于惡意用戶而言用戶用于訪問帳戶網絡資源的物理的可信設備更難以獲取和操作。此 外,可以根據除了用戶因素之外可信設備因素是否被認證來作出不同的安全決策。例如,安 全策略可以在從未注冊的設備作出登錄的嘗試時通知用戶,要求僅通過可信設備來進行對 用戶的口令的改變,如果可信設備因素未被認證那么將安全令牌設置為具有較短的有效期寸。在一個實現中,電子商務服務器110可以根據可信設備因素是否被認證而向用戶 提供不同的特權級別。例如,與僅用用戶憑證認證的用戶相比,用用戶憑證和設備憑證(例 如由設備證書表示)兩者認證的用戶會被給予額外的存儲或可經歷較少的人類交互提示 (HIP)或其它安全提示。為了用戶帳戶的額外的安全性,如果用戶不能獲取用戶憑證和可信設備的設備憑 證兩者的驗證,那么帳戶授權服務104會阻止改變用戶憑證和/或設備憑證的嘗試。實踐 上,如果具有有效的用戶名/ 口令的用戶不是通過可信設備訪問帳戶授權服務104的,該特 征可以防止該用戶通過帳戶授權服務104改變用戶的帳戶信息。另外地或另選地,如果請 求改變的用戶不能獲取用戶憑證和可信設備的設備憑證兩者的驗證,那么可以通知用戶改 變用戶帳戶信息的嘗試。圖2示出了用于生成可信設備專用證書的示例性操作和通信(共同地在200處)。 通信表示在用戶設備和操作帳戶授權服務的計算系統(tǒng)之間通常通過通信網絡的數據傳輸。在一個實現中,在生成操作202中,用戶設備上的客戶端軟件生成設備ID和設備 口令(“設備憑證”),兩者都與用戶設備相關聯。用戶也可以提供與設備ID相關聯的用戶 友好設備名。與創(chuàng)建帳戶的請求相關聯地,在傳輸操作204中,用戶設備收集用戶名/ 口令 和設備ID/ 口令(以及潛在地,用戶友好設備名)并將它們發(fā)送給帳戶授權服務。響應于 該請求,帳戶授權服務在創(chuàng)建操作206中為用戶創(chuàng)建帳戶,將用戶名與設備ID相關聯并且 將兩者都記錄在存儲在帳戶授權服務可訪問的數據庫中的帳戶信息中。用戶口令和設備口 令兩者也可以被存儲在帳戶信息中,通常帶有密碼保護。應該理解,用戶名和設備ID也可以在其他情況下關聯。例如,用戶的帳戶已經被 創(chuàng)建,使得用戶隨后提供設備憑證以便與先前創(chuàng)建的帳戶相關聯。此外,可以將用戶名與多 個可信設備ID相關聯,并且這些關聯可以被記錄在帳戶信息中。在生成操作208中,用戶設備生成公/私鑰對。在請求操作210中,用戶設備請求 與可信設備相關聯的證書。在一個實現中,用戶設備將用戶友好設備名和公鑰發(fā)送給帳戶 授權服務。在一替換性實現中,用戶設備可以替換地也發(fā)送用戶名/ 口令以確保請求是由 用戶從具有較高的安全保證的可信設備發(fā)起的。在生成操作212中,帳戶授權服務將設備ID和公鑰構造到設備證書中,并接著使 用帳戶授權服務的私鑰簽署證書以便將用戶設備的公鑰綁定到設備ID上。以此方式,希望 確認設備ID屬于用戶設備的實體接著可以使用帳戶授權服務的公鑰來驗證其數字簽名以 評估證書。在一個實現中,用戶可以將多個設備指定為“可信的”。相應地,可信設備的每個設 備ID與用戶的用戶名和用戶友好的名稱相關聯地被記錄在帳戶信息中。以此方式,用戶通 過提供用戶友好的設備名標識其希望指定為“可信的”的設備。當請求設備證書時,用戶可 以提供用戶友好的設備名,使得帳戶授權服務可以找到并訪問用戶的帳戶并且提取對應于所提供的用戶友好的設備名的設備ID。帳戶授權服務接著將設備ID和公鑰構造到它使用 其自己的私鑰簽署的設備證書中。在返回操作214中,帳戶授權服務將所生成的設備證書返回給用戶設備。在接收 操作216中,用戶設備接收設備證書。用戶設備稍后可以將設備證書用作它是設備ID標識 的設備的證據。圖3示出了用于使用可信設備專用認證訪問安全服務器的示例性操作和通信(共 同地在300處)。在該示例中,假定用戶希望從其設備訪問安全服務器。安全服務器與帳戶 授權服務器有信任關系,它依賴該信任關系來認證用戶和設備。在該信任關系中,帳戶授權 服務知道安全服務器的安全策略并且當它被要求為訪問安全服務器認證用戶和/或設備 時執(zhí)行所述策略。根據用戶是提供用戶憑證和設備憑證兩者還是僅提供用戶憑證,帳戶授 權服務向用戶授權以訪問安全服務器的特權級別可以不同。例如,采用用戶憑證和設備憑 證兩者的認證可能導致帳戶授權服務向用戶授予比僅用用戶憑證認證更高的特權級別。在所示的流程中,用戶在請求操作302中(例如通過將瀏覽器導航到安全服務器 服務的網頁)請求訪問安全服務器。安全服務器設備檢測到用戶還未被帳戶授權服務認證 以進行訪問(例如用戶的訪問請求不包含用于訪問安全服務器的安全令牌),并由此在重 定向操作304中將用戶重定向到帳戶授權服務以進行認證。帳戶授權服務在接收操作306中接收重定向的請求(其包括對請求重定向的安全 服務器的標識)。帳戶授權服務處的提示操作308提示用戶提供憑證。用戶設備在接收操 作310處接收提示并在發(fā)送操作312中提交憑證。通常,用戶會提交其用戶憑證(例如用戶 名和口令)。在一替換性場景中,用戶設備也可以提交設備證書(或設備ID和設備口令), 由此允許認證雙因素。作為帳戶授權服務和安全服務器之間的信任關系的一部分,帳戶授權服務知道安 全服務器的安全策略。相應地,當帳戶授權服務從用戶設備處接收憑證時,它認證它們,并 且如果憑證滿足安全服務器的安全要求(如在判定操作314中所確定的),那么帳戶授權服 務就在操作320中發(fā)送安全令牌給用戶設備。如果用戶設備提供的憑證不滿足安全服務器的安全要求,那么帳戶授權服務316 可以提示用戶設備提供附加憑證。例如,如果安全服務器要求諸如用戶和設備憑證兩者的 雙因素認證,那么帳戶授權服務器會要求用戶經由可信設備認證。或者,如果設備ID因素 得不到滿足,那么安全服務器可以接受備選的第二因素,諸如HIP解決方案、機密問題回答 (例如“母親的婚前姓”)等。在其他場景中,如果未滿足所要求數目的因素,那么可以以某種方式削弱帳戶授 權服務授予的認證。例如,如果沒有完成第二因素認證,那么帳戶授權服務可以提供更快過 期的安全令牌。用戶設備在接收操作322中接收安全令牌并且在發(fā)送操作3M中將它轉發(fā)給安全 服務器。在授予操作326,安全服務器基于帳戶授權服務執(zhí)行的認證詢問安全令牌以確定要 授予用戶/設備的特權級別。在一個實現中,安全服務器詢問安全令牌以確定用戶憑證和 設備憑證是否兩者都被包括在用帳戶授權服務進行的認證中。如果是,那么安全服務器可 以經由用戶設備允許用戶擁有較高的特權級別。否則,安全服務器可以允許用戶擁有較低 的特權級別或根本不允許訪問。
圖4示出了基于可信設備專用認證提供遠程設備訪問的示例性系統(tǒng)400。在設立 用戶帳戶過程中用戶操作用戶設備402以經由通信網絡408與帳戶授權服務404通信。在 一個實現中,用戶帳戶可用于訪問各種帳戶網絡資源。例如,通過用帳戶授權服務404設立 帳戶,操作用戶設備402的用戶可以發(fā)布其希望與其他用戶,諸如經由遠程用戶設備412的 遠程用戶共享的可信設備列表。帳戶授權服務404管理帳戶網絡內用戶帳戶的初始化和維 護。帳戶授權服務404也維護與用戶、用戶設備以及與耦合到帳戶網絡的其他用戶和設備 的信任關系。在一個實現中,用戶提供用戶憑證(例如用戶名和用戶口令)以設立帳戶,盡管可 以采用其他信息的組合來設立用戶帳戶。帳戶信息存儲在帳戶授權服務404可訪問的數據 存儲庫406中。當用戶試圖登錄到其帳戶時,帳戶授權服務404查找用戶帳戶信息,并且對 照那些存儲在帳戶信息中的信息驗證所提供的用戶憑證。無論設備憑證是在帳戶設立期間或之后提供的,設備憑證(例如設備標識符(ID) 和設備口令)也可以從用戶設備402發(fā)送到帳戶授權服務404并且被存儲為與用戶憑證相 關聯的帳戶信息。在一個實現中,用戶指定用戶設備402是可信設備,而在用戶設備402上 執(zhí)行的客戶機軟件生成設備ID和設備口令,用戶設備402將其作為設備憑證發(fā)送給帳戶授 權服務404。用戶也可以提供用戶友好的設備名,使得用戶(以及潛在的其他用戶)可以在 將來標識用戶設備402。用戶也可以通過發(fā)布設備共享指令將設備402指定為另一遠程用戶可訪問的。在 一個實現中,用戶在其帳戶信息中設置標識用戶設備402可由其他用戶訪問的參數。在另 一實現中,用戶也可以將其希望與之共享設備的遠程用戶以及處于哪個特權級別指定為共 享參數。共享參數與帳戶授權服務404從用戶設備402接收到的設備ID相關聯。帳戶授 權服務404也可以將共享參數添加到證書上,并且在將證書返回給用戶設備402之前簽署 證書。在一個實現中,帳戶授權服務404將設備ID和共享參數與用戶名相關聯地記錄在 數據存儲庫406中,以建立用戶和用戶設備402之間的信任關系。通過該過程,用戶聲明了 用戶設備402是其在附屬于帳戶授權服務404的帳戶網絡內的可信設備之一。在一個實現中,如果用戶使用帳戶授權服務404設立其帳戶,使得用戶與用戶設 備402的設備ID相關聯,那么用戶可以請求與用戶設備402相關聯的設備證書。用戶生成 公/私鑰對并且將公鑰與所關注的設備的引用(例如用戶友好的設備名、設備ID等)一起 發(fā)送給帳戶授權服務404。公鑰可以結合帳戶設立或在其后的某個其他時間發(fā)送給帳戶授 權服務404。帳戶授權服務404使用公鑰加密設備ID以創(chuàng)建設備證書并將設備證書發(fā)回給 用戶設備402。作為該處理的結果,用戶設備402擁有它是由設備ID標識的設備的可信證 據(例如設備證書)。當另一遠程用戶試圖通過遠程用戶設備412與用戶設備402連接時,遠程用戶設 備412向帳戶授權服務404請求與第一用戶相關聯的可共享的設備的列表(例如由第一用 戶的電子郵件地址、游戲標簽、用戶名等標識的)。帳戶授權服務404查找第一用戶的帳戶 信息,確定哪個用戶設備被發(fā)布為可共享的,以及進行請求的遠程用戶是否被授權共享設 備。如果遠程用戶被如此授權,那么帳戶授權服務404返回與第一用戶相關聯并且可用于 遠程用戶共享的可共享設備的列表。遠程用戶可以選擇可共享設備之一,將選擇返回給帳戶授權服務404。帳戶授權服務404接著從用戶的帳戶信息提取所選設備的設備ID并且將 所選設備的設備ID返回給遠程用戶設備412。返回給遠程用戶設備412的信息可以包括公 鑰和用戶設備402的IP地址。在遠程用戶設備412從可信帳戶授權服務404獲取了所選的可共享設備的設備ID 后,遠程用戶設備412可以連接到用戶設備402。在一個實現中,連接是通過諸如帶有用戶 設備402的IP地址的TCP/IP的標準連網協(xié)議完成的。當遠程用戶設備412完成對用戶設 備402的連接時,它從用戶設備402請求設備證書并且驗證由帳戶授權服務404進行的簽 名。(以此方式,遠程用戶設備412可以獲取用戶設備402的公鑰。它也可以從帳戶授權服 務404獲取用戶設備402的公鑰。)遠程用戶設備412也請求用戶設備402提供它知道匹配用戶設備402的公鑰的私 鑰。提供的方法可以通過諸如SSL的標準協(xié)議完成,但也可以采用其他方法。在一個實現 中,用戶設備402經歷與遠程用戶設備402的網絡質詢和響應握手,這導致用戶設備402用 其私鑰來簽署和/或加密某些數據。遠程用戶設備412接著可以使用用戶設備402的公鑰 來驗證數據。通過驗證用戶設備402真實地擁有私鑰,遠程用戶設備412確定其已連接到 它期望連接的設備上,而設備相應地可以安全地繼續(xù)通信。如果驗證失敗,那么遠程用戶設 備412可以在將信息提供給錯誤的設備或向錯誤的設備授權訪問之前中斷連接。在一個實現中,用戶設備402也可以請求遠程用戶設備412發(fā)送其(從帳戶授權 服務404接收到的)安全令牌,這樣可以向用戶設備402保證遠程用戶設備412的身份。安 全令牌也可以是證書形式的公/私鑰對,而設備402會經歷驗證簽名和獲取遠程用戶設備 412擁有私鑰的證據的類似的過程。圖5示出了用于基于可信設備專用認證提供遠程設備訪問的示例性操作和通信 (共同地在500處)。在發(fā)現請求操作502中,遠程用戶(經由遠程用戶設備)向帳戶授權 服務請求與另一用戶相關聯的可共享設備的列表,使用諸如用戶的電子郵件地址、游戲標 簽、用戶名等的用戶標識符指定用戶。在發(fā)現列表操作504中,帳戶授權服務接收請求并且 訪問指定的用戶帳戶以獲取與指定用戶相關聯的可共享設備的列表。帳戶授權服務將設備 名(通常為指定用戶發(fā)起的用戶友好設備名)收集到列表中,并且在發(fā)送操作506中將列 表發(fā)回給遠程用戶設備。遠程用戶可以審閱可共享設備列表并且在選擇操作508中選擇感興趣的設備。在 發(fā)送操作510中,遠程用戶設備將對可共享設備的選擇發(fā)回給帳戶授權服務。帳戶授權服 務訪問另一用戶的帳戶信息以便在提取操作512中提取所選設備的設備ID并在發(fā)送操作 514中將它返回給遠程用戶設備。遠程用戶設備在接收操作516中接收設備ID。遠程用戶設備在連接操作518中連接到所選設備。如上所述,該連接可以通過諸 如TCP/IP的標準連網協(xié)議獲取,盡管可以采用其他方法。可共享用戶設備在連接操作520 中接受連接,所述連接操作520也證明擁有用戶設備的私鑰。遠程用戶設備接收擁有私鑰 (例如設備證書)的聲明并且確認在擁有私鑰的聲明中使用了用戶設備的私鑰。該驗證機 制可以基于私/公鑰對(例如經由SSL)來實現。遠程用戶設備也可以確認設備證書上的 帳戶授權的簽名。如果遠程用戶設備能夠經由設備ID確認可共享的用戶設備的身份,那么遠程用 戶設備確保它所連接到的設備是從可共享設備的列表選擇的設備。這樣,遠程用戶設備和可共享用戶設備可以在操作5 和528中交互。如果遠程用戶設備不能確認可共享用戶設 備的身份是它期望連接的設備,那么它可以終止連接以降低違反安全性的可能性。用于實現本發(fā)明的圖6的示例性硬件和操作環(huán)境包括計算設備,諸如游戲控制臺 或計算機20形式的通用計算設備、移動電話、個人數據助理(PDA)、機頂盒或其他類型的計 算設備。例如,在圖6的實現中,計算機20包括處理單元21、系統(tǒng)存儲器22以及在操作上 將包括系統(tǒng)存儲器的各種系統(tǒng)組件耦合到處理單元21的系統(tǒng)總線23。可能只有一個或可 能有多于一個處理單元21,這樣使得計算機20的處理器包括單個中央處理單元(CPU)或多 個處理單元,通稱為并行處理環(huán)境。計算機20可以使常規(guī)的計算機、分布式計算機或任何 其他類型的計算機,本發(fā)明不限于此。系統(tǒng)總線23可以是若干種總線結構中的任一種,包括系統(tǒng)總線或系統(tǒng)控制器、并 行總線、交換光纖、點到點連接以及使用多種總線體系結構中的任一種的局部總線。系統(tǒng)存 儲器也可以被簡稱為存儲器,并且包括只讀存儲器(ROM) M和隨機存取存儲器(RAM) 25。基 本輸入/輸出系統(tǒng)(BIOS)沈被存儲在ROM M中,它包含有助于例如在啟動期間在計算機 20內的各元件之間傳送信息的基本例程。計算機系統(tǒng)20還包括用于對硬盤進行讀寫的硬 盤驅動器27(未示出),用于對可移動磁盤四進行讀寫的磁盤驅動器28,以及用于對諸如 ⑶-ROM或其它光介質等可移動光盤31進行讀寫的光盤驅動器30。磁硬盤驅動器27、磁盤驅動器28和光盤驅動器30分別通過硬盤驅動器接口 32、 磁盤驅動器接口 33和光驅接口 34連接到系統(tǒng)總線23。驅動器及其相關聯的計算機可讀介 質為計算機20提供計算機可讀指令、數據結構、程序模塊和其他數據的非易失性存儲。本 領域的技術人員應該理解可以在示例性操作環(huán)境中使用可以存儲計算機可訪問的數據的 任何類型的計算機可讀介質,諸如磁盒、閃存卡、數字視頻盤、隨機存取存儲器(RAM)、只讀 存儲器(ROM)等。多個程序模塊可以被存儲在硬盤、磁盤四、光盤31、ROM 24或RAM 25上,包括操 作系統(tǒng)35、一個或多個應用程序36、其他程序模塊37和程序數據38。用戶可以通過諸如 鍵盤40和定點設備42的輸入設備將命令和信息輸入到個人計算機20中。其他輸入設備 (未示出)可以包括話筒、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設 備通常由耦合至系統(tǒng)總線的串行端口接口 46連接至處理單元21,但也可以由其它接口,諸 如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視器47或其它類型的顯示設備也經 由諸如視頻接口 48等顯示接口連接到系統(tǒng)總線23。除監(jiān)視器以外,計算機通常包括其它外 圍輸出設備(未示出),諸如揚聲器和打印機。計算機20可使用至一個或多個遠程計算機,諸如遠程計算機49的邏輯連接在網 絡化環(huán)境中操作。這些邏輯連接是通過耦合到計算機的通信設備或計算機20的一部分來 完成的;本發(fā)明不限于特定類型的通信設備。遠程計算機49可以是另一計算機、服務器、路 由器、網絡PC、客戶機、對等設備或其它常見網絡節(jié)點,且通常包括上文相對于計算機20描 述的許多或所有元件,盡管在圖6中只示出存儲器存儲設備50。圖6中描述的邏輯連接包 括局域網(LAN)51和廣域網(WAN)52。這樣的網絡環(huán)境在辦公室網絡、企業(yè)范圍計算機網 絡、內聯網和因特網中是常見的,它們是所有類型的網絡。當在LAN網絡環(huán)境中使用時,計算機20通過網絡接口或適配器53連接至LAN51, 適配器53是一種類型的通信設備。當在WAN網絡環(huán)境中使用時,計算機20通常包括調制絡適配器、一種通信設備或用于通過廣域網52建立通信的任何其它類型的通 信設備。調制解調器M可以是內置或外置的,它可以通過串行端口接口 46連接至系統(tǒng)總 線23。在網絡化環(huán)境中,相對于個人計算機20描述的程序模塊或其部分可以存儲在遠程存 儲器存儲設備中??梢岳斫?,示出的網絡連接是示例性的,并且可以使用在計算機之間建立 通信鏈路的其它手段和通信設備。在示例性實現中,帳戶授權服務模塊和其他模塊可以具體化為存儲在存儲器22 和/或存儲設備四或31并且由處理單元21處理的指令。用戶名、口令、設備標識符、證書、 安全令牌和其他數據可以存儲在作為永久的數據存儲的存儲器22和/或存儲設備四或31 中。此處描述的技術被實現為邏輯操作和/或一個或多個系統(tǒng)中的模塊。邏輯操作可 以被實現為在一個或多個計算機系統(tǒng)中執(zhí)行的一系列處理器實現的步驟以及可以被實現 為互連的機器或一個或多個計算機系統(tǒng)中的電路模塊。同樣地,可以按照模塊執(zhí)行或實現 的操作來提供各種組件模塊的描述。所得的實現是取決于實現所述技術的底層系統(tǒng)的性能 要求來選擇的。因此,組成本文所描述的技術的實施例的邏輯操作被不同地稱為操作、步 驟、對象或模塊。以上說明書、示例和數據提供了對結構的完整描述和對本發(fā)明的示例性實施例的 使用。雖然以上帶有一定程度的特殊性或參考一個或多個個別的例子描述了本發(fā)明的各個 實施例,但是本領域的技術人員可以對所公開的實施例做出眾多改變,而不背離本發(fā)明的 精神或范圍。具體地,可以理解所描述的技術可以獨立于個人計算機使用。因此可以構想 其他實施例。意圖是包含在以上描述中和附圖中所示的所有問題應該被解釋為僅說明了特 定的實施例而非限制性的。可以做出細節(jié)和結構上的改變而不背離在所附權利要求中定義 的本發(fā)明的基本要素。盡管用結構特征和/或方法動作專用的語言描述了本主題,但可以理解,所附權 利要求書中定義的主題不必限于上述具體特征或動作。相反,上文所描述的具體特征和動 作是作為實現權利要求的示例形式來公開的。此外,應該理解,邏輯操作可以按照任何順序 執(zhí)行,除非用其他方式明確地做出權利要求或一種特定的順序是權利要求的語言本質上需 要的。
權利要求
1.一種在帳戶網絡(100)中執(zhí)行對用戶的多因素認證的方法,所述方法包括接收用戶的用戶憑證(204)和用戶用來訪問帳戶網絡(100)的設備(102)生成的設備憑證(204);將所述用戶憑證O04)的用戶標識符與所述設備憑證O04)的設備標識符相關聯 (206)以表示所述用戶和所述設備之間的信任關系;評估(314)所述用戶憑證(204)和所述設備憑證Q04)以生成驗證結果;基于所述用戶憑證(204)和所述設備憑證(204)兩者的驗證結果來提供(320)所述用 戶的身份的證據。
2.如權利要求1所述的方法,其特征在于,其中所述用戶的身份的證據包括所述用戶 標識符和所述設備標識符領著。
3.如權利要求1所述的方法,其特征在于,其中所述關聯操作包括關聯地將所述用戶標識符與所述設備標識符記錄在所述帳戶網絡內的用戶的帳戶中。
4.如權利要求1所述的方法,其特征在于,其中所述關聯操作包括記錄所述用戶標識符和所述設備標識符以及至少一個其他設備標識符,所述記錄操作 將由所述設備標識符和所述至少一個其他設備標識符標識的設備指定為所述用戶的可信 設備。
5.如權利要求1所述的方法,其特征在于,其中所述提供操作包括生成安全令牌作為所述用戶的身份的證據,其中所述安全令牌包括所述用戶標識符和 所述設備標識符兩者。
6.如權利要求1所述的方法,其特征在于,其中所述提供操作包括生成安全令牌作為所述用戶的身份的證據,其中所述安全令牌包括允許所述安全令牌 的接收方從所述安全令牌訪問所述用戶標識符和所述設備標識符兩者的編程接口。
7.如權利要求1所述的方法,其特征在于,還包括在關聯操作之后將所述用戶標識符與所述設備標識符取消關聯以從所述用戶的可信 設備中移除所述設備。
8.如權利要求1所述的方法,其特征在于,其中提供操作僅在成功驗證所述用戶憑證 和所述設備憑證兩者后提供所述身份的證據,并且還包括如果對所述用戶憑證和所述設備憑證兩者的驗證未成功,那么就拒給所述用戶的身份 的證據。
9.如權利要求1所述的方法,其特征在于,其中所述提供操作僅在成功驗證所述用戶 憑證和所述設備憑證兩者后提供所述身份的證據,并且還包括如果所述用戶憑證被成功驗證而所述設備憑證未被成功驗證,那么阻止所述用戶改變 所述用戶憑證和所述設備憑證的嘗試。
10.如權利要求1所述的方法,其特征在于,其中所述提供操作僅在成功驗證所述用戶 憑證和所述設備憑證兩者后提供所述身份的證據,并且還包括當成功驗證所述用戶憑證但未成功驗證所述設備憑證時,向所述用戶通知使用所述用 戶憑證進行認證的嘗試。
11.如權利要求1所述的方法,其特征在于,其中帳戶網絡資源響應于所述身份的證據 的接收而授予的特權級別取決于所述身份的證據是否指示所述設備憑證的成功驗證。
12.—種具有用于執(zhí)行在帳戶網絡內執(zhí)行對用戶的多因素認證的計算機進程的計算機 可執(zhí)行指令的計算機可讀存儲介質(31),其中所述計算機進程包括接收用戶的用戶憑證(204)和用戶用來訪問帳戶網絡(100)的設備(102)生成的設備 憑證004),所述用戶憑證(204)包括所述用戶的用戶標識符,所述設備憑證(204)包括所 述設備(102)的設備標識符;將所述用戶標識符與所述設備標識符相關聯(206)地記錄在所述帳戶網絡(100)內的 所述用戶的帳戶(106)中,以表示所述用戶和所述設備(102)之間的信任關系; 評估(314)所述用戶憑證(204)和所述設備憑證Q04)以生成驗證結果; 基于所述用戶憑證(204)和所述設備憑證(204)兩者的驗證結果來提供(320)所述用 戶的身份的證據。
13.如權利要求12所述的計算機可讀存儲介質,其特征在于,其中所述用戶的身份的 證據包括所述用戶標識符和所述設備標識符兩者。
14.如權利要求12所述的計算機可讀存儲介質,其特征在于,其中所述關聯操作包括 記錄所述用戶標識符和所述設備標識符以及至少一個其他設備標識符,所述記錄操作將由所述設備標識符和所述至少一個其他設備標識符標識的設備指定為所述用戶的可信 設備。
15.如權利要求12所述的計算機可讀存儲介質,其特征在于,其中所述提供操作包括 生成安全令牌作為所述用戶的身份的證據,其中所述安全令牌包括所述用戶標識符和所述設備標識符兩者。
16.如權利要求12所述的計算機可讀存儲介質,其特征在于,其中所述提供操作包括 生成安全令牌作為所述用戶的身份的證據,其中所述安全令牌包括允許所述安全令牌的接收方從所述安全令牌訪問所述用戶標識符和所述設備標識符兩者的編程接口。
17.如權利要求12所述的計算機可讀存儲介質,其特征在于,其中帳戶網絡資源響應 于所述身份的證據的接收而授予的特權級別取決于所述身份的證據是否指示所述設備憑 證的成功驗證。
18.一種授予用戶用于訪問帳戶網絡資源(110)的特權級別的方法,所述方法包括 從所述用戶正通過其試圖訪問所述帳戶網絡資源(110)的設備(10 接收身份的證據(324);詢問(326)所述身份的證據(324)以確定所述身份的證據是否指示所述帳戶網絡資源 (110)信任的認證提供方(104)對所述用戶的用戶憑證(204)和所述設備(10 的設備憑 證(204)兩者的成功驗證;如果所述身份的證據指示所述認證提供方(104)對所述用戶的用戶憑證(204)和所述 設備(10 的設備憑證(204)兩者的成功驗證,那么就授予(326)第一特權級別;如果所述身份的證據(324)指示所述認證提供者(104)對所述用戶的用戶憑證(204) 或所述設備的設備憑證O04)中任一個的不成功驗證,那么就授予(326)第二特權級別。
19.如權利要求18所述的方法,其特征在于,其中所述第一特權級別高于所述第二特 權級別。
20.如權利要求18所述的方法,其特征在于,其中所述身份的證據包括提供所述帳戶 網絡資源可通過其訪問所述用戶憑證的用戶標識符和所述設備憑證的設備標識符的編程接口的安全令牌。
全文摘要
認證系統(tǒng)將設備憑證驗證與用戶憑證驗證組合以提供方便用戶并且跨企業(yè)邊界有效的更為健壯的認證機制。在一個實現中,用戶憑證驗證和設備憑證驗證被組合以提供方便的雙因素認證。以此方式,帳戶授權服務或其他認證提供方驗證這兩個因素并且依照用戶打算訪問的帳戶網絡資源的安全策略來提供安全令牌。目標帳戶網絡資源授予的特權級別可以根據帳戶授權服務驗證的因素的數目和類型而變化。
文檔編號H04W12/06GK102047709SQ200980121256
公開日2011年5月4日 申請日期2009年5月4日 優(yōu)先權日2008年6月2日
發(fā)明者P-Y·W·翁, R·陳, W-Q(M.)·郭, Y·魯斯科夫 申請人:微軟公司