專利名稱:用于計(jì)算資源預(yù)發(fā)布的安全系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算資源預(yù)發(fā)布,尤其涉及用于計(jì)算資源預(yù)發(fā)布的安全系統(tǒng)。
背景技術(shù):
很多計(jì) 算設(shè)備的創(chuàng)建者構(gòu)建它們以僅僅運(yùn)行非常具體、被良好地定義的計(jì)算資源,諸如在軟件或固件中嵌入的代碼,極大地限制了(包括完全地限制了)終端用戶可在其上運(yùn)行的資源的類(lèi)型和種類(lèi)。這種設(shè)備的某些示例是移動(dòng)設(shè)備和像iPhone 、SonyPlaystation 、Xbox 360 和Windows Phone 7 的游戲控制臺(tái)。維護(hù)對(duì)運(yùn)行在這些系統(tǒng)上的代碼的控制是這些設(shè)備的有效運(yùn)行以及由這些設(shè)備提供的用戶體驗(yàn)的主要部分。向顧客分發(fā)計(jì)算資源的原型或預(yù)發(fā)布的過(guò)程(諸如,用于在軟件或固件中嵌入的升級(jí)或新功能的代碼)的重要部分是對(duì)軟件的正確確認(rèn),該確認(rèn)耗費(fèi)時(shí)間,并且推遲了對(duì)由顧客測(cè)試的新的或改進(jìn)的原型的發(fā)布。例如,創(chuàng)建運(yùn)行在特定類(lèi)型的游戲控制臺(tái)的軟件游戲的一方可能希望預(yù)發(fā)布游戲的不同版本以查看哪個(gè)最受歡迎。在另一個(gè)示例中,一方可能希望使原型升級(jí)盡快可用以跟上競(jìng)爭(zhēng)者的發(fā)布。
發(fā)明內(nèi)容
提供用于由用戶計(jì)算機(jī)系統(tǒng)訪問(wèn)與特權(quán)集相關(guān)聯(lián)的預(yù)發(fā)布計(jì)算資源的技術(shù)。預(yù)發(fā)布計(jì)算資源尚未接收如向公眾的發(fā)布的完全量的確認(rèn)測(cè)試,對(duì)在針對(duì)資源的任何用戶計(jì)算機(jī)系統(tǒng)上運(yùn)行的安全性的期望非常高。預(yù)發(fā)布資源的某些示例是固件、引導(dǎo)代碼、系統(tǒng)管理程序、系統(tǒng)代碼、第三方驅(qū)動(dòng)程序、第三方軟件、或可以在要保護(hù)的用戶計(jì)算機(jī)系統(tǒng)上運(yùn)行的其他軟件的ct (alpha)或β (beta)版本。特權(quán)集包括一組預(yù)發(fā)布資源和具有對(duì)訪問(wèn)該組預(yù)發(fā)布資源的許可或特權(quán)的一組用戶計(jì)算機(jī)系統(tǒng)作為成員。預(yù)發(fā)布資源基于其安全風(fēng)險(xiǎn)級(jí)別與不同的特權(quán)集相關(guān)聯(lián)。用于確定安全風(fēng)險(xiǎn)級(jí)別的因素的某些示例包括,對(duì)存在預(yù)發(fā)布資源的完整性故障風(fēng)險(xiǎn)的用戶計(jì)算機(jī)系統(tǒng)的數(shù)量的限制、受資源影響的用戶計(jì)算機(jī)系統(tǒng)的操作層、以及預(yù)發(fā)布資源成功的安全測(cè)試認(rèn)證級(jí)別。用戶計(jì)算機(jī)系統(tǒng)滿足成員標(biāo)準(zhǔn)以位于特權(quán)集內(nèi)。成員標(biāo)準(zhǔn)的一個(gè)示例是是否已經(jīng)達(dá)到對(duì)集內(nèi)用戶計(jì)算機(jī)系統(tǒng)的數(shù)量的限制。在另一個(gè)示例中,用戶計(jì)算機(jī)系統(tǒng)必須擁有所需的資源,例如系統(tǒng)軟件的一個(gè)版本。另外,特權(quán)集可以位于的較高特權(quán)集內(nèi)的成員授予降低特權(quán)集內(nèi)的成員資格的分層結(jié)構(gòu)。在一個(gè)實(shí)施例中,用于訪問(wèn)與特權(quán)集相關(guān)聯(lián)的預(yù)發(fā)布計(jì)算資源的方法包括向用戶計(jì)算機(jī)系統(tǒng)供應(yīng)特權(quán)集標(biāo)識(shí)符用于特權(quán)集內(nèi)的成員資格。資源所需的特權(quán)集內(nèi)的成員資格基于特權(quán)集標(biāo)識(shí)符以及資源的資源特權(quán)集標(biāo)識(shí)符來(lái)驗(yàn)證。在一個(gè)實(shí)施例中,用戶計(jì)算機(jī)系統(tǒng)包括可訪問(wèn)通信接口和存儲(chǔ)器的處理器。通信接口允許處理器與軟件預(yù)發(fā)布計(jì)算機(jī)系統(tǒng)進(jìn)行通信。存儲(chǔ)器存儲(chǔ)用于將處理器編程為從軟件預(yù)發(fā)布計(jì)算機(jī)系統(tǒng)獲得特權(quán)集標(biāo)識(shí)符并將該標(biāo)識(shí)符存儲(chǔ)到存儲(chǔ)器中的軟件。另外,處理器通過(guò)通信接口下載與特權(quán)集相關(guān)聯(lián)的軟件預(yù)發(fā)布。存儲(chǔ)器還存儲(chǔ)軟件預(yù)發(fā)布。在一個(gè)示例中,軟件預(yù)發(fā)布包括用于基于特權(quán)集標(biāo)識(shí)符對(duì)用戶計(jì)算機(jī)系統(tǒng)具有與該發(fā)布相關(guān)聯(lián)的特權(quán)集內(nèi)的成員資格進(jìn)行驗(yàn)證的代 碼。如果用戶計(jì)算機(jī)系統(tǒng)缺少成員資格,那么軟件預(yù)發(fā)布不再執(zhí)行。技術(shù)提供特權(quán)集的自動(dòng)供應(yīng)的實(shí)施例。特權(quán)集可以位于基于安全風(fēng)險(xiǎn)級(jí)別的分層結(jié)構(gòu)中。在一個(gè)示例中,較高特權(quán)的特權(quán)集在較低特權(quán)集內(nèi)也具有成員資格。在一個(gè)實(shí)施例中,方法包括通過(guò)為資源生成特權(quán)集標(biāo)識(shí)符來(lái)將預(yù)發(fā)布計(jì)算資源與特權(quán)集相關(guān)聯(lián)。響應(yīng)于對(duì)特權(quán)集的成員資格標(biāo)準(zhǔn)的滿足,為用戶計(jì)算機(jī)系統(tǒng)生成授予成員資格的特權(quán)集標(biāo)識(shí)符。將特權(quán)集標(biāo)識(shí)符和預(yù)發(fā)布資源分發(fā)給用戶計(jì)算機(jī)系統(tǒng)。對(duì)于缺少特權(quán)集內(nèi)的成員資格的用戶計(jì)算機(jī)系統(tǒng)來(lái)說(shuō),資源是不可執(zhí)行的。提供本發(fā)明內(nèi)容以便以簡(jiǎn)化的形式介紹將在以下具體實(shí)施方式
中還描述的一些概念。本發(fā)明內(nèi)容并非旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。
圖IA示出了用戶參與游戲的目標(biāo)識(shí)別、分析,和跟蹤系統(tǒng)的示例實(shí)施例。圖IB示出可用于技術(shù)的實(shí)施例可在其中操作的目標(biāo)識(shí)別、分析,和跟蹤系統(tǒng)的示例捕捉設(shè)備的框圖視圖。圖2A示出可以是技術(shù)的實(shí)施例可在其中操作的計(jì)算環(huán)境的用戶計(jì)算機(jī)系統(tǒng)的示例實(shí)施例。圖2B示出可以是技術(shù)的實(shí)施例可在其中操作的計(jì)算環(huán)境的用戶計(jì)算機(jī)系統(tǒng)的另一個(gè)示例實(shí)施例。圖3A示出可執(zhí)行特權(quán)檢查并被存儲(chǔ)在非易失性存儲(chǔ)器中的軟件的操作層的示例。圖3B示出作為軟件預(yù)發(fā)布應(yīng)用程序的一部分被存儲(chǔ)在非易失性存儲(chǔ)器中的特權(quán)檢查軟件的示例。圖3C示出存儲(chǔ)可用于技術(shù)的一個(gè)或多個(gè)實(shí)施例的安全數(shù)據(jù)項(xiàng)的可移動(dòng)存儲(chǔ)介質(zhì)的示例。圖4A示出可包括在特權(quán)集檢查軟件中的軟件組件的示例。圖4B示出可至少部分地包括在已下載的軟件預(yù)發(fā)布中的用于特權(quán)集檢查的軟件的另一個(gè)不例。圖5A示出包括硬件和軟件組件的成員資格授權(quán)計(jì)算機(jī)系統(tǒng)的系統(tǒng)架構(gòu)的示例實(shí)施例。圖5B示出可被包括在成員資格授權(quán)軟件應(yīng)用程序中或由其利用的軟件組件和數(shù)據(jù)項(xiàng)的示例。圖6是用于自動(dòng)地供應(yīng)特權(quán)集的方法的實(shí)施例的流程圖。圖7是用于將資源與特權(quán)集相關(guān)聯(lián)的方法的實(shí)施例的流程圖。圖8是用于向用戶計(jì)算機(jī)系統(tǒng)分發(fā)指示成員資格的特權(quán)集標(biāo)識(shí)符的方法的實(shí)施例的流程圖。圖9是用戶計(jì)算機(jī)系統(tǒng)訪問(wèn)與特權(quán)集相關(guān)聯(lián)的預(yù)發(fā)布計(jì)算資源的方法的實(shí)施例的流程圖。圖10是由用戶計(jì)算機(jī)系統(tǒng)自動(dòng)供應(yīng)以獲得特權(quán)集內(nèi)的成員資格的方法的實(shí)施例的流程圖。 圖11是用于確定從遠(yuǎn)程授權(quán)計(jì)算機(jī)系統(tǒng)接收的特權(quán)集標(biāo)識(shí)符的有效性的方法的實(shí)施例的流程圖。圖12是用于驗(yàn)證與預(yù)發(fā)布資源相關(guān)聯(lián)的特權(quán)集內(nèi)用戶計(jì)算機(jī)系統(tǒng)的成員資格的方法的實(shí)施例的流程圖。圖13是用于確定用戶計(jì)算機(jī)系統(tǒng)與預(yù)發(fā)布資源是否在相同的集內(nèi)共享成員資格的方法的實(shí)施例的流程圖。
具體實(shí)施例方式技術(shù)提供了用于供應(yīng)特權(quán)集以控制與預(yù)發(fā)布計(jì)算資源相關(guān)聯(lián)的安全風(fēng)險(xiǎn)并從快速原型建立獲得益處的安全模型的實(shí)施例。通過(guò)將對(duì)代碼的使用限制在系統(tǒng)的特定集,可在完全省略或使用縮減的驗(yàn)證檢查的風(fēng)險(xiǎn)與允許代碼更盡快地在系統(tǒng)上運(yùn)行的優(yōu)勢(shì)之間維持謹(jǐn)慎的平衡。多種因素構(gòu)成預(yù)發(fā)布資源的安全風(fēng)險(xiǎn)。一個(gè)示例是計(jì)算機(jī)安全問(wèn)題的確認(rèn)測(cè)試水平。在完整性檢查中執(zhí)行若干安全測(cè)試以驗(yàn)證發(fā)布對(duì)安全威脅是有回復(fù)力的。安全測(cè)試的某些示例是威脅建模、筆測(cè)試、模糊測(cè)試,以及數(shù)據(jù)流驗(yàn)證。如果預(yù)發(fā)布資源傳遞特定數(shù)量的測(cè)試或特定類(lèi)型的測(cè)試,那么為該資源分配安全測(cè)試認(rèn)證成功的級(jí)別。該級(jí)別少于完全認(rèn)證,但提供了用于風(fēng)險(xiǎn)評(píng)估的基線。例如,成功的測(cè)試結(jié)果可以使計(jì)算資源有資格進(jìn)行指示避免特定風(fēng)險(xiǎn)的保護(hù)級(jí)別的完整性認(rèn)證。構(gòu)成所分配的安全測(cè)試認(rèn)證成功的級(jí)別的其他因素可以是資源的運(yùn)行尚未被完整地測(cè)試或者尚未在不同的場(chǎng)景中測(cè)試以驗(yàn)證它如預(yù)期運(yùn)行。由于很多安全漏洞來(lái)自不穩(wěn)定的代碼,用戶計(jì)算機(jī)系統(tǒng)中的一般測(cè)試和一般穩(wěn)定性極大地構(gòu)成了該用戶計(jì)算機(jī)系統(tǒng)(例如電話或控制臺(tái))的總體回復(fù)力。黑客可以使用病毒和諸如特洛伊木馬和后門(mén)的惡意程序來(lái)?yè)p害軟件或固件。受損害的資源的風(fēng)險(xiǎn)會(huì)變化,但可以是顯著的。在一個(gè)示例中,受損害的軟件可導(dǎo)致禁用許可檢查,使得盜版版本的軟件可以在計(jì)算機(jī)系統(tǒng)中執(zhí)行。在另一個(gè)示例中,諸如游戲控制臺(tái)的專用計(jì)算機(jī)系統(tǒng)可以被重新用于運(yùn)行未預(yù)期用于該控制臺(tái)的軟件。無(wú)意地依賴于硬件的正確行為、依賴于對(duì)從存儲(chǔ)或網(wǎng)絡(luò)讀取的數(shù)據(jù)的格式化的任何編寫(xiě)得糟糕的代碼可能導(dǎo)致攻擊者所使用的漏洞。此外,硬件的本地用戶可以通過(guò)各種手段來(lái)攻擊諸如用戶控制臺(tái)的用戶計(jì)算機(jī)系統(tǒng)。例如,用戶可以將系統(tǒng)連接到用戶可訪問(wèn)以及非用戶可訪問(wèn)的總線,并且通過(guò)這些總線發(fā)送惡意形成的數(shù)據(jù)。對(duì)硬件的簡(jiǎn)單和復(fù)雜的改變可能導(dǎo)致用戶計(jì)算機(jī)系統(tǒng)接收惡意形成的數(shù)據(jù)。可以直接攻擊硬件存儲(chǔ)器,并且在閃存或驅(qū)動(dòng)器上創(chuàng)建惡意形成的數(shù)據(jù)文件。聯(lián)網(wǎng)設(shè)備甚至可被實(shí)現(xiàn)為影響用戶計(jì)算機(jī)系統(tǒng)的聯(lián)網(wǎng)。例如,可以對(duì)上游路由器以及影響動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP)和域名系統(tǒng)(DNS)協(xié)議的網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)設(shè)備進(jìn)行改變。另一個(gè)風(fēng)險(xiǎn)因素是有多少用戶計(jì)算機(jī)系統(tǒng)將要接收預(yù)發(fā)布資源。換言之,風(fēng)險(xiǎn)池的大小有多少。在少于完全確認(rèn)的資源(例如軟件)中發(fā)現(xiàn)的任何漏洞將因此僅具有與其運(yùn)行的用戶計(jì)算機(jī)系統(tǒng)的數(shù)量成比例的影響,商業(yè)影響以及用戶體驗(yàn)影響。此外,在某些實(shí)施例中,計(jì)算資源越危險(xiǎn)并且應(yīng)用于該資源的有效性檢查越少,該資源被限制于的用戶計(jì)算機(jī)系統(tǒng)的特權(quán)集也越小。技術(shù)提供對(duì)隨觀眾的多少縮放的特權(quán)集的供應(yīng)。另一個(gè)風(fēng)險(xiǎn)因素是將由預(yù)發(fā)布資源改變的用戶計(jì)算機(jī)系統(tǒng)的操作層的功能。例如,在像以下圖2A中討論的多媒體控制臺(tái)100中,使用錯(cuò)誤或一件惡意軟件對(duì)音頻處理單元123中固件驅(qū)動(dòng)器進(jìn)行的預(yù)發(fā)布更新可能干擾3D實(shí)時(shí)游戲應(yīng)用程序的平滑執(zhí)行或用戶體驗(yàn)。盡管這是不期望的,但還不如帶有后門(mén)的新的系統(tǒng)管理程序的軟件預(yù)發(fā)布那么糟,后者使黑客破 壞系統(tǒng)管理程序并由此影響多媒體控制臺(tái)100的大部分的廣泛操作。通過(guò)供應(yīng)預(yù)發(fā)布資源以具有特權(quán)集內(nèi)的成員資格并向用戶計(jì)算機(jī)系統(tǒng)授予那些特權(quán)集內(nèi)的成員資格,技術(shù)提供安全模型,平衡對(duì)免受安全風(fēng)險(xiǎn)的保護(hù)與快速原型建立需求。在大多數(shù)實(shí)施例中,對(duì)具有安全風(fēng)險(xiǎn)級(jí)別的特權(quán)集內(nèi)的成員資格的供應(yīng)和驗(yàn)證獨(dú)立于許可預(yù)發(fā)布資源。換言之,出于安全目的,用戶計(jì)算機(jī)系統(tǒng)可能具有執(zhí)行預(yù)發(fā)布資源的特權(quán),但仍需要獲得執(zhí)行預(yù)發(fā)布的許可證。圖IA提供了當(dāng)前技術(shù)在其中可能有用的上下文示例。圖IA示出了目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)的示例實(shí)施例。目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)10可用來(lái)識(shí)別、分析和/或跟蹤諸如用戶18等的人類(lèi)目標(biāo)。目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)10的各實(shí)施例包括用于執(zhí)行游戲或其他應(yīng)用的計(jì)算環(huán)境12,以及用于從游戲或其他應(yīng)用程序提供音頻和視覺(jué)表示的視聽(tīng)設(shè)備16。系統(tǒng)10還包括用于捕捉3D中的位置和由用戶所執(zhí)行的移動(dòng)的捕捉設(shè)備20,計(jì)算環(huán)境12接收、解釋并使用這些位置和移動(dòng)來(lái)控制游戲或其他應(yīng)用程序。計(jì)算環(huán)境12的實(shí)施例可以包括硬件組件和/或軟件組件,使得計(jì)算系統(tǒng)12可以用于執(zhí)行諸如游戲應(yīng)用程序和非游戲應(yīng)用程序之類(lèi)的應(yīng)用程序。在一個(gè)實(shí)施例中,計(jì)算環(huán)境12可以包括諸如標(biāo)準(zhǔn)化處理器、專用處理器、微處理器等之類(lèi)的處理器,該處理器可以執(zhí)行存儲(chǔ)在處理器可讀存儲(chǔ)設(shè)備上的用于執(zhí)行在此所述的過(guò)程的指令。系統(tǒng)10還包括一個(gè)或多個(gè)捕捉設(shè)備20,用于捕捉與一個(gè)或多個(gè)用戶有關(guān)的圖像數(shù)據(jù)和/或由捕捉設(shè)備感測(cè)到的對(duì)象。在各實(shí)施例中,捕捉設(shè)備20可以用于捕捉與一個(gè)或多個(gè)用戶的移動(dòng)和姿勢(shì)相關(guān)的信息,所述信息被計(jì)算環(huán)境接收并且被用于呈現(xiàn)游戲或其他應(yīng)用程序的各方面、與所述各方面交互和/或控制所述各方面。下面更詳細(xì)地解釋計(jì)算環(huán)境12和捕捉設(shè)備20的示例。目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)10的實(shí)施例可以連接到具有顯示器14的音頻/視覺(jué)設(shè)備16。設(shè)備16例如可以是可以向用戶提供游戲或應(yīng)用程序視覺(jué)和/或音頻的電視機(jī)、監(jiān)視器、高清電視機(jī)(HDTV)等。例如,計(jì)算環(huán)境12可以包括諸如圖形卡之類(lèi)的視頻適配器和/或諸如聲卡之類(lèi)的音頻適配器,這些適配器可提供與游戲或其他應(yīng)用程序相關(guān)聯(lián)的音頻/視覺(jué)信號(hào)。音頻/視覺(jué)設(shè)備16可以從計(jì)算環(huán)境12接收音頻/視覺(jué)信號(hào),并且然后可以向用戶18輸出與該音頻/視覺(jué)信號(hào)相關(guān)聯(lián)的游戲或應(yīng)用程序視覺(jué)和/或音頻。根據(jù)一個(gè)實(shí)施例,音頻/視覺(jué)設(shè)備16可以通過(guò)例如S-視頻電纜、同軸電纜、HDMI電纜、DVI電纜、VGA電纜、分量視頻電纜等等連接到計(jì)算環(huán)境12。在示例實(shí)施例中,在計(jì)算環(huán)境12中執(zhí)行的應(yīng)用程序可以是帶有實(shí)時(shí)交互的游戲,諸如用戶18正在播放的拳擊游戲。例如,計(jì)算環(huán)境12可使用視聽(tīng)設(shè)備16來(lái)向用戶18提供拳擊對(duì)手22的視覺(jué)表示。計(jì)算環(huán)境12還可使用視聽(tīng)設(shè)備16來(lái)提供用戶18可通過(guò)他的或她的移動(dòng)來(lái)控制的玩家化身24的視覺(jué)表示。例如,用戶18可在物理空間中揮拳猛擊,這使得玩家化身24在游戲空間中揮拳猛擊。由此,根據(jù)示例實(shí)施例,捕捉設(shè)備20使用此處描述的技術(shù)來(lái)捕捉物理空間中重拳的3D表示。捕捉設(shè)備20中的處理器(參見(jiàn)圖1B)和目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)10的計(jì)算環(huán)境12可用于識(shí)別并分析用戶18在物理空間中的重拳,從而使得該重拳可被實(shí)時(shí)地解釋為對(duì)游戲空間中的玩家化身24的姿勢(shì)或游戲控制。
圖IB示出了可以在目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)10中使用的捕捉設(shè)備20的示例的框圖視圖。在示例實(shí)施例中,捕捉設(shè)備20可以被配置為經(jīng)由任何合適的技術(shù)來(lái)捕捉具有可以包括深度值的深度圖像的視頻,這些技術(shù)包括例如飛行時(shí)間、結(jié)構(gòu)化光、立體圖像等。根據(jù)一個(gè)實(shí)施例,捕捉設(shè)備20可將所計(jì)算的深度信息組織為“Z層”,或與從深度相機(jī)沿其視線延伸的Z軸垂直的層。如圖IB所示,根據(jù)示例實(shí)施例,圖像相機(jī)組件22可包括可用于捕捉場(chǎng)景的深度圖像的IR光組件24、三維(3-D)相機(jī)26、和RGB相機(jī)28。例如,在飛行時(shí)間分析中,捕捉設(shè)備20的IR光組件24可以將紅外光發(fā)射到場(chǎng)景上,并且然后可使用相機(jī)26和/或28的光敏面上的傳感器來(lái)感測(cè)從場(chǎng)景中的一個(gè)或多個(gè)目標(biāo)和對(duì)象的表面反向散射的光。在示例實(shí)施例中,捕捉設(shè)備20還可以包括可與圖像相機(jī)組件22進(jìn)行可操作的通信的處理器32。處理器32可包括標(biāo)準(zhǔn)化處理器、專用處理器、微處理器等,它們可執(zhí)行用于接收深度圖像、判斷合適的目標(biāo)是否可被包括在深度圖像中、將合適的目標(biāo)轉(zhuǎn)換為目標(biāo)的骨架表示或模型的指令,或任何其他適合的指令。捕捉設(shè)備20還可以包括存儲(chǔ)器組件34,該存儲(chǔ)器組件34可以存儲(chǔ)可以由處理器32執(zhí)行的指令、由3-D相機(jī)或RGB相機(jī)捕捉到的圖像或圖像的幀、或任何其他合適的信息、圖像等等。根據(jù)一個(gè)示例實(shí)施例,存儲(chǔ)器組件34可包括隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、高速緩存、閃存、硬盤(pán)或任何其他合適的存儲(chǔ)組件。如圖IB所示,在一個(gè)實(shí)施例中,存儲(chǔ)器組件34可以是與圖像相機(jī)組件22和處理器32進(jìn)行通信的分開(kāi)的組件。根據(jù)另一個(gè)實(shí)施例,存儲(chǔ)器組件34可以集成到處理器32和/或圖像相機(jī)組件22中。如圖IB所示,捕獲設(shè)備20可以經(jīng)由通信鏈路36與計(jì)算環(huán)境12通信。通信鏈路36可以是包括例如USB連接、火線連接、以太網(wǎng)線纜連接之類(lèi)的有線連接和/或諸如無(wú)線802. Ilb,802. Hg,802. Ila或802. Iln連接之類(lèi)的無(wú)線連接。另外,捕捉設(shè)備20可以通過(guò)通信鏈路36向計(jì)算環(huán)境12提供深度信息和由例如3-D相機(jī)26和/或RGB相機(jī)28捕捉到的圖像,以及可以由捕捉設(shè)備20生成的骨架模型。存在用于判斷由捕捉設(shè)備20檢測(cè)到的目標(biāo)或?qū)ο笫欠衽c人類(lèi)目標(biāo)相對(duì)應(yīng)的各種已知技術(shù)。骨架映射技術(shù)可隨后用于確定該用戶的骨架上的各個(gè)人體部分。其他技術(shù)包括將圖像轉(zhuǎn)換為人的人體模型表示以及將圖像轉(zhuǎn)換為人的網(wǎng)格模型表示。骨架模型然后可被提供給計(jì)算環(huán)境12,使得計(jì)算環(huán)境可跟蹤骨架模型并呈現(xiàn)與該骨架模型相關(guān)聯(lián)的化身。在姿勢(shì)識(shí)別引擎軟件190的控制下,計(jì)算環(huán)境12還可基于,例如從骨架模型的各部分的三維移動(dòng)中已經(jīng)識(shí)別出的用戶的姿勢(shì),來(lái)確定在計(jì)算機(jī)環(huán)境上執(zhí)行的應(yīng)用程序中要執(zhí)行哪些控制命令。圖2A示出了可以是用于像圖IA和IB中所示的目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)中使用的計(jì)算環(huán)境的用戶計(jì)算機(jī)系統(tǒng)的示例實(shí)施例。計(jì)算環(huán)境12可以是諸如游戲控制臺(tái)的多媒體控制臺(tái)100。如圖2A所示,多媒體控制臺(tái)100包括具有一級(jí)高速緩存102、二級(jí)高速緩存104和閃存ROM 106的中央處理單元(CPU) 101。一級(jí)高速緩存102和二級(jí)高速緩存104臨時(shí)存儲(chǔ)數(shù)據(jù)并因此減少存儲(chǔ)器訪問(wèn)周期數(shù),由此改進(jìn)處理速度和吞吐量。CPU 101可以設(shè)置成具有一個(gè)以上的內(nèi)核,以及由此的附加的一級(jí)和二級(jí)高速緩存102和104。閃存R0M106可存儲(chǔ)在多媒體控制臺(tái)100通電時(shí)引導(dǎo)過(guò)程的初始階段期間加載的可執(zhí)行代碼。圖形處理單元(GPU) 108和 視頻編碼器/視頻編解碼器(編碼器/解碼器)114形成用于高速、高分辨率圖形處理的視頻處理流水線。數(shù)據(jù)經(jīng)由總線從GPU108傳送到視頻編碼器/視頻編解碼器114。視頻處理流水線向A/V(音頻/視頻)端口 140輸出數(shù)據(jù),以便傳輸?shù)诫娨暀C(jī)或其他顯示器。存儲(chǔ)器控制器110連接到GPU 108,以便于處理器對(duì)各種類(lèi)型的存儲(chǔ)器112、諸如但不限于RAM的訪問(wèn)。多媒體控制臺(tái)100包括優(yōu)選地在模塊118上實(shí)現(xiàn)的I/O控制器120、系統(tǒng)管理控制器122、音頻處理單元123、網(wǎng)絡(luò)接口控制器124、第一 USB主控制器126、第二 USB主控制器128以及前面板I/O子部件130。USB控制器126和128用作外圍控制器142 (I)-142 (2)、無(wú)線適配器148、和外置存儲(chǔ)器設(shè)備146 (例如閃存、外置⑶/DVD ROM驅(qū)動(dòng)器、可移動(dòng)介質(zhì)等)的主機(jī)。網(wǎng)絡(luò)接口 124和/或無(wú)線適配器148提供對(duì)網(wǎng)絡(luò)(例如,因特網(wǎng)、家庭網(wǎng)絡(luò)等)的訪問(wèn),并且可以是包括以太網(wǎng)卡、調(diào)制解調(diào)器、藍(lán)牙模塊、電纜調(diào)制解調(diào)器等的各種不同的有線或無(wú)線適配器組件中任何一種。提供系統(tǒng)存儲(chǔ)器143來(lái)存儲(chǔ)在引導(dǎo)過(guò)程期間加載的應(yīng)用程序數(shù)據(jù)。提供媒體驅(qū)動(dòng)器144,該媒體驅(qū)動(dòng)器可以包括DVD/CD驅(qū)動(dòng)器、硬盤(pán)驅(qū)動(dòng)器,或其他可移動(dòng)媒體驅(qū)動(dòng)器等。媒體驅(qū)動(dòng)器144可以內(nèi)置或外置于多媒體控制臺(tái)100。應(yīng)用數(shù)據(jù)可經(jīng)由媒體驅(qū)動(dòng)器144訪問(wèn),以由多媒體控制臺(tái)100執(zhí)行、回放等。介質(zhì)驅(qū)動(dòng)器144經(jīng)由諸如串行ATA總線或其他高速連接(例如IEEE 1394)等總線連接到I/O控制器120。系統(tǒng)管理控制器122提供涉及確保多媒體控制臺(tái)100的可用性的各種服務(wù)功能。音頻處理單元123和音頻編解碼器132形成具有高保真度和立體聲處理的對(duì)應(yīng)的音頻處理流水線。音頻數(shù)據(jù)經(jīng)由通信鏈路在音頻處理單元123與音頻編解碼器132之間傳輸。音頻處理流水線將數(shù)據(jù)輸出到A/V端口 140以供外置音頻播放器或具有音頻能力的設(shè)備再現(xiàn)。前面板I/O子部件130支持暴露在多媒體控制臺(tái)100的外表面上的電源按鈕150和彈出按鈕152以及任何LED(發(fā)光二極管)或其他指示器的功能。系統(tǒng)供電模塊136向多媒體控制臺(tái)100的組件供電。風(fēng)扇138冷卻多媒體控制臺(tái)100內(nèi)的電路。CPU IOU GPU 108、存儲(chǔ)器控制器110、和多媒體控制臺(tái)100內(nèi)的各個(gè)其他組件經(jīng)由一條或多條總線互連,包括串行和并行總線、存儲(chǔ)器總線、外圍總線、和使用各種總線架構(gòu)中任一種的處理器或局部總線。作為示例,這些架構(gòu)可以包括外圍部件互連(PCI)總線、PCI-Express 總線等。當(dāng)多媒體控制臺(tái)100通電時(shí),應(yīng)用數(shù)據(jù)可從系統(tǒng)存儲(chǔ)器143加載到存儲(chǔ)器112和/或高速緩存102、104中并在CPU 101上執(zhí)行。應(yīng)用程序可呈現(xiàn)在導(dǎo)航到多媒體控制臺(tái)100上可用的不同媒體類(lèi)型時(shí)提供一致的用戶體驗(yàn)的圖形用戶界面。在操作中,媒體驅(qū)動(dòng)器144中包含的應(yīng)用和/或其他媒體可從媒體驅(qū)動(dòng)器144啟動(dòng)或播放,以向多媒體控制臺(tái)100提供附加功能。ROM 106、高速緩存102、104、存儲(chǔ)器112、系統(tǒng)存儲(chǔ)器143、存儲(chǔ)器單元146和介質(zhì)驅(qū)動(dòng)器是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的示例,還在下面對(duì)其進(jìn)行討論。
多媒體控制臺(tái)100可通過(guò)將該系統(tǒng)簡(jiǎn)單地連接到電視機(jī)或其他顯示器而作為獨(dú)立系統(tǒng)來(lái)操作。在該獨(dú)立模式中,多媒體控制臺(tái)100允許一個(gè)或多個(gè)用戶與該系統(tǒng)交互、看電影、或聽(tīng)音樂(lè)。然而,隨著通過(guò)網(wǎng)絡(luò)接口 124或無(wú)線適配器148可用的寬帶連接的集成,多媒體控制臺(tái)100還可作為較大網(wǎng)絡(luò)社區(qū)中的參與者來(lái)操作。當(dāng)多媒體控制臺(tái)100通電時(shí),可以保留設(shè)定量的硬件資源以供多媒體控制臺(tái)操作系統(tǒng)作系統(tǒng)使用。這些資源可包括存儲(chǔ)器的保留量(諸如,16MB)、CPU和GPU周期的保留量(諸如,5% )、網(wǎng)絡(luò)帶寬的保留量(諸如,8kbs),等等。因?yàn)檫@些資源是在系統(tǒng)引導(dǎo)時(shí)間保留的,所保留的資源對(duì)于應(yīng)用視角而言是不存在的。 具體而言,存儲(chǔ)器保留優(yōu)選地足夠大,以包含啟動(dòng)內(nèi)核、并發(fā)系統(tǒng)應(yīng)用程序和驅(qū)動(dòng)程序。CPU保留優(yōu)選地為恒定,使得若所保留的CPU用量不被系統(tǒng)應(yīng)用使用,則空閑線程將消耗任何未使用的周期。對(duì)于GPU保留,通過(guò)使用GPU中斷來(lái)調(diào)度代碼來(lái)將彈出窗口呈現(xiàn)為覆蓋圖以顯示由系統(tǒng)應(yīng)用程序生成的輕量消息(例如,彈出窗口)。覆蓋圖所需的存儲(chǔ)器量取決于覆蓋區(qū)域大小,并且覆蓋圖優(yōu)選地與屏幕分辨率成比例縮放。在完整的用戶界面被并發(fā)系統(tǒng)應(yīng)用使用的情況下,優(yōu)選地使用獨(dú)立于應(yīng)用分辨率的分辨率。定標(biāo)器可用于設(shè)置該分辨率,從而無(wú)需改變頻率并引起TV重新同步。在多媒體控制臺(tái)100引導(dǎo)且系統(tǒng)資源被保留之后,就執(zhí)行并發(fā)系統(tǒng)應(yīng)用來(lái)提供系統(tǒng)功能。系統(tǒng)功能被封裝在上述所保留的系統(tǒng)資源中執(zhí)行的一組系統(tǒng)應(yīng)用中。操作系統(tǒng)內(nèi)核標(biāo)識(shí)是系統(tǒng)應(yīng)用程序線程而非游戲應(yīng)用程序線程的線程。系統(tǒng)應(yīng)用程序優(yōu)選地被調(diào)度為在預(yù)定時(shí)間并以預(yù)定時(shí)間間隔在CPU 101上運(yùn)行,以便為應(yīng)用程序提供一致的系統(tǒng)資源視圖。進(jìn)行調(diào)度是為了把由在控制臺(tái)上運(yùn)行的游戲應(yīng)用程序所引起的高速緩存中斷最小化。當(dāng)并發(fā)系統(tǒng)應(yīng)用程序需要音頻時(shí),則由于時(shí)間敏感性而將音頻處理異步地調(diào)度給游戲應(yīng)用程序。多媒體控制臺(tái)應(yīng)用程序管理器(如下所述)在系統(tǒng)應(yīng)用程序活動(dòng)時(shí)控制游戲應(yīng)用程序的音頻水平(例如,靜音、衰減)。輸入設(shè)備(例如,控制器142(1)和142(2))由游戲應(yīng)用程序和系統(tǒng)應(yīng)用程序共享。輸入設(shè)備不是保留資源,而是在系統(tǒng)應(yīng)用程序和游戲應(yīng)用程序之間切換以使其各自具有設(shè)備的焦點(diǎn)。應(yīng)用程序管理器優(yōu)選地控制輸入流的切換,而無(wú)需知道游戲應(yīng)用程序的知識(shí),并且驅(qū)動(dòng)程序維護(hù)關(guān)于焦點(diǎn)切換的狀態(tài)信息。相機(jī)26、28和捕捉設(shè)備20可為控制臺(tái)100定義額外的輸入設(shè)備。圖2B示出了可以是包括個(gè)人計(jì)算機(jī)的計(jì)算環(huán)境210的用戶計(jì)算機(jī)系統(tǒng)的另一個(gè)示例實(shí)施例,計(jì)算環(huán)境210可以是用于像圖1A-1B中所示的目標(biāo)識(shí)別、分析和跟蹤系統(tǒng)10的計(jì)算環(huán)境12。計(jì)算系統(tǒng)環(huán)境210只是合適的計(jì)算環(huán)境的一個(gè)示例,并且不旨在對(duì)所公開(kāi)的主題的使用范圍或功能提出任何限制。也不應(yīng)該將計(jì)算環(huán)境210解釋為對(duì)示例性操作環(huán)境210中示出的任一組件或其組合有任何依賴性或要求。參考圖2B,用于實(shí)現(xiàn)本技術(shù)的一個(gè)示例系統(tǒng)包括計(jì)算機(jī)210形式的通用計(jì)算設(shè)備。計(jì)算機(jī)210的組件可以包括,但不僅限于,處理單元220、系統(tǒng)存儲(chǔ)器230,以及將包括系統(tǒng)存儲(chǔ)器的各種系統(tǒng)組件耦合到處理單元220的系統(tǒng)總線221。系統(tǒng)總線221可以是若干類(lèi)型的總線結(jié)構(gòu)中的任一種,包括使用各種總線體系結(jié)構(gòu)中的任一種的存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線、以及局部總線。作為示例而非限制,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、增強(qiáng)型ISA(EISA)總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(VESA)局部總線,以及也稱為夾層總線的外圍部件互連(PCI)總線。
計(jì)算機(jī)210通常包括各種計(jì)算機(jī)可讀介質(zhì)。計(jì)算機(jī)可讀介質(zhì)可以是能由計(jì)算機(jī)210訪問(wèn)的任何可用介質(zhì),而且包含易失性和非易失性介質(zhì)、可移動(dòng)和不可移動(dòng)介質(zhì)。作為示例而非限制,計(jì)算機(jī)可讀介質(zhì)可包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括以用于存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)等信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動(dòng)和不可移動(dòng)介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括,但不限于,RAM、ROM、EEPR0M、閃存或其它存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能盤(pán)(DVD)或其它光盤(pán)存儲(chǔ)、記憶棒或存儲(chǔ)卡、磁帶盒、磁帶、磁盤(pán)存儲(chǔ)或其它磁性存儲(chǔ)設(shè)備、或能用于存儲(chǔ)所需信息且可以由計(jì)算機(jī)210訪問(wèn)的任何其它介質(zhì)。通信介質(zhì)通常以諸如載波或其他傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號(hào)來(lái)體現(xiàn)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù),并包括任意信息傳送介質(zhì)。術(shù)語(yǔ)“已調(diào)制數(shù)據(jù)信號(hào)”是指具有以在信號(hào)中編碼信息的方式被設(shè)定或改變其一個(gè)或多個(gè)特征的信號(hào)。作為示例而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線連接之類(lèi)的有線介質(zhì),以及諸如聲學(xué)、RF、紅外及其他無(wú)線介質(zhì)之類(lèi)的無(wú)線介質(zhì)。上述中任一組合也應(yīng)包括在計(jì)算機(jī)可讀介質(zhì)的范圍之內(nèi)。系統(tǒng)存儲(chǔ)器230包括易失性和/或非易失性存儲(chǔ)器形式的計(jì)算機(jī)存儲(chǔ)介質(zhì),如只讀存儲(chǔ)器(ROM) 231和隨機(jī)存取存儲(chǔ)器(RAM) 232。基本輸入/輸出系統(tǒng)233 (BIOS)包含諸如在啟動(dòng)期間幫助在計(jì)算機(jī)210內(nèi)的元件之間傳輸信息的基本例程,基本輸入/輸出系統(tǒng)(BIOS)通常儲(chǔ)存儲(chǔ)在ROM 231中。RAM 232通常包含處理單元220可立即訪問(wèn)和/或目前正在運(yùn)行的數(shù)據(jù)和/或程序模塊。作為示例而非限制,圖2B示出操作系統(tǒng)234、應(yīng)用程序235、其它程序模塊236和程序數(shù)據(jù)237。計(jì)算機(jī)210也可以包括其他可移動(dòng)/不可移動(dòng)、易失性/非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)。僅作為示例,圖2B示出了從不可移動(dòng)、非易失性磁介質(zhì)中讀取或向其寫(xiě)入的硬盤(pán)驅(qū)動(dòng)器240,從可移動(dòng)、非易失性磁盤(pán)252中讀取或向其寫(xiě)入的磁盤(pán)驅(qū)動(dòng)器251,非易失性磁盤(pán)252、以及從諸如CD ROM或其它光學(xué)介質(zhì)等可移動(dòng)、非易失性光盤(pán)256中讀取或向其寫(xiě)入的光盤(pán)驅(qū)動(dòng)器255。另外,圖2B示出了從可移動(dòng)的記憶棒254或可移動(dòng)的存儲(chǔ)卡254中讀取或向其寫(xiě)入的可移動(dòng)介質(zhì)驅(qū)動(dòng)器253。在某些示例中,存儲(chǔ)卡可以是閃存卡或棒??梢栽谑纠圆僮鳝h(huán)境中使用的其它可移動(dòng)/不可移動(dòng)、易失性/非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)包括但不限于,磁帶盒、閃存、數(shù)字多功能盤(pán)、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等。硬盤(pán)驅(qū)動(dòng)器241通常由例如接口 240等不可移動(dòng)存儲(chǔ)器接口連接至系統(tǒng)總線221,而磁盤(pán)驅(qū)動(dòng)器251、可移動(dòng)介質(zhì)驅(qū)動(dòng)器253和光盤(pán)驅(qū)動(dòng)器255通常由例如接口 250等可移動(dòng)存儲(chǔ)器接口連接至系統(tǒng)總線221。以上描述和圖2B中示出的驅(qū)動(dòng)器及其關(guān)聯(lián)計(jì)算機(jī)存儲(chǔ)介質(zhì)為計(jì)算機(jī)210提供了計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲(chǔ)。例如在圖2B中,硬盤(pán)驅(qū)動(dòng)器241被示為存儲(chǔ)操作系統(tǒng)244、應(yīng)用程序245、其它程序模塊246和程序數(shù)據(jù)247。注意,這些組件可以與操作系統(tǒng)234、應(yīng)用程序235、其他程序模塊236和程序數(shù)據(jù)237相同,也可以與它們不同。在此操作系統(tǒng)244、應(yīng)用程序245、其他程序模塊246以及程序數(shù)據(jù)247被給予了不同的編號(hào),以說(shuō)明至少它們是不同的副本。用戶可以通過(guò)輸入設(shè)備,例如鍵盤(pán)262和指向設(shè)備261——通常是指鼠標(biāo)、跟蹤球或觸摸墊——向計(jì)算機(jī)210輸入命令和信息。其他輸入設(shè)備(未示出)可包括話筒、操縱桿、游戲手柄、圓盤(pán)式衛(wèi)星天線、掃描儀等。這些和其他輸入設(shè)備通常通過(guò)耦合至系統(tǒng)總線的用戶輸入接口 260連接至處理單元220,但也可以由其他接口和總線結(jié)構(gòu),例如并行端口、游戲端口或通用串行總線(USB)來(lái)連接。監(jiān)視器291或其他類(lèi)型的顯示設(shè)備也通過(guò)諸如視頻接口 290之類(lèi)的接口連接至系統(tǒng)總線221。除監(jiān)視器之外,計(jì)算機(jī)還可以包括可以通過(guò)輸出外圍接口 295連接的諸如揚(yáng)聲器297和打印機(jī)296之類(lèi)的其他外圍輸出設(shè)備。計(jì)算機(jī)210可以使用到一個(gè)或多 個(gè)遠(yuǎn)程計(jì)算機(jī)(如遠(yuǎn)程計(jì)算機(jī)280)的邏輯連接,以在聯(lián)網(wǎng)環(huán)境中運(yùn)行。遠(yuǎn)程計(jì)算機(jī)280可以是個(gè)人計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對(duì)等設(shè)備或其它常見(jiàn)的網(wǎng)絡(luò)節(jié)點(diǎn),并且通常包括以上就計(jì)算機(jī)210描述的元件中多個(gè)或全部,雖然在圖2B中僅僅示出了存儲(chǔ)器存儲(chǔ)設(shè)備281。在圖2B中所描繪的邏輯連接包括局域網(wǎng)(LAN)271和廣域網(wǎng)(WAN) 273,但是也可以包括其它網(wǎng)絡(luò)。這些聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是常見(jiàn)的。當(dāng)用于LAN網(wǎng)絡(luò)環(huán)境中時(shí),計(jì)算機(jī)210通過(guò)網(wǎng)絡(luò)接口或適配器270連接到LAN271。當(dāng)在WAN聯(lián)網(wǎng)環(huán)境中使用時(shí),計(jì)算機(jī)210通常包括調(diào)制解調(diào)器272或用于通過(guò)諸如因特網(wǎng)等WAN 273建立通信的其他手段。調(diào)制解調(diào)器272,可以是內(nèi)置的或外置的,可以經(jīng)由用戶輸入接口 260或其他適當(dāng)?shù)臋C(jī)制,連接到系統(tǒng)總線221。在聯(lián)網(wǎng)環(huán)境中,相對(duì)于計(jì)算機(jī)210所描述的程序模塊或其部分可被存儲(chǔ)在遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備中。作為示例而非限制,圖2B示出駐留在存儲(chǔ)器設(shè)備281上的遠(yuǎn)程應(yīng)用程序285。應(yīng)當(dāng)理解,所示的網(wǎng)絡(luò)連接是示例性的,并且可使用在計(jì)算機(jī)之間建立通信鏈路的其他手段。圖3A至5B示出了可以存在于授予特權(quán)集內(nèi)的成員資格的計(jì)算機(jī)系統(tǒng)中或者有可能是特權(quán)集的一部分的用戶計(jì)算機(jī)系統(tǒng)上的軟件模塊或軟件子組件的某些示例。如下所述,對(duì)于模塊、例程、特征、屬性、方法和其他方面的具體命名和劃分并非是強(qiáng)制性的,并且實(shí)現(xiàn)本技術(shù)或其特征的機(jī)制可具有不同的名稱、劃分和/或格式。用于供應(yīng)并驗(yàn)證特權(quán)集內(nèi)的成員資格的軟件或固件可以位于計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)操作層,因?yàn)椴煌念A(yù)發(fā)布資源是在計(jì)算機(jī)系統(tǒng)的啟動(dòng)和運(yùn)行的不同時(shí)間點(diǎn)被加載和識(shí)別的。并非所有操作層都可以訪問(wèn)計(jì)算機(jī)系統(tǒng)的全部存儲(chǔ)器位置。例如,在諸如圖2A中多媒體控制臺(tái)100的用戶計(jì)算機(jī)系統(tǒng)的一個(gè)架構(gòu)中,引導(dǎo)軟件無(wú)法在引導(dǎo)過(guò)程中訪問(wèn)諸如媒體驅(qū)動(dòng)器144的硬盤(pán),因此引導(dǎo)軟件加載的用于檢查或供應(yīng)對(duì)資源的特權(quán)的軟件必須存儲(chǔ)在引導(dǎo)軟件可訪問(wèn)的存儲(chǔ)器中。例如,特權(quán)檢查或供應(yīng)代碼可以是引導(dǎo)軟件本身的部分。此外,諸如唯一標(biāo)識(shí)符、特權(quán)集標(biāo)識(shí)符以及特權(quán)集密鑰的數(shù)據(jù)項(xiàng)還可以在不同的操作層是可訪問(wèn)的,以便那些層中的特權(quán)檢查軟件對(duì)其進(jìn)行訪問(wèn),該特權(quán)集密鑰用作對(duì)請(qǐng)求或檢查訪問(wèn)預(yù)發(fā)布資源的特權(quán)的不同的實(shí)現(xiàn)示例的部分。另外,對(duì)引導(dǎo)軟件的預(yù)發(fā)布可能需要經(jīng)由諸如記憶棒、閃存卡、DVD或⑶的可移動(dòng)存儲(chǔ)介質(zhì)來(lái)加載。特權(quán)檢查軟件的多個(gè)副本可以存在于用戶計(jì)算機(jī)系統(tǒng)中的各個(gè)存儲(chǔ)器位置,取決于哪個(gè)操作層、引導(dǎo)、系統(tǒng)管理程序、系統(tǒng)或應(yīng)用程序可能在進(jìn)行特權(quán)檢查或供應(yīng)。圖3A示出了在示例性非易失性存儲(chǔ)器302 (此示例中是閃存)中存儲(chǔ)的操作層的示例。存儲(chǔ)器302表示可位于計(jì)算機(jī)系統(tǒng)的不同區(qū)域的非易失性存儲(chǔ)器。例如,圖2A的多媒體控制臺(tái)100示例中的引導(dǎo)軟件312可被存儲(chǔ)在R0M106中,或者如圖2B的計(jì)算機(jī)210示例中ROM 231中的BIOS 233所示。引導(dǎo)軟件312包括軟件310b,為方便引用起見(jiàn)僅指特權(quán)集檢查軟件。對(duì)于引導(dǎo)軟件本身或系統(tǒng)管理程序、操作系統(tǒng)或引導(dǎo)軟件可能加載的其他系統(tǒng)軟件的更新,特權(quán)集檢查軟件301b可以獲得特權(quán)集內(nèi)的成員資格,并且在加載這種軟件以執(zhí)行之前對(duì)該成員資格進(jìn)行驗(yàn)證。 單獨(dú)的計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)唯一標(biāo)識(shí)符319也存儲(chǔ)在存儲(chǔ)器302中,以便甚至在引導(dǎo)軟件層訪問(wèn)。密鑰保險(xiǎn)庫(kù)318也存儲(chǔ)在存儲(chǔ)器302中,該密鑰保險(xiǎn)庫(kù)在計(jì)算機(jī)(100,210)的制造中包括像制造商的密鑰的密鑰集、對(duì)用戶計(jì)算機(jī)系統(tǒng)唯一的一個(gè)或多個(gè)密鑰、以及可隨后被上載的其他密鑰。特權(quán)集標(biāo)識(shí)符320也存儲(chǔ)在存儲(chǔ)器302中,該標(biāo)識(shí)符指示用戶計(jì)算機(jī)系統(tǒng)(100、210)是哪些特權(quán)集的一個(gè)或多個(gè)中的成員。在一個(gè)示例中,特權(quán)集標(biāo)識(shí)符是位字段,并且被設(shè)置為特定值的一個(gè)或多個(gè)位可用于指示集成員資格。在位字段的示例中,可以使用掩碼來(lái)方便地更新集成員資格以訪問(wèn)預(yù)發(fā)布資源,而不會(huì)干擾位字段中所指示的其他成員資格。特權(quán)集標(biāo)識(shí)符可以受到一個(gè)或多個(gè)安全特征的保護(hù)。例如,特權(quán)集標(biāo)識(shí)符可以與受到密碼地完整性保護(hù)的軟件數(shù)據(jù)和/或代碼包括在一起。在另一個(gè)示例中,特權(quán)集標(biāo)識(shí)符320可被存儲(chǔ)在受保護(hù)的非易失性存儲(chǔ)器中。在另一個(gè)示例中,可以使用包括特權(quán)的用戶計(jì)算機(jī)系統(tǒng)的特定實(shí)例的受密碼地保護(hù)的證書(shū)(例如,非對(duì)稱簽名)。受保護(hù)的非易失性存儲(chǔ)器的示例是僅可由系統(tǒng)管理程序訪問(wèn)的存儲(chǔ)器。該實(shí)施例中的軟件的其他操作層包括存儲(chǔ)在非易失性存儲(chǔ)器(例如,圖2A的ROM106)中的系統(tǒng)管理程序314,引導(dǎo)軟件312可使該系統(tǒng)管理程序由處理器101來(lái)執(zhí)行,或者可以在其他示例中加載到系統(tǒng)存儲(chǔ)器143中。系統(tǒng)管理程序有時(shí)被稱為虛擬機(jī)管理器,該虛擬機(jī)管理器控制對(duì)處理器和資源(例如存儲(chǔ)器)的分配。系統(tǒng)管理程序可以允許多個(gè)操作系統(tǒng)共享單個(gè)硬件,并且控制操作系統(tǒng)之間的資源的分配。如所示的,系統(tǒng)管理程序314還可以具有特權(quán)集檢查軟件310h的一個(gè)版本,該特權(quán)集檢查軟件供應(yīng)并檢查用于該系統(tǒng)管理程序可能加載的軟件的預(yù)發(fā)布版本或更新的特權(quán)。類(lèi)似地,系統(tǒng)軟件316還可具有特權(quán)集檢查軟件310s的一個(gè)版本,以在系統(tǒng)軟件316加載軟件應(yīng)用程序時(shí)執(zhí)行。系統(tǒng)軟件316的一個(gè)示例是也可存儲(chǔ)在ROM 106中并由引導(dǎo)軟件312或系統(tǒng)管理程序314加載到系統(tǒng)存儲(chǔ)器143中的內(nèi)核。系統(tǒng)軟件316和系統(tǒng)管理程序314可以訪問(wèn)可存儲(chǔ)在磁盤(pán)(參見(jiàn)圖3B)上而非ROM或閃存中的特權(quán)集標(biāo)識(shí)符320或特權(quán)集密鑰326。系統(tǒng)管理程序314和系統(tǒng)軟件316可以訪問(wèn)硬盤(pán),諸如圖2A中的媒體驅(qū)動(dòng)器144或者圖2B中的存儲(chǔ)器接口 241。另外,其他磁盤(pán)可以由系統(tǒng)管理程序314和系統(tǒng)軟件316經(jīng)由諸如圖2A中的USB控制器128或經(jīng)由圖2B中的非易失性存儲(chǔ)器接口 250來(lái)訪問(wèn)。在某些示例中,“閃存版本”可用于指包括引導(dǎo)軟件、系統(tǒng)管理程序和系統(tǒng)軟件的軟件的版本。預(yù)發(fā)布軟件通常是應(yīng)用程序(例如游戲應(yīng)用程序)的更新、修復(fù)或增強(qiáng)。作為預(yù)發(fā)布軟件的一部分的軟件和數(shù)據(jù)項(xiàng)在為應(yīng)用程序被下載時(shí)可在繼續(xù)執(zhí)行之前執(zhí)行至少部分的特權(quán)檢查。圖3B示出作為軟件預(yù)發(fā)布應(yīng)用程序322的一部分被存儲(chǔ)在非易失性存儲(chǔ)器304中的特權(quán)檢查軟件310a的示例。在該示例中,存儲(chǔ)器304是硬盤(pán),但也可以存儲(chǔ)在可移動(dòng)介質(zhì)上。應(yīng)用程序預(yù)發(fā)布軟件322也可以被下載,并且包括特權(quán)集檢查軟件310a的至少一部分。特權(quán)集標(biāo)識(shí)符320和至少一個(gè)特權(quán)集密鑰326也存儲(chǔ)在非易失性存儲(chǔ)器304中。如以下將更詳細(xì)地討論的,某些實(shí)施例使用安全特征作為添加的保護(hù)特權(quán)集標(biāo)識(shí)符由預(yù)期的用戶計(jì)算機(jī)系統(tǒng)接收。另外,包括與資源相關(guān)聯(lián)的資源特權(quán)集標(biāo)識(shí)符的數(shù)據(jù)項(xiàng)也得到保護(hù)。
在某些實(shí)施例中,用戶可以經(jīng)由另一個(gè)計(jì)算機(jī)資源位置來(lái)接收包括特權(quán)集標(biāo)識(shí)符的安全數(shù)據(jù)項(xiàng),例如經(jīng)由該用戶在第三方計(jì)算機(jī)系統(tǒng)而不是用戶計(jì)算機(jī)系統(tǒng)上訪問(wèn)的電子郵件。用戶可以隨后將安全數(shù)據(jù)項(xiàng)并在某些情形中將預(yù)發(fā)布軟件或固件下載到可移動(dòng)存儲(chǔ)介質(zhì)上,諸如緊致盤(pán)、記憶棒或存儲(chǔ)卡等。例如,可以以此方式檢索包括預(yù)發(fā)布引導(dǎo)版本或系統(tǒng)管理程序的新的閃存版本。用戶可將可移動(dòng)介質(zhì)插入到可移動(dòng)介質(zhì)接口中,諸如圖2A中的USB控制器128、可移動(dòng)非易失性存儲(chǔ)器接口 250和示例性驅(qū)動(dòng)器253、251和255。圖3B示出存儲(chǔ)可用于技術(shù)的一個(gè)或多個(gè)實(shí)施例中的安全數(shù)據(jù)項(xiàng)的可移動(dòng)存儲(chǔ)介質(zhì)306的示例。在此示例中,安全數(shù)據(jù)項(xiàng)328包括用于用戶計(jì)算機(jī)系統(tǒng)的特權(quán)集標(biāo)識(shí)符320和一個(gè)或多個(gè)唯一標(biāo)識(shí)符319。在某些示例中,一個(gè)或多個(gè)唯一標(biāo)識(shí)符可以是用戶計(jì)算機(jī)系統(tǒng)使用隨機(jī)數(shù)生成器來(lái)隨機(jī)地生成的數(shù)字。另外,安全數(shù)據(jù)項(xiàng)328還可以包括已加密的特權(quán)密鑰,以便用于驗(yàn)證資源或發(fā)布特權(quán)集標(biāo)識(shí)符。基于加密方案的密鑰通常用于保護(hù)特權(quán)集標(biāo)識(shí)符數(shù)據(jù)項(xiàng)??墒褂脤?duì)稱或共享的密鑰加密,以此兩個(gè)通信的計(jì)算機(jī)系統(tǒng)存儲(chǔ)用于加密的相同的密鑰。在某些示例中,可以使用不同的密鑰,但在它們之間存在已定義的關(guān)系,使得一個(gè)密鑰可以相當(dāng)容易地從其密鑰獲得另一個(gè)密鑰。在某些示例中,可以使用每次對(duì)一位進(jìn)行加密的流密碼。在其他示例中,使用塊密碼,該塊密碼輸出與未加密數(shù)據(jù)的輸入長(zhǎng)度不同的長(zhǎng)度的已加密數(shù)據(jù)。塊密碼的標(biāo)準(zhǔn)的某些示例是基于數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)和國(guó)際數(shù)據(jù)加密算法(IDEA)并從其導(dǎo)出的。還可以使用諸如廣泛使用的公鑰加密的非對(duì)稱加密。包括兩個(gè)密鑰。第一計(jì)算機(jī)系統(tǒng)發(fā)布公鑰供第二計(jì)算機(jī)系統(tǒng)用來(lái)向其發(fā)送數(shù)據(jù)。私鑰僅對(duì)第一計(jì)算機(jī)系統(tǒng)可知。密鑰可以相關(guān),但是一般而言,使用已定義關(guān)系從公鑰導(dǎo)出私鑰是非常困難的。兩個(gè)密鑰或者其使用的非對(duì)稱加密密碼通常是可逆的,意味著私鑰可用于加密僅公鑰可以解密的數(shù)據(jù),反之亦然。可使用的密碼的示例是RSA和其他公鑰密碼標(biāo)準(zhǔn)(PKCS)。非對(duì)稱加密的可逆性也可用于驗(yàn)證身份,如數(shù)字簽名的情形那樣。消息摘要算法與非對(duì)稱加密一起可用于實(shí)現(xiàn)數(shù)字簽名。消息摘要算法實(shí)現(xiàn)非常難于逆轉(zhuǎn)的散列函數(shù),由此所得的散列值很有可能將是唯一的。散列函數(shù)接收可變大小的輸入數(shù)據(jù),并且輸出固定長(zhǎng)度的散列值(例如串)。消息摘要算法的某些示例是安全散列算法(SHA)和MD2、MD4、MD5以及其變型。在一個(gè)示例中,可以如下創(chuàng)建并驗(yàn)證經(jīng)簽名的數(shù)字證書(shū)。發(fā)送者計(jì)算機(jī)系統(tǒng)生成消息摘要,即消息內(nèi)容的散列值,并且使用發(fā)送者的私鑰來(lái)加密該消息摘要。接收者計(jì)算機(jī)系統(tǒng)接收該消息,并使用發(fā)送者的公鑰來(lái)解密該消息摘要。接收者計(jì)算該消息摘要。如果接收者的消息摘要或散列值與已解密的消息摘要不匹配,那么簽名未驗(yàn)證??捎糜谏刹Ⅱ?yàn)證證書(shū)的數(shù)字簽名的密碼的某些示例是RSA、數(shù)字簽名標(biāo)準(zhǔn)(DSS)及其變型。在其他示例中,安全數(shù)據(jù)項(xiàng)也可被包括在如RFC 2743所描述的安全團(tuán)塊中。圖4A示出可被包括在圖3A至3C中各個(gè)操作層所示的特權(quán)集檢查軟件310的實(shí)施例中的軟件組件的示例。自動(dòng)供應(yīng)軟件402執(zhí)行對(duì)于對(duì)特權(quán)集標(biāo)識(shí)符的請(qǐng)求的處理,使得用戶計(jì)算機(jī)系統(tǒng)訪問(wèn)資源。下面在對(duì)附圖的討論中進(jìn)一步描述這種處理的示例。
在某些實(shí)例中,用戶計(jì)算機(jī)系統(tǒng)將首先獲得資源,但是該資源將不會(huì)執(zhí)行,直到用戶計(jì)算機(jī)系統(tǒng)具有特權(quán)集內(nèi)的成員資格。例如,用戶可以通過(guò)郵件或在商店中購(gòu)買(mǎi)或接收預(yù)發(fā)布資源。在軟件的情形中,用戶可能能夠下載預(yù)發(fā)布軟件,但在沒(méi)有從授權(quán)計(jì)算機(jī)系統(tǒng)請(qǐng)求與該軟件相同的特權(quán)集內(nèi)的成員資格的情況下,無(wú)法執(zhí)行該軟件。在其他情形中,下載軟件或固件才不能被許可,直到用戶計(jì)算機(jī)系統(tǒng)的特權(quán)集標(biāo)識(shí)符已被更新為指示適合的特權(quán)集內(nèi)的成員資格。同樣,在某些實(shí)施例中,用戶可以在請(qǐng)求時(shí)不選擇特定資源的情況下請(qǐng)求特定特權(quán)集內(nèi)的成員資格。成員資格驗(yàn)證軟件404對(duì)在特定資源的執(zhí)行被許可之前該資源與用戶計(jì)算機(jī)系統(tǒng)共享相同的成員資格進(jìn)行驗(yàn)證。下面在對(duì)附圖的討論中進(jìn)一步描述這種處理的示例。圖4B示出可至少部分地包括在已下載的軟件預(yù)發(fā)布中的用于特權(quán)集檢查的軟件的另一個(gè)示例。在此示例中,成員資格驗(yàn)證軟件404被包括在已下載的軟件預(yù)發(fā)布322中。在其他示例中,預(yù)發(fā)布還可以包括供應(yīng)代碼。提供預(yù)發(fā)布資源的實(shí)體提供用于與用戶計(jì)算機(jī)系統(tǒng)通信的硬件和軟件以便自動(dòng)供應(yīng)特權(quán)集。例如,對(duì)于圖IA和IB的游戲控制臺(tái)12,該實(shí)體可以是計(jì)算環(huán)境12的實(shí)施例經(jīng)由因特網(wǎng)可以訪問(wèn)的控制臺(tái)的在線游戲服務(wù)。另外,該實(shí)體提供用于跟蹤哪些預(yù)發(fā)布資源是哪些特權(quán)集的成員,以及用于確定哪些用戶計(jì)算機(jī)系統(tǒng)具有哪些特權(quán)集的成員資格的硬件和軟件資源。實(shí)體的計(jì)算機(jī)系統(tǒng)也可基于邏輯和輸入數(shù)據(jù)(諸如上述的安全風(fēng)險(xiǎn)因素)來(lái)分配安全風(fēng)險(xiǎn)級(jí)別。在圖5A和5B中描述這些硬件和軟件組件的示例實(shí)施例。圖5A示出包括硬件和軟件組件的成員資格授權(quán)計(jì)算機(jī)系統(tǒng)的系統(tǒng)架構(gòu)的示例實(shí)施例。系統(tǒng)500包括可包括一個(gè)或多個(gè)處理器的處理單元502,并且包括本地存儲(chǔ)器503,該本地存儲(chǔ)器可具體化各種高速緩存設(shè)計(jì)。通信總線504提供各個(gè)系統(tǒng)組件之間的通信路徑。例如,總線504向處理單元502提供對(duì)存儲(chǔ)器控制器506的訪問(wèn),該存儲(chǔ)器控制器506在此示例中控制對(duì)易失性存儲(chǔ)器508和非易失性存儲(chǔ)器510的訪問(wèn)。這種非易失性地存儲(chǔ)的數(shù)據(jù)的某些示例是應(yīng)用程序,諸如操作系統(tǒng)512、成員資格授權(quán)軟件514、經(jīng)由網(wǎng)絡(luò)接口 522數(shù)據(jù)庫(kù)(諸如以下詳細(xì)討論的特權(quán)集數(shù)據(jù)庫(kù)527和存儲(chǔ)軟件和軟件預(yù)發(fā)布的資源數(shù)據(jù)庫(kù)529)進(jìn)行訪問(wèn)的數(shù)據(jù)庫(kù)接口 526,以及其他軟件應(yīng)用程序516。這些僅是可被存儲(chǔ)在非易失性存儲(chǔ)器510中的項(xiàng)的示例,并且該存儲(chǔ)器當(dāng)然包括其他數(shù)據(jù)和軟件。系統(tǒng)500還包括一個(gè)或多個(gè)輸出設(shè)備驅(qū)動(dòng)器518以控制輸出設(shè)備519 (例如顯不器、音頻輸出設(shè)備)、以及用于解釋來(lái)自像鍵盤(pán)和指向設(shè)備的輸入設(shè)備521的輸入的至少一個(gè)輸入設(shè)備驅(qū)動(dòng)器520。還提供一個(gè)或多個(gè)網(wǎng)絡(luò)接口 522,使得成員資格授權(quán)計(jì)算機(jī)系統(tǒng)500可以諸如通過(guò)因特網(wǎng)80與一個(gè)或多個(gè)計(jì)算機(jī)網(wǎng)絡(luò)通信,或者通過(guò)內(nèi)部網(wǎng)絡(luò)訪問(wèn)一個(gè)或多個(gè)數(shù)據(jù)庫(kù)527,5290接口 522可包括有線、無(wú)線或二者。圖5Β示出可被包括在成員資格授權(quán)軟件應(yīng)用程序中或由其利用的軟件組件和數(shù)據(jù)項(xiàng)的示例。很多數(shù)據(jù)項(xiàng)可被存儲(chǔ)在像圖5Β中詳細(xì)示出的特權(quán)集數(shù)據(jù)庫(kù)527的實(shí)施例的數(shù)據(jù)庫(kù)中。
每個(gè)特權(quán)集與安全風(fēng)險(xiǎn)級(jí)別相關(guān)聯(lián)。在該實(shí)施例中,可以在風(fēng)險(xiǎn)級(jí)別策略數(shù)據(jù)項(xiàng)552中定義安全風(fēng)險(xiǎn)級(jí)別。另選地,可以存儲(chǔ)每個(gè)集的安全風(fēng)險(xiǎn)級(jí)別策略552。特權(quán)集標(biāo)識(shí)符554和特權(quán)集密鑰556可被鏈接到風(fēng)險(xiǎn)策略。風(fēng)險(xiǎn)的示例包括對(duì)集內(nèi)所允許的用戶計(jì)算機(jī)系統(tǒng)的 數(shù)量的限制,從而限制可受完整性故障影響的用戶系統(tǒng)的數(shù)量。例如,軟件游戲應(yīng)用程序的β版本的風(fēng)險(xiǎn)池或觀眾大小可被限制為五千萬(wàn)個(gè)計(jì)算機(jī)系統(tǒng)中的五十萬(wàn)個(gè)。引導(dǎo)軟件更新可被限制為五千個(gè)用戶計(jì)算機(jī)系統(tǒng)。其他風(fēng)險(xiǎn)因素示例包括對(duì)預(yù)發(fā)布資源執(zhí)行的測(cè)試和認(rèn)證成功的級(jí)別,和用戶計(jì)算機(jī)系統(tǒng)的運(yùn)行將受預(yù)發(fā)布資源的故障影響的該用戶計(jì)算機(jī)系統(tǒng)的操作層。集成員資格標(biāo)準(zhǔn)562包括要被滿足從而被授予特權(quán)集內(nèi)的成員資格的標(biāo)準(zhǔn)。一個(gè)示例是是否已經(jīng)達(dá)到對(duì)集內(nèi)用戶或用戶計(jì)算機(jī)系統(tǒng)的數(shù)量的限制。在另一個(gè)示例中,用戶計(jì)算機(jī)系統(tǒng)必須擁有所需資源。所需資源的一個(gè)示例是計(jì)算資源的特定版本或多個(gè)版本,例如由版本號(hào)或版本號(hào)的范圍所指示的內(nèi)核或系統(tǒng)管理程序。例如,用戶計(jì)算機(jī)系統(tǒng)可能缺少用戶計(jì)算機(jī)系統(tǒng)可以通過(guò)使用閃存軟件的最新版本更新其自身來(lái)修復(fù)的引導(dǎo)軟件更新。特權(quán)集標(biāo)識(shí)符554被設(shè)置為指示資源和用戶計(jì)算機(jī)系統(tǒng)的具體的特權(quán)集成員資格。為每個(gè)特權(quán)集標(biāo)識(shí)至少一個(gè)特權(quán)集密鑰556。在公鑰-私鑰對(duì)的情形中,特權(quán)集密鑰可以是用于僅存儲(chǔ)在用戶計(jì)算機(jī)系統(tǒng)的私鑰的公鑰,或者可以是與被發(fā)送到用戶計(jì)算機(jī)系統(tǒng)的公鑰配對(duì)的私鑰。用戶計(jì)算機(jī)系統(tǒng)的成員簡(jiǎn)檔558包括該系統(tǒng)的唯一標(biāo)識(shí)符、該用戶計(jì)算機(jī)系統(tǒng)上的資源的版本號(hào)、到一個(gè)或多個(gè)特權(quán)集標(biāo)識(shí)符的鏈接,以及被發(fā)送給不同集內(nèi)的標(biāo)識(shí)符成員資格的一個(gè)或多個(gè)特權(quán)集密鑰。圖5Β中的軟件組件使用特權(quán)集數(shù)據(jù)庫(kù)527中的數(shù)據(jù)來(lái)執(zhí)行它們的各種功能。特權(quán)集資格軟件534基于特權(quán)集成員資格標(biāo)準(zhǔn)562確定用戶計(jì)算機(jī)系統(tǒng)何時(shí)可以成為與資源相同的特權(quán)集內(nèi)的成員。資格軟件534通知新成員的成員簡(jiǎn)檔更新軟件542,該成員簡(jiǎn)檔更新軟件542準(zhǔn)備簡(jiǎn)檔。安全數(shù)據(jù)項(xiàng)創(chuàng)建模型536創(chuàng)建諸如圖3C中所示的安全數(shù)據(jù)項(xiàng)328的安全數(shù)據(jù)項(xiàng)。特權(quán)傳輸模塊540響應(yīng)于用戶計(jì)算機(jī)具有成員資格,將包括特權(quán)集標(biāo)識(shí)符的安全數(shù)據(jù)項(xiàng)發(fā)布到用戶計(jì)算機(jī)系統(tǒng)。資源特權(quán)集標(biāo)識(shí)符生成軟件538基于可存儲(chǔ)在資源簡(jiǎn)檔中的資源的所分配的特權(quán)集,來(lái)生成該資源的資源特權(quán)集標(biāo)識(shí)符,該資源存儲(chǔ)在資源數(shù)據(jù)庫(kù)529中。數(shù)據(jù)庫(kù)529中的資源簡(jiǎn)檔被更新以包括資源特權(quán)集標(biāo)識(shí)符。生成軟件538還可在某些情形中將該標(biāo)識(shí)符插入到該資源中,或者經(jīng)由特權(quán)傳輸模塊540單獨(dú)地發(fā)送給用戶計(jì)算機(jī)系統(tǒng)。為了說(shuō)明性的上下文,參考圖2Α至5Β的實(shí)施例討論圖6至13,盡管其他計(jì)算機(jī)系統(tǒng)實(shí)施例也可以實(shí)現(xiàn)圖6至13的方法。在用戶計(jì)算機(jī)系統(tǒng)請(qǐng)求集內(nèi)的成員資格之前,諸如在線游戲服務(wù)的實(shí)體必須建立特權(quán)集,制定成員資格標(biāo)準(zhǔn)和對(duì)軟件可用的諸如每個(gè)數(shù)據(jù)庫(kù)(像特權(quán)集數(shù)據(jù)庫(kù)527)的安全風(fēng)險(xiǎn)級(jí)別,以便在實(shí)體側(cè)自動(dòng)地管理該特權(quán)集。圖6是用于自動(dòng)地供應(yīng)特權(quán)集的方法600的實(shí)施例的流程圖。像圖5Α中系統(tǒng)500的遠(yuǎn)程成員資格授權(quán)計(jì)算機(jī)系統(tǒng)及其諸如成員資格授權(quán)軟件514的軟件可以實(shí)現(xiàn)該方法。圖6的討論引用成員資格授權(quán)軟件514及其子模塊僅用于說(shuō)明性上下文。在步驟602中,資源特權(quán)集標(biāo)識(shí)符生成模塊538為計(jì)算資源標(biāo)識(shí)所分配的安全風(fēng)險(xiǎn)級(jí)別,并且在步驟604中,基于所標(biāo)識(shí)的安全風(fēng)險(xiǎn)級(jí)別將該資源與特權(quán)集相關(guān)聯(lián)。在一個(gè)示例中,安全風(fēng)險(xiǎn)級(jí)別可以由諸如特權(quán)集標(biāo)識(shí)符生成模塊538的軟件來(lái)確定并分配。在一個(gè)示例中,實(shí)體人員可能經(jīng)由輸入設(shè)備521已經(jīng)輸入了指示安全風(fēng)險(xiǎn)級(jí)別的資源的元數(shù)據(jù),生成模塊538將其存儲(chǔ)在資源數(shù)據(jù)庫(kù)529中。在另一個(gè)示例中,可能已經(jīng)為資源輸入了元數(shù)據(jù),諸如風(fēng)險(xiǎn)池大小、由預(yù)發(fā)布資源正修改的資源的類(lèi)型、或者認(rèn)證測(cè)試成功的級(jí)別?;趯?duì)風(fēng)險(xiǎn)因素的加權(quán),特權(quán)集標(biāo)識(shí)符生成模塊538可以應(yīng)用邏輯以向資源分配安全風(fēng)險(xiǎn)級(jí)別。生成模塊534隨后為資源生成資源特權(quán)集標(biāo)識(shí)符,將其標(biāo)識(shí)為特權(quán)集的成員在步驟606中,特權(quán)集資格軟件534接收遠(yuǎn)程計(jì)算機(jī)系統(tǒng)訪問(wèn)資源的請(qǐng)求。在此實(shí)施例中,請(qǐng)求包括用戶計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)唯一標(biāo)識(shí)符。這些唯一標(biāo)識(shí)符在出于安全目的以及跟蹤不同集內(nèi)不同的用戶計(jì)算機(jī)系統(tǒng)時(shí)是有用的。特權(quán)集資格軟件534在步驟608中確定發(fā)出請(qǐng)求的用戶計(jì)算機(jī)系統(tǒng)是否具有與資源相同的特權(quán)集內(nèi)的成員資格。例如,資格軟件534可從所提供的一個(gè)或多個(gè)唯一標(biāo)識(shí)符確定用戶計(jì)算機(jī)系統(tǒng)具有或缺少必要的閃存軟件或其他應(yīng)用程序軟件的哪些版本或更新。資格軟件534還可以確定是否已經(jīng)達(dá)到對(duì)特權(quán)集的觀眾大小或風(fēng)險(xiǎn)池大小的限制。響應(yīng)于用戶計(jì)算機(jī)系統(tǒng)具有成員資格,特權(quán)傳輸模塊540在步驟610中將指示資源集內(nèi)的成員資格的特權(quán)集標(biāo)識(shí)符分發(fā)給用戶計(jì)算機(jī)系統(tǒng)。如果用戶計(jì)算機(jī)系統(tǒng)不具備訪問(wèn)的資格,那么資格軟件534可在步驟612中向用戶計(jì)算機(jī)系統(tǒng)發(fā)送指示對(duì)該資源的訪問(wèn)已被拒絕的消息。該消息可以指示拒絕的理由,諸如缺少資源的更新或版本,因此用戶可對(duì)此進(jìn)行修復(fù)并再次嘗試注冊(cè)為成員。如在以下更詳細(xì)的實(shí)現(xiàn)示例中所示的,安全數(shù)據(jù)項(xiàng)創(chuàng)建模塊536可被特權(quán)集資格軟件534、資源特權(quán)集標(biāo)識(shí)符生成模塊538、或特權(quán)傳輸模塊540用來(lái)保護(hù)安全數(shù)據(jù)項(xiàng)中的用戶或資源的特權(quán)集標(biāo)識(shí)符。圖7是用于將資源與可用于實(shí)現(xiàn)步驟604的特權(quán)集相關(guān)聯(lián)的方法的實(shí)施例的流程圖。在步驟702中,安全數(shù)據(jù)項(xiàng)創(chuàng)建模塊536生成包括資源特權(quán)集標(biāo)識(shí)符的安全數(shù)據(jù)項(xiàng),并在步驟704中將該安全數(shù)據(jù)項(xiàng)包括在資源中。例如,在軟件預(yù)發(fā)布中,安全數(shù)據(jù)項(xiàng)被存儲(chǔ)在作為預(yù)發(fā)布軟件一部分的數(shù)據(jù)或位中。圖8是用于向用戶計(jì)算機(jī)系統(tǒng)分發(fā)指示成員資格的特權(quán)集標(biāo)識(shí)符的方法的實(shí)施例的流程圖,如可用于實(shí)現(xiàn)圖6的步驟610。如果用戶計(jì)算機(jī)系統(tǒng)具有資格,則資格軟件534在步驟802中將指示資源特權(quán)集內(nèi)的成員資格的特權(quán)集標(biāo)識(shí)符分配給用戶計(jì)算機(jī)系統(tǒng)。軟件534向安全數(shù)據(jù)項(xiàng)創(chuàng)建軟件536發(fā)送指示該分配的消息。安全數(shù)據(jù)項(xiàng)804在該示例中生成包括特權(quán)集標(biāo)識(shí)符和該示例中的一個(gè)或多個(gè)唯一標(biāo)識(shí)符的完整性證書(shū)。在一個(gè)實(shí)施例中,特權(quán)集具有分層結(jié)構(gòu)中的位置。在某些示例中,特權(quán)集內(nèi)的成員資格不僅提供對(duì)與該特權(quán)集相關(guān)聯(lián)的資源的訪問(wèn),還提供對(duì)與被認(rèn)為具有較低或較少特權(quán)的特權(quán)集相關(guān)聯(lián)的資源的訪問(wèn)。在步驟806中,安全數(shù)據(jù)項(xiàng)創(chuàng)建模塊使用為所分配的特權(quán)集標(biāo)識(shí)符的特權(quán)集指定的密鑰556來(lái)簽署證書(shū)。安全數(shù)據(jù)項(xiàng)創(chuàng)建模塊536警告特權(quán)傳輸模塊540安全數(shù)據(jù)項(xiàng)(此情形中經(jīng)簽署的證書(shū))可以被傳輸,并且特權(quán)傳輸模塊540在步驟808中發(fā)送該證書(shū)以供遠(yuǎn)程用戶計(jì)算機(jī)系統(tǒng)使用。用戶計(jì)算機(jī)系統(tǒng)還包括用于請(qǐng)求并且自動(dòng)地將其系統(tǒng)作為特權(quán)集的成員來(lái)供應(yīng)的軟件,從而獲得對(duì)預(yù)發(fā)布計(jì)算資源的訪問(wèn)。在供應(yīng)處理中,用戶計(jì)算機(jī)系統(tǒng)與控制資源的實(shí)體的遠(yuǎn)程計(jì)算機(jī)系統(tǒng)通信以獲得特權(quán)集內(nèi)的成員資格,并且由此獲得訪問(wèn)資源的許可或特權(quán)。訪問(wèn)資源的一個(gè)示例是執(zhí)行該資源。用戶計(jì)算機(jī)系統(tǒng)本地地執(zhí)行對(duì)執(zhí)行資源的其自身特權(quán)的驗(yàn)證。圖9至13提供涉及試圖訪問(wèn)與特權(quán)集相關(guān)聯(lián)的預(yù)發(fā)布資源的用戶計(jì)算機(jī)系統(tǒng)的方法的實(shí)施例的細(xì)節(jié)。僅為了說(shuō)明性的上下文,在特權(quán)集檢查軟件310及其自動(dòng)供應(yīng)軟件402、以及另外地圖4A和4B的軟件預(yù)發(fā)布322的成員資格驗(yàn)證軟件404的上下文中討論圖9至13。當(dāng)然,可以在具有硬件和軟件的不同配置的用戶計(jì)算機(jī)系統(tǒng)中執(zhí)行方法。圖9是用戶計(jì)算機(jī)系統(tǒng)訪問(wèn)與特權(quán)集相關(guān)聯(lián)的預(yù)發(fā)布計(jì)算資源的方法的實(shí)施例的流程圖。用戶計(jì)算機(jī)系統(tǒng)試圖注冊(cè)特權(quán)集內(nèi)的成員資格時(shí),用戶計(jì)算機(jī)系統(tǒng)執(zhí)行處理以便接收、確認(rèn)并存儲(chǔ)特權(quán)標(biāo)識(shí)符,從而訪問(wèn)諸如更高風(fēng)險(xiǎn)的預(yù)發(fā)布軟件的資源。諸如β軟件發(fā)布的預(yù)發(fā)布資源由于例如相比于公眾可用的軟件更少的測(cè)試而具有安全漏洞的更高風(fēng)險(xiǎn)。構(gòu)成更高風(fēng)險(xiǎn)安全級(jí)別的另一個(gè)因素是由于受所請(qǐng)求的預(yù)發(fā)布資源影響的用戶計(jì)算機(jī)系統(tǒng)的操作層,對(duì)用戶計(jì)算機(jī)系統(tǒng)的損壞的程度。例如,帶有對(duì)引導(dǎo)軟件的改變的β閃存發(fā)布,系統(tǒng)管理程序軟件或內(nèi)核軟件可能導(dǎo)致用戶計(jì)算機(jī)系統(tǒng)的災(zāi)難性故障。作為示例性上下文,對(duì)諸如多媒體控制臺(tái)100或計(jì)算機(jī)系統(tǒng)210的用戶計(jì)算機(jī)系統(tǒng)的用戶輸入指示了將原型升級(jí)下載到游戲應(yīng)用程序的請(qǐng)求。在步驟902中,在用戶系統(tǒng)的處理器101、220上執(zhí)行的特權(quán)集檢查軟件310為用戶計(jì)算機(jī)系統(tǒng)自動(dòng)地提供計(jì)算資源的特權(quán)集內(nèi)的成員資格。如果供應(yīng)是成功的,則在步驟904中,特權(quán)集檢查軟件310驗(yàn)證用戶計(jì)算機(jī)系統(tǒng)在執(zhí)行該資源之前在特權(quán)集內(nèi)的成員資格。在另一個(gè)示例中,資源是軟件原型322,并且在用戶計(jì)算機(jī)系統(tǒng)上執(zhí)行的它的成員資格驗(yàn)證軟件404執(zhí)行步驟904的驗(yàn)證的至少部分。圖10是用戶計(jì)算機(jī)系統(tǒng)自動(dòng)供應(yīng)以獲得特權(quán)集內(nèi)的成員資格的可用于實(shí)現(xiàn)步驟902的方法的實(shí)施例的流程圖。自動(dòng)供應(yīng)軟件402在步驟1002中將對(duì)預(yù)發(fā)布資源的請(qǐng)求中的用戶計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)唯一標(biāo)識(shí)符發(fā)送給遠(yuǎn)程授權(quán)計(jì)算機(jī)系統(tǒng)。自動(dòng)供應(yīng)軟件402在步驟1004中基于所接收的消息確定該請(qǐng)求是否被批準(zhǔn)。如果該請(qǐng)求未被批準(zhǔn),則在步驟1006中,自動(dòng)供應(yīng)軟件402接收指示訪問(wèn)被拒絕的消息。如前所述,該消息可以指示拒絕的理由,諸如缺少軟件更新,用戶可隨后下載該更新并嘗試再次注冊(cè)。在步驟1012中,自動(dòng)供應(yīng)軟件402從遠(yuǎn)程授權(quán)系統(tǒng)500接收包括特權(quán)集標(biāo)識(shí)符的安全數(shù)據(jù)項(xiàng),并在步驟1014中確定該特權(quán)標(biāo)識(shí)符是否有效。若否,則在步驟1016中向遠(yuǎn)程授權(quán)系統(tǒng)發(fā)送指示所接收的特權(quán)集標(biāo)識(shí)符為無(wú)效的消息。無(wú)效的基礎(chǔ)的某些示例包括未能解密特權(quán)集標(biāo)識(shí)符、與所發(fā)送的唯一標(biāo)識(shí)符不匹配的至少一個(gè)唯一標(biāo)識(shí)符,或者安全數(shù)據(jù)項(xiàng)中的數(shù)據(jù)項(xiàng)之間的其他不匹配。在其他示例中,安全數(shù)據(jù)項(xiàng)可以經(jīng)由用戶計(jì)算機(jī)系統(tǒng)以外的計(jì)算機(jī)系統(tǒng)發(fā)送給用戶。例如,包括特權(quán)集標(biāo)識(shí)符的安全團(tuán)塊或證書(shū)可以被發(fā)送到電子郵件地址。用戶可以隨后將安全數(shù)據(jù)項(xiàng)328下載到如圖3C中的可移動(dòng)存儲(chǔ)介質(zhì)306上。用戶將可移動(dòng)存儲(chǔ)介質(zhì)306插入到用戶計(jì)算機(jī)系統(tǒng)中,并且自動(dòng)供應(yīng)軟件402從該可移動(dòng)存儲(chǔ)介質(zhì)306讀取安全數(shù)據(jù)項(xiàng)。 響應(yīng)于特權(quán)集標(biāo)識(shí)符是有效的,自動(dòng)供應(yīng)軟件在步驟1018中將所接收的特權(quán)集標(biāo)識(shí)符本地地存儲(chǔ)在(例如用戶計(jì)算機(jī)系統(tǒng)的)存儲(chǔ)器中??蛇x地,在該點(diǎn),資源可在步驟1020中被置于用戶計(jì)算機(jī)系統(tǒng)中。在固件的情形中,固件可以被下載,并且重新啟動(dòng)計(jì)算機(jī)系統(tǒng)以便引導(dǎo)軟件識(shí)別。在軟件的情形中,軟件可以通過(guò)將該軟件下載到用戶計(jì)算機(jī)系統(tǒng)來(lái)放置,并且例如響應(yīng)于執(zhí)行該軟件的用戶請(qǐng)求,內(nèi)核可以執(zhí)行特權(quán)集檢查。
特別是在軟件和固件的情形中,資源可以被首先下載,并且隨后執(zhí)行對(duì)用戶計(jì)算機(jī)系統(tǒng)的供應(yīng)以查看如果系統(tǒng)尚未具有許可訪問(wèn)資源的特權(quán)集標(biāo)識(shí)符,該系統(tǒng)是否能夠訪問(wèn)該資源。在其他情形中,即使下載軟件或固件也必須獲得特權(quán)集標(biāo)識(shí)符。圖11是用于確定從遠(yuǎn)程授權(quán)計(jì)算機(jī)系統(tǒng)接收的特權(quán)集標(biāo)識(shí)符的有效性的可用于實(shí)現(xiàn)圖10的步驟1014的方法的實(shí)施例的流程圖。自動(dòng)供應(yīng)軟件402在步驟1102中從遠(yuǎn)程授權(quán)計(jì)算機(jī)系統(tǒng)接收安全數(shù)據(jù),并在步驟1104中確定本地特權(quán)集密鑰能否從安全數(shù)據(jù)項(xiàng)中檢索特權(quán)集標(biāo)識(shí)符。如果未能成功檢索特權(quán)集標(biāo)識(shí)符,則供應(yīng)軟件402在步驟1106中向遠(yuǎn)程授權(quán)系統(tǒng)500發(fā)送出錯(cuò)消息。在該實(shí)施例中,本地存儲(chǔ)的特權(quán)集密鑰可以是與用戶計(jì)算機(jī)系統(tǒng)作為唯一標(biāo)識(shí)符發(fā)送的公鑰相對(duì)應(yīng)的私鑰。相反,特權(quán)集密鑰可以是與用戶計(jì)算機(jī)系統(tǒng)作為唯一標(biāo)識(shí)符或與遠(yuǎn)程授權(quán)系統(tǒng)500的共享密鑰發(fā)送的私鑰相對(duì)應(yīng)的公鑰。另外,遠(yuǎn)程授權(quán)系統(tǒng)500可在發(fā)送安全數(shù)據(jù)項(xiàng)之前發(fā)送已加密的特權(quán)集密鑰。供應(yīng)軟件402解密該所發(fā)送的密鑰,并將其本地地存儲(chǔ)以便在接收包括特權(quán)集標(biāo)識(shí)符的安全數(shù)據(jù)項(xiàng)時(shí)使用。如圖3A、3B和3C所示,密鑰保險(xiǎn)庫(kù)318中的某些密鑰是諸如引導(dǎo)軟件312、系統(tǒng)管理程序314和系統(tǒng)軟件316的更低層的軟件可以訪問(wèn)的,并且其他密鑰可以存儲(chǔ)在如圖3B中的應(yīng)用層。如前所述,在一個(gè)實(shí)施例中存在特權(quán)集的分層結(jié)構(gòu)。分層結(jié)構(gòu)中的位置與集的特權(quán)程度相關(guān)。不同的安全措施可用于保護(hù)或確保位于分層結(jié)構(gòu)中不同位置的特權(quán)集的特權(quán)集標(biāo)識(shí)符。例如,特權(quán)集的密鑰或標(biāo)識(shí)符本身可以與受到密碼地完整性保護(hù)的軟件數(shù)據(jù)和/或代碼包括在一起。在以下的示例中,不同的簽名密鑰可以與不同的特權(quán)集相關(guān)聯(lián)。例如,僅由唯一的用戶計(jì)算機(jī)系統(tǒng)已知的用戶計(jì)算機(jī)系統(tǒng)唯一的密鑰可用于保護(hù)完整性。表示特權(quán)的不同級(jí)別的不同的特權(quán)集標(biāo)識(shí)符可存儲(chǔ)在帶有不同保護(hù)級(jí)別的存儲(chǔ)器位置中,該保護(hù)級(jí)別通常與分層結(jié)構(gòu)中特權(quán)集的風(fēng)險(xiǎn)級(jí)別相對(duì)應(yīng)。不同的本地存儲(chǔ)的密鑰可由自動(dòng)供應(yīng)軟件402指定為解密特定特權(quán)級(jí)別的特權(quán)集。如果可以檢索到密鑰,則在步驟1108中執(zhí)行附加的安全檢查以確定所檢索的特權(quán)集密鑰是否具有安全數(shù)據(jù)項(xiàng)中特權(quán)集標(biāo)識(shí)符的可接受的特權(quán)級(jí)別。例如,自動(dòng)供應(yīng)軟件402可以按照例如最高特權(quán)指定密鑰到最低特權(quán)指定密鑰的次序嘗試不同的密鑰,直到檢索成功或者不再有可用的密鑰供嘗試。在另一個(gè)實(shí)例中,資源的特權(quán)級(jí)別在之前對(duì)請(qǐng)求的交換中被標(biāo)識(shí),并且首先嘗試為該特權(quán)級(jí)別指定的密鑰。在一個(gè)示例中,如果特權(quán)集標(biāo)識(shí)符的特權(quán)級(jí)別與所檢索的密鑰的特權(quán)級(jí)別不同,則所檢索的特權(quán)集密鑰不具有特權(quán)集標(biāo)識(shí)符可接受的特權(quán)級(jí)別。結(jié)果是該標(biāo)識(shí)符被視為無(wú)效,并且供應(yīng)軟件402在步驟1106中向遠(yuǎn)程授權(quán)系統(tǒng)500發(fā)送出錯(cuò)消息。如果所檢索的密鑰具有特權(quán)集標(biāo)識(shí)符可接受的特權(quán)級(jí)別,作為另一個(gè)有效性檢查,自動(dòng)供應(yīng)軟件402在步驟1110中確定安全數(shù)據(jù)項(xiàng)中一個(gè)或多個(gè)唯一標(biāo)識(shí)符是否與本地地存儲(chǔ)的和之前發(fā)送的標(biāo)識(shí)符相對(duì)應(yīng)。例如,與所發(fā)送的標(biāo)識(shí)符相同的標(biāo)識(shí)符可以證明相應(yīng)。在其他示例中,如果唯一標(biāo)識(shí)符是一對(duì)中的對(duì)應(yīng)成員或已存儲(chǔ)的唯一標(biāo)識(shí)符的導(dǎo)出值,則示出相應(yīng)。如果存在與一個(gè)或多個(gè)唯一標(biāo)識(shí)符中至少一個(gè)的不匹配,則供應(yīng)軟件402在步驟1106中發(fā)送出錯(cuò)消息。如果一個(gè)或多個(gè)唯一標(biāo)識(shí)符均相對(duì)應(yīng),則供應(yīng)軟件402在步驟1112中基于安全數(shù)據(jù)項(xiàng)中的特權(quán)集標(biāo)識(shí)符更新本地存儲(chǔ)的特權(quán)集標(biāo)識(shí)符。在一個(gè)示例中,特權(quán)集標(biāo)識(shí)符可以是位字段,其中各個(gè)位被設(shè)置為預(yù)定指定的值以指示特權(quán)集內(nèi)的成員資格。驗(yàn)證特權(quán)集內(nèi)的成員資格的一種方便的方式是通過(guò)應(yīng)用掩碼以查看用于該特權(quán)集的一位或多位是否被設(shè)置為指定值。另外,具有其他集內(nèi)的成員資格的本地地存儲(chǔ)的特權(quán)集標(biāo)識(shí)符,可以通過(guò)應(yīng)用僅改變需要被更新的位的掩碼來(lái)方便地 被更新為標(biāo)識(shí)自動(dòng)供應(yīng)中獲得的最新的成員資格。此外,在某些實(shí)施例中,安全數(shù)據(jù)項(xiàng)包括來(lái)自授權(quán)系統(tǒng)500的新的特權(quán)集密鑰。該特權(quán)集密鑰具有特權(quán)集標(biāo)識(shí)符中所標(biāo)識(shí)的集的特權(quán)級(jí)別。該密鑰也可被本地地存儲(chǔ)在用戶計(jì)算機(jī)系統(tǒng)中,例如密鑰保險(xiǎn)庫(kù)318中或盤(pán)上的數(shù)據(jù)存儲(chǔ)位置326中。在一個(gè)示例中,特權(quán)集密鑰可以是公私鑰對(duì)中的私鑰。在一個(gè)示例中,特權(quán)集標(biāo)識(shí)符授予用戶計(jì)算機(jī)系統(tǒng)訪問(wèn)與特權(quán)集標(biāo)識(shí)符中所指示的特權(quán)集相關(guān)聯(lián)的全部資源的完整性檢查的許可。例如,一旦用戶計(jì)算機(jī)系統(tǒng)具有特權(quán)集內(nèi)的成員資格,則在下載或以其他方式獲得與相同集相關(guān)聯(lián)的其他資源的請(qǐng)求中,用戶計(jì)算機(jī)系統(tǒng)無(wú)需經(jīng)歷供應(yīng)方法以獲得另一個(gè)特權(quán)集標(biāo)識(shí)符。圖12是用于驗(yàn)證與預(yù)發(fā)布資源相關(guān)聯(lián)的特權(quán)集內(nèi)的用戶計(jì)算機(jī)系統(tǒng)的成員資格的可用于實(shí)現(xiàn)圖9的步驟904的方法的實(shí)施例的流程圖。取決于預(yù)發(fā)布資源的操作級(jí),軟件(例如引導(dǎo)、系統(tǒng)管理程序或內(nèi)核)的操作級(jí)將在步驟1202中接收?qǐng)?zhí)行預(yù)發(fā)布計(jì)算資源的請(qǐng)求。成員資格驗(yàn)證軟件404在步驟1204中從預(yù)發(fā)布資源檢索資源特權(quán)集標(biāo)識(shí)符,并在步驟1206中確定計(jì)算機(jī)系統(tǒng)的特權(quán)集標(biāo)識(shí)符是否指示該資源特權(quán)集標(biāo)識(shí)符所指示的集內(nèi)的成員資格。例如,驗(yàn)證軟件404可對(duì)其進(jìn)行比較以查看相同的位字段是否被設(shè)置為指示成員資格。如果用戶計(jì)算機(jī)系統(tǒng)和資源不是相同特權(quán)集的成員,則成員資格驗(yàn)證軟件404在步驟1208中顯示指示執(zhí)行資源的請(qǐng)求未被授權(quán)的消息。此外,驗(yàn)證軟件404在步驟1212中停止對(duì)預(yù)發(fā)布資源的執(zhí)行。例如,游戲應(yīng)用程序的β發(fā)布更新將不執(zhí)行。如果特權(quán)集標(biāo)識(shí)符指示資源與用戶計(jì)算機(jī)系統(tǒng)是相同特權(quán)集的成員,則控制被返回到控制預(yù)發(fā)布資源的用戶計(jì)算機(jī)系統(tǒng)的操作層,在步驟1210中執(zhí)行該預(yù)發(fā)布資源。例如,如果用戶計(jì)算機(jī)系統(tǒng)具有執(zhí)行系統(tǒng)管理程序補(bǔ)丁、或β (測(cè)試)位的其他發(fā)布、或?yàn)樵撓到y(tǒng)管理程序下載的數(shù)據(jù)的特權(quán),則引導(dǎo)軟件312的特權(quán)檢查軟件310b將控制返回給調(diào)用它的引導(dǎo)軟件,并且該引導(dǎo)軟件將控制交給引導(dǎo)軟件312的系統(tǒng)管理程序加載代碼。圖13是用于確定用戶計(jì)算機(jī)系統(tǒng)與預(yù)發(fā)布資源是否在相同的集內(nèi)共享成員資格的可用作實(shí)現(xiàn)圖12的步驟1206的一個(gè)示例的方法的實(shí)施例的流程圖。成員資格驗(yàn)證軟件404在步驟1302中確定特權(quán)集密鑰是否簽署了包括資源特權(quán)集標(biāo)識(shí)符的完整性證書(shū)。如果證書(shū)未由特權(quán)集密鑰簽署,則方法返回到步驟1208和1212。如果證書(shū)已由特權(quán)集密鑰簽署,則驗(yàn)證軟件404在步驟1306中確定簽名特權(quán)集密鑰是否位于資源特權(quán)集標(biāo)識(shí)符可接受的特權(quán)級(jí)別。例如,對(duì)指示較高特權(quán)集內(nèi)的成員資格的資源特權(quán)集標(biāo)識(shí)符進(jìn)行解密的較低特權(quán)集的密鑰標(biāo)識(shí)了無(wú)效的證書(shū)。如果簽名密鑰缺少必要的特權(quán),則方法返回到步驟1208和1212。在步驟1308中,成員資格驗(yàn)證軟件404確定計(jì)算機(jī)系統(tǒng)的特權(quán)集標(biāo)識(shí)符是否指示了由資源特權(quán)集標(biāo)識(shí)符所指示的集內(nèi)的成員資格。例如,在特權(quán)集成員資格由位字段中設(shè)置的一位或多位來(lái)指示的情形中,可以應(yīng)用掩碼來(lái)對(duì)兩個(gè)標(biāo)識(shí)符進(jìn)行比較以查看所指定的位是否被設(shè)置為指示成員資格的值。再次,如果確定是資源與用戶計(jì)算機(jī)系統(tǒng)不共享相同集內(nèi)的成員資格,則方法返回到步驟1208和1212。如果資源與用戶計(jì)算機(jī)系統(tǒng)是相同集內(nèi)成員,則驗(yàn)證軟件404或特權(quán)集檢查軟件310的某些其它代碼在步驟1310中確定是否滿足完整性證書(shū)中的期滿標(biāo)準(zhǔn)。如果未滿足期滿標(biāo)準(zhǔn),則方法返回到步驟1208和1212。如果滿 足了期滿標(biāo)準(zhǔn),則方法返回到步驟1210并執(zhí)行預(yù)發(fā)布資源。在某些示例中,期滿標(biāo)準(zhǔn)可以是基于時(shí)間的標(biāo)準(zhǔn)。例如,設(shè)置日期可被提供為軟件預(yù)發(fā)布的執(zhí)行的結(jié)束日期。在另一個(gè)示例中,基于時(shí)間的標(biāo)準(zhǔn)可以是始于諸如下載軟件預(yù)發(fā)布的時(shí)間的指定的起始時(shí)間點(diǎn)的時(shí)間段。在其他示例中,期滿標(biāo)準(zhǔn)可以是資源僅與用戶計(jì)算機(jī)系統(tǒng)上軟件和硬件組件的特定版本一同工作例如,β引導(dǎo)軟件更新可以具有在之前公開(kāi)發(fā)布的引導(dǎo)軟件的版本上運(yùn)行的期滿標(biāo)準(zhǔn)。只要β更新與引導(dǎo)軟件的之前發(fā)布在一起,用戶計(jì)算機(jī)系統(tǒng)就可以運(yùn)行該測(cè)試更新。然而,用戶必須下載包括引導(dǎo)、系統(tǒng)管理程序和系統(tǒng)軟件的閃存軟件的新的公開(kāi)發(fā)布的版本,從而在像多媒體控制臺(tái)100的游戲控制臺(tái)上玩新游戲。這限制了時(shí)域中以及用戶將可能希望玩新游戲的風(fēng)險(xiǎn)范圍。本技術(shù)可具體化為其他具體形式而不背離其精神或本質(zhì)特征。類(lèi)似地,對(duì)于模塊、例程、特征、屬性、方法和其他方面的具體命名和劃分并非是強(qiáng)制性的,實(shí)現(xiàn)本技術(shù)或其特征的機(jī)制可具有不同的名稱、劃分和/或格式。此外,如本領(lǐng)域技術(shù)人員將顯而易見(jiàn)的,所公開(kāi)的實(shí)施例的模塊、例程、特征、屬性、方法和其他方面可被實(shí)現(xiàn)為軟件、硬件、固件或三者的任意組合。當(dāng)然,在組件(其示例是模塊)被實(shí)現(xiàn)為軟件的情況下,該組件可被實(shí)現(xiàn)為獨(dú)立的程序、更大程序的一部分、多個(gè)單獨(dú)的程序、靜態(tài)或動(dòng)態(tài)鏈接庫(kù)、內(nèi)核可加載模塊、設(shè)備驅(qū)動(dòng)程序、和/或編程技術(shù)領(lǐng)域中的技術(shù)人員現(xiàn)在已知或?qū)?lái)知曉的每一個(gè)和任何其他方式。盡管用結(jié)構(gòu)特征和/或方法動(dòng)作專用的語(yǔ)言描述了本主題,但可以理解,所附權(quán)利要求書(shū)中定義的主題不必限于上述具體特征或動(dòng)作。更確切而言,上述具體特征和動(dòng)作是作為實(shí)現(xiàn)權(quán)利要求的示例形式公開(kāi)的。
權(quán)利要求
1.一種用于訪問(wèn)與特權(quán)集相關(guān)聯(lián)的預(yù)發(fā)布計(jì)算資源的方法,包括 為了所述特權(quán)集內(nèi)的成員資格向用戶計(jì)算機(jī)系統(tǒng)供應(yīng)特權(quán)集標(biāo)識(shí)符(902),所述特權(quán)集指示所述計(jì)算資源的安全風(fēng)險(xiǎn)級(jí)別;以及 基于所述特權(quán)集標(biāo)識(shí)符和所述資源的資源特權(quán)集標(biāo)識(shí)符,驗(yàn)證所述用戶計(jì)算機(jī)系統(tǒng)具有所述資源所需的所述特權(quán)集內(nèi)的成員資格(904)。
2.如權(quán)利要求I所述的方法,其特征在于,為了所述特權(quán)集內(nèi)的成員資格向用戶計(jì)算機(jī)系統(tǒng)供應(yīng)特權(quán)集標(biāo)識(shí)符還包括 向遠(yuǎn)程授權(quán)計(jì)算機(jī)系統(tǒng)發(fā)送所述用戶計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)唯一標(biāo)識(shí)符(1002);從遠(yuǎn)程授權(quán)計(jì)算機(jī)系統(tǒng)接收包括用于所述用戶計(jì)算機(jī)系統(tǒng)的特權(quán)集標(biāo)識(shí)符的安全數(shù)據(jù)項(xiàng)(1012); 確定所述安全數(shù)據(jù)項(xiàng)中的所述一個(gè)或多個(gè)唯一標(biāo)識(shí)符是否與之前發(fā)送的一個(gè)或多個(gè)標(biāo)識(shí)符相匹配(1014); 將所述特權(quán)集標(biāo)識(shí)符本地地存儲(chǔ)在能夠由所述用戶計(jì)算機(jī)系統(tǒng)訪問(wèn)的存儲(chǔ)器中(1018),其中所述特權(quán)集標(biāo)識(shí)符受到完整性保護(hù);以及 響應(yīng)于所述一個(gè)或多個(gè)唯一標(biāo)識(shí)符與之前發(fā)送的至少一個(gè)標(biāo)識(shí)符不匹配,停止所述預(yù)發(fā)布資源的執(zhí)行(1212)。
3.如權(quán)利要求I所述的方法,其特征在于 驗(yàn)證所述用戶計(jì)算機(jī)系統(tǒng)具有所述資源所需的所述特權(quán)集內(nèi)的成員資格還包括 驗(yàn)證包括所述資源特權(quán)集標(biāo)識(shí)符的完整性證書(shū)是否已經(jīng)由特權(quán)集密鑰簽署(1302),所述特權(quán)集密鑰本地地存儲(chǔ)在能夠由所述用戶計(jì)算機(jī)系統(tǒng)訪問(wèn)的所述存儲(chǔ)器中;響應(yīng)于對(duì)所述特權(quán)集密鑰的簽名的驗(yàn)證,確定簽名特權(quán)集密鑰是否對(duì)所述資源特權(quán)集標(biāo)識(shí)符是能夠接受的特權(quán)級(jí)別的(1306);以及 響應(yīng)于簽名密鑰不是所述能夠接受的特權(quán)級(jí)別的,停止所述預(yù)發(fā)布資源的執(zhí)行(1212)。
4.如權(quán)利要求I的方法,其特征在于,所述安全風(fēng)險(xiǎn)級(jí)別表示所述預(yù)發(fā)布資源的安全測(cè)試認(rèn)證成功的級(jí)別。
5.一種用戶計(jì)算機(jī)系統(tǒng),包括 處理器(101,220); 通信接口(124、270),能夠由所述處理器訪問(wèn)以與遠(yuǎn)程計(jì)算機(jī)系統(tǒng)(500)通信,用于下載與特權(quán)集(320)相關(guān)聯(lián)的軟件預(yù)發(fā)布(322),所述特權(quán)集指示所述軟件預(yù)發(fā)布的安全風(fēng)險(xiǎn)級(jí)別,其中所述安全風(fēng)險(xiǎn)級(jí)別表示對(duì)具有所述軟件預(yù)發(fā)布的完整性故障的風(fēng)險(xiǎn)的用戶計(jì)算機(jī)系統(tǒng)的數(shù)量的限制;以及 能夠由所述處理器訪問(wèn)的存儲(chǔ)器(302、304、306),所述存儲(chǔ)器存儲(chǔ)軟件(310),用于將所述處理器編程為從所述遠(yuǎn)程計(jì)算機(jī)系統(tǒng)獲得特權(quán)集標(biāo)識(shí)符并將所述標(biāo)識(shí)符存儲(chǔ)在所述存儲(chǔ)器中; 所述特權(quán)集標(biāo)識(shí)符(320)指示所述用戶計(jì)算機(jī)系統(tǒng)在所述特權(quán)集內(nèi)的成員資格,所述成員資格授予運(yùn)行所述軟件預(yù)發(fā)布(322)的許可; 所述存儲(chǔ)器存儲(chǔ)所述軟件預(yù)發(fā)布,用于將所述處理器編程為基于所述特權(quán)集標(biāo)識(shí)符驗(yàn)證所述用戶計(jì)算機(jī)系統(tǒng)具有與所述發(fā)布相關(guān)聯(lián)的所述特權(quán)集內(nèi)的成員資格,并響應(yīng)于所述用戶計(jì)算機(jī)系統(tǒng)缺少成員資格而停止所述軟件預(yù)發(fā)布的執(zhí)行。
6.如權(quán)利要求5所述的用戶計(jì)算機(jī)系統(tǒng),其特征在于, 所述用戶計(jì)算機(jī)系統(tǒng)的所述特權(quán)集標(biāo)識(shí)符已經(jīng)與受到以其他方式密碼地完整性保護(hù)的所述軟件包括在一起。
7.如權(quán)利要求5所述的用戶計(jì)算機(jī)系統(tǒng),其特征在于, 所述特權(quán)集是特權(quán)集的分層結(jié)構(gòu)中的一個(gè);以及 至少兩個(gè)標(biāo)識(shí)符被不同的安全措施保護(hù),所述至少兩個(gè)標(biāo)識(shí)符的每個(gè)與所述分層結(jié)構(gòu)中不同的特權(quán)集相關(guān)聯(lián)。
8.一種用于特權(quán)集的自動(dòng)供應(yīng)的方法,包括 將預(yù)發(fā)布計(jì)算資源與特權(quán)集分層結(jié)構(gòu)中的特權(quán)集相關(guān)聯(lián)(604),所述分層結(jié)構(gòu)中的每個(gè)特權(quán)集具有安全風(fēng)險(xiǎn)級(jí)別; 根據(jù)所述特權(quán)集的成員資格標(biāo)準(zhǔn),為用戶計(jì)算機(jī)系統(tǒng)生成指示所述特權(quán)集內(nèi)的成員資格的特權(quán)集標(biāo)識(shí)符(702);以及 將所述特權(quán)集標(biāo)識(shí)符和所述資源分發(fā)給所述用戶計(jì)算機(jī)系統(tǒng)¢10),其中所述預(yù)發(fā)布資源對(duì)于缺少所述特權(quán)集內(nèi)的成員資格的用戶計(jì)算機(jī)系統(tǒng)是不可執(zhí)行的。
9.如權(quán)利要求8的方法,其特征在于,所述安全風(fēng)險(xiǎn)級(jí)別是基于所述資源所改變的所述用戶計(jì)算機(jī)系統(tǒng)的操作層(312、314、316、322)。
10.如權(quán)利要求8的方法,其特征在于,將所述特權(quán)集標(biāo)識(shí)符和所述資源分發(fā)給所述用戶計(jì)算機(jī)系統(tǒng)獨(dú)立于許可所述用戶計(jì)算機(jī)系統(tǒng)使用所述資源。
全文摘要
本發(fā)明涉及用于計(jì)算資源預(yù)發(fā)布的安全系統(tǒng)。提供了用于向用戶計(jì)算機(jī)系統(tǒng)供應(yīng)特權(quán)集內(nèi)的成員資格以便執(zhí)行預(yù)發(fā)布資源的技術(shù)。預(yù)發(fā)布資源的某些示例是可被下載到用戶計(jì)算機(jī)系統(tǒng)的固件或軟件的α版本和β版本。預(yù)發(fā)布資源基于其安全風(fēng)險(xiǎn)級(jí)別與不同的特權(quán)集相關(guān)聯(lián)。在一個(gè)示例中,安全風(fēng)險(xiǎn)級(jí)別可以表示具有預(yù)發(fā)布資源的完整性故障的風(fēng)險(xiǎn)的用戶計(jì)算機(jī)系統(tǒng)的數(shù)量。在其他示例中,安全風(fēng)險(xiǎn)可以表示受資源影響的用戶計(jì)算機(jī)系統(tǒng)的操作層或預(yù)發(fā)布資源的安全測(cè)試認(rèn)證成功的級(jí)別。特權(quán)集標(biāo)識(shí)符指示一個(gè)或多個(gè)特權(quán)集內(nèi)的成員資格。
文檔編號(hào)G06F21/22GK102622555SQ201110375180
公開(kāi)日2012年8月1日 申請(qǐng)日期2011年11月8日 優(yōu)先權(quán)日2010年11月9日
發(fā)明者K·雷 申請(qǐng)人:微軟公司