專利名稱:對(duì)數(shù)據(jù)的基于證書的訪問(wèn)的制作方法
對(duì)數(shù)據(jù)的基于證書的訪問(wèn)
背景技術(shù):
計(jì)算機(jī)可讀數(shù)據(jù)的安全最通常是通過(guò)把關(guān)機(jī)制來(lái)實(shí)現(xiàn),把關(guān)機(jī)制使得授權(quán)用戶,或更準(zhǔn)確地,代表這些用戶而行動(dòng)的過(guò)程,能夠訪問(wèn)計(jì)算機(jī)可讀數(shù)據(jù),并同時(shí)阻止未授權(quán)用戶以及他們的相關(guān)過(guò)程訪問(wèn)數(shù)據(jù)。數(shù)據(jù)加密就是一個(gè)這樣的把關(guān)機(jī)制,該數(shù)據(jù)耦合有只給那些被授權(quán)訪問(wèn)此數(shù)據(jù)的用戶解密以及隨后訪問(wèn)該數(shù)據(jù)所必需的信息。這樣的把關(guān)機(jī)制傳統(tǒng)上是通過(guò)專用的計(jì)算機(jī)可執(zhí)行指令來(lái)提供,比如加密應(yīng)用程序,其中,試圖訪問(wèn)這些數(shù)據(jù)的用戶為了解密以及隨后訪問(wèn)數(shù)據(jù),需要擁有加密應(yīng)用程序或它的類似物。計(jì)算裝置使用的操作系統(tǒng)通過(guò)使用訪問(wèn)控制也能夠?qū)崿F(xiàn)把關(guān)機(jī)制,所述訪問(wèn)控制基于用戶和被授權(quán)訪問(wèn)數(shù)據(jù)的用戶列表或用戶組之間的比較來(lái)限制用戶訪問(wèn)數(shù)據(jù)。傳統(tǒng)上地,這樣的操作系統(tǒng)要求用戶比如通過(guò)輸入用戶名和密碼來(lái)登錄。一旦用戶已經(jīng)登錄到這 樣的操作系統(tǒng),識(shí)別用戶的數(shù)據(jù)組(通常被稱為用戶令牌)被生成,用于代表用戶且與用戶相關(guān)聯(lián)。每當(dāng)用戶或代表這些用戶而行動(dòng)的應(yīng)用嘗試訪問(wèn)某些數(shù)據(jù),與被訪問(wèn)的數(shù)據(jù)相關(guān)聯(lián)的訪問(wèn)控制列表被引用。利用對(duì)訪問(wèn)控制列表中的授權(quán)數(shù)據(jù)、以及用戶令牌中的身份數(shù)據(jù)進(jìn)行計(jì)算,以指明登錄的用戶的訪問(wèn)數(shù)據(jù)的能力。如果與被訪問(wèn)的數(shù)據(jù)相關(guān)聯(lián)的訪問(wèn)控制列表以某種方式指明登錄的用戶沒(méi)有被授權(quán)訪問(wèn)數(shù)據(jù),操作系統(tǒng)將會(huì)使訪問(wèn)請(qǐng)求失敗。不幸地,在很多環(huán)境下,與計(jì)算裝置以及它的操作系統(tǒng)進(jìn)行交互的真實(shí)人類用戶,和生成的令牌所識(shí)別的用戶并不相同。例如,許多家庭使用單個(gè)登錄,這樣,不論哪個(gè)家庭用戶正在實(shí)際使用計(jì)算裝置都將會(huì)生成相同的用戶令牌。再如,一個(gè)用戶的用戶名和密碼被另一個(gè)不同的用戶盜竊,并隨后使用。在這種情況下,因?yàn)椴僮飨到y(tǒng)實(shí)現(xiàn)的訪問(wèn)控制列表是基于用戶令牌,那些從來(lái)不打算被授權(quán)訪問(wèn)某種數(shù)據(jù)組的人類用戶,然而由于作為其他人被登錄到計(jì)算裝置,卻可以訪問(wèn)那些數(shù)據(jù)組。雖然專用工具,例如指向數(shù)據(jù)的加密的應(yīng)用程序,即使在使用計(jì)算裝置的人類用戶其實(shí)上很可能為另一個(gè)人的情況下仍然能夠保護(hù)敏感信息,然而這樣的專用工具要求每一個(gè)最終需要訪問(wèn)受保護(hù)的數(shù)據(jù)的計(jì)算裝置在其上安裝專用工具。在某些情況下,這樣的安裝在給定的計(jì)算裝置上的專用工具的數(shù)目,甚至可能比起初用于生成數(shù)據(jù)的應(yīng)用的數(shù)目更大。
發(fā)明內(nèi)容
在一個(gè)實(shí)施例中,現(xiàn)有的例如操作系統(tǒng)中的訪問(wèn)控制機(jī)制能夠被修改為提供對(duì)特定的數(shù)據(jù)組的訪問(wèn),所述訪問(wèn)不僅基于與當(dāng)前登錄到計(jì)算裝置的用戶相關(guān)聯(lián)的信息,而且基于由這樣的用戶提供的合適的證書數(shù)據(jù)。證書數(shù)據(jù)可以簡(jiǎn)單的為用戶或者代表用戶輸入的密碼或者口令。證書數(shù)據(jù)也可以為指紋、視網(wǎng)膜掃描、聲紋、智能卡、其它類似的可以從用戶收集到的或由用戶提供的獨(dú)特?cái)?shù)據(jù)。在另一個(gè)實(shí)施例中,對(duì)數(shù)據(jù)組的訪問(wèn)要根據(jù)訪問(wèn)控制信息來(lái)進(jìn)行限制,與該數(shù)據(jù)組相關(guān)聯(lián)的訪問(wèn)控制信息可以包括證書數(shù)據(jù),以使得對(duì)相關(guān)聯(lián)的數(shù)據(jù)組的訪問(wèn)能夠基于與訪問(wèn)控制信息存儲(chǔ)在一起的證書數(shù)據(jù)的存在、或證書數(shù)據(jù)的提供來(lái)進(jìn)行限制。出于安全的目的,證書數(shù)據(jù)可以以模糊(obsfuscated)形式存儲(chǔ),例如通過(guò)一個(gè)或多個(gè)已知的哈希算法使證書數(shù)據(jù)散列。在進(jìn)一步的實(shí)施例中,與數(shù)據(jù)組相關(guān)聯(lián)的訪問(wèn)控制信息可包括一個(gè)或多個(gè)布爾條件,包括基于證書數(shù)據(jù)的提供的布爾條件,用于列舉一組要求,在這些要求下,訪問(wèn)數(shù)據(jù)組能夠被授權(quán)。因此,證書數(shù)據(jù)的提供可以是獲得對(duì)數(shù)據(jù)組的訪問(wèn)所要求的唯一元素。在還進(jìn)一步的實(shí)施例中,證書數(shù)據(jù)能夠作為用戶令牌或其它與用戶相關(guān)聯(lián)的信息集的一部分而被存儲(chǔ),僅在獲得對(duì)特定的受保護(hù)數(shù)據(jù)組的訪問(wèn)所要求的足夠長(zhǎng)的時(shí)間內(nèi)存儲(chǔ)。證書數(shù)據(jù)可以作為用戶令牌的一部分被存儲(chǔ)的時(shí)間量能夠由提供證書數(shù)據(jù)給用戶令牌的應(yīng)用程序,或操作系統(tǒng)本身指定。提供本發(fā)明內(nèi)容以簡(jiǎn)化的形式介紹了下面在具體實(shí)施方式
中進(jìn)一步描述的概念的選集。本發(fā)明內(nèi)容不旨在識(shí)別要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用來(lái)限制要求保護(hù)的主題的范圍。其他的的特性和優(yōu)點(diǎn)將從后面參考附圖進(jìn)行的詳細(xì)描述中變得顯而易見(jiàn)?!?br>
當(dāng)連同附圖一起考慮時(shí),可以最佳地理解下面的詳細(xì)描述,其中;
圖I是示例性操作系統(tǒng)所實(shí)現(xiàn)的示例性訪問(wèn)控制的框 圖2是示例性計(jì)算裝置的框 圖3是用于獲取特定數(shù)據(jù)組的訪問(wèn)的證書數(shù)據(jù)的說(shuō)明的示例性列舉的框 圖4是用于訪問(wèn)數(shù)據(jù)組的示例性機(jī)制的框圖,其要求提供證書數(shù)據(jù)以獲得訪問(wèn);
圖5是用于提供數(shù)據(jù)組的訪問(wèn)的示例性機(jī)制的流程圖;以及 圖6是用于訪問(wèn)數(shù)據(jù)和請(qǐng)求證書數(shù)據(jù)的示例性機(jī)制的流程圖。
具體實(shí)施例方式下述描述涉及訪問(wèn)控制機(jī)制的擴(kuò)展以使得對(duì)數(shù)據(jù)的訪問(wèn)能夠以預(yù)先指定的證書數(shù)據(jù)的提供為條件并受其控制。與訪問(wèn)受控制的數(shù)據(jù)組相關(guān)聯(lián)的訪問(wèn)控制信息能夠指定證書數(shù)據(jù),在被授權(quán)訪問(wèn)所述數(shù)據(jù)組之前要提供所述證書數(shù)據(jù)。用戶令牌、或者其他的與用戶相關(guān)聯(lián)的信息可包含證書數(shù)據(jù),所述證書數(shù)據(jù)可從用戶獲取,例如通過(guò)能被任何代表用戶而行動(dòng)的應(yīng)用所使用的公用接口,或者通過(guò)可被操作系統(tǒng)實(shí)現(xiàn)的通向用戶的安全通道,例如“安全桌面“接口。當(dāng)代表用戶而行動(dòng)的過(guò)程嘗試訪問(wèn)數(shù)據(jù)組,其中該數(shù)據(jù)組的訪問(wèn)是受控的并且必須在訪問(wèn)被授權(quán)之前為該數(shù)據(jù)組提供證書數(shù)據(jù),用戶令牌作為證書數(shù)據(jù)被引用。如果用戶令牌沒(méi)有包括所要求的證書數(shù)據(jù),用戶將被提示輸入這樣的數(shù)據(jù)且能重新嘗試訪問(wèn)。出于安全目的,證書數(shù)據(jù)可以以模糊(Obsfuscated)的形式,例如散列形式,存儲(chǔ)在訪問(wèn)控制信息中以及,可選地,存儲(chǔ)在用戶令牌本身。出于說(shuō)明的目的,此處描述的技術(shù)引用特定的數(shù)據(jù)結(jié)構(gòu),包括,特別地,“用戶令牌”、“訪問(wèn)控制條目”以及“訪問(wèn)控制列表”。這樣的引用完全是示例性的,并不是用于將所描述的機(jī)制限定為所提供的特定示例。實(shí)際上,所描述的技術(shù)能被應(yīng)用于包含有關(guān)信息的任何數(shù)據(jù)組,而與特定的實(shí)現(xiàn)無(wú)關(guān)。因此,此處被使用的術(shù)語(yǔ)“用戶令牌”意為唯一地與用戶相關(guān)聯(lián)的任何信息的集合,其通過(guò)登錄或相類似的程序來(lái)識(shí)別,當(dāng)這樣的用戶再一次例如通過(guò)登錄或相類似的程序被識(shí)別時(shí),生成了所述信息;相類似地,此處被使用的術(shù)語(yǔ)“訪問(wèn)控制條目”意為與數(shù)據(jù)組相關(guān)聯(lián)的信息的任意集合,其中對(duì)所述數(shù)據(jù)組的訪問(wèn)受控制,并且所述信息指定了一個(gè)或多個(gè)準(zhǔn)則,根據(jù)該準(zhǔn)則,一種或多種對(duì)相關(guān)聯(lián)的數(shù)據(jù)組的訪問(wèn)要么被授權(quán)要么被拒絕;以及此處被使用的術(shù)語(yǔ)“訪問(wèn)控制列表”意為一個(gè)或多個(gè)所述訪問(wèn)控制條目的任意集合。盡管不是必須的,但下面的描述位于被計(jì)算裝置執(zhí)行的計(jì)算機(jī)可執(zhí)行指令(例如程序模塊)的一般環(huán)境下。更具體地,除非另有說(shuō)明,所述描述將引用一個(gè)或多個(gè)計(jì)算裝置或外圍設(shè)備執(zhí)行的操作的行為和符號(hào)表征。如此,將明白,這樣的行為和操作包括通過(guò)處理單元操控以結(jié)構(gòu)化形式代表數(shù)據(jù)的電信號(hào),所述行為和操作有時(shí)被稱為計(jì)算機(jī)可執(zhí)行的。所述操控轉(zhuǎn)換數(shù)據(jù)或?qū)?shù)據(jù)維持在存儲(chǔ)器中的位置,所述操控以本領(lǐng)域技術(shù)人員很好理解的方式重新配置或以其他方式改變計(jì)算裝置或外圍設(shè)備的操作。所述其中數(shù)據(jù)被維護(hù)的數(shù)據(jù)結(jié)構(gòu)是具有數(shù)據(jù)格式所定義的特定屬性的物理位置。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等。此外,本領(lǐng)域技術(shù)人員將理解所述計(jì)算裝置無(wú)需被限定于常規(guī)的個(gè) 人計(jì)算機(jī),其包括了其他的計(jì)算配置,包括手持裝置、多處理器系統(tǒng)、基于微處理器的或可編程的消費(fèi)電子產(chǎn)品、網(wǎng)絡(luò)PC、微型計(jì)算器、大型計(jì)算機(jī)等。相似地,所述計(jì)算裝置無(wú)需被限定于獨(dú)立的計(jì)算裝置,因?yàn)樗鰴C(jī)制也可以在分布式計(jì)算環(huán)境中實(shí)現(xiàn),在分布式計(jì)算環(huán)境中,任務(wù)通過(guò)以通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理裝置執(zhí)行。在分布的計(jì)算環(huán)境中,程序模塊可能位于本地和遠(yuǎn)程存儲(chǔ)器存儲(chǔ)裝置中。轉(zhuǎn)到圖1,其中示出的系統(tǒng)99顯示了一個(gè)簡(jiǎn)化的、示例性的通信和行為的組。通過(guò)所述通信和行為,現(xiàn)代操作系統(tǒng),如圖I中顯示的操作系統(tǒng)134,能夠控制訪問(wèn)給定數(shù)據(jù)組。特別地,如系統(tǒng)99所示出的,用戶10能夠執(zhí)行登錄行為11以登錄到計(jì)算裝置100。典型地,如那些本領(lǐng)域計(jì)算人員將知道的,如行為21所示出的,用戶10的登錄行為11能夠引起操作系統(tǒng)134生成用戶令牌20。如前面所指出的,用戶令牌20能夠包括獨(dú)有于用戶10的、與該用戶相關(guān)聯(lián)的信息。因此,比如,用戶令牌20能夠包括用戶10的獨(dú)特標(biāo)識(shí)符。再比如,用戶令牌20能夠包括一個(gè)或多個(gè)用戶的組的列表,通常被稱為用戶10所屬的“用戶組”。在登陸行為11之后的某時(shí)刻,用戶10能夠直接地或間接地命令應(yīng)用40或在計(jì)算裝置100上執(zhí)行的其它的過(guò)程集訪問(wèn)文件或其他的數(shù)據(jù)組,例如通過(guò)圖I的系統(tǒng)99中示出的訪問(wèn)行為31。為響應(yīng)訪問(wèn)行為31,應(yīng)用40能夠嘗試訪問(wèn)所指示的數(shù)據(jù)。例如圖I的系統(tǒng)99中所示,應(yīng)用40能夠向操作系統(tǒng)134作出訪問(wèn)請(qǐng)求41,其請(qǐng)求操作系統(tǒng)向該應(yīng)用提供對(duì)文件(如文件50)的訪問(wèn)。在授權(quán)應(yīng)用40訪問(wèn)文件50之前,操作系統(tǒng)134將用戶令牌20中的信息和與訪問(wèn)請(qǐng)求所指向的文件50相關(guān)聯(lián)的訪問(wèn)控制列表60中的條目進(jìn)行比較。典型地,這樣的比較操作51是被作為操作系統(tǒng)134 —部分而執(zhí)行的訪問(wèn)校驗(yàn)過(guò)程或機(jī)制30所執(zhí)行。因此,雖然文件50以及相關(guān)聯(lián)的訪問(wèn)控制列表60都被顯示位于操作系統(tǒng)134的“外部”,但是這樣的放置只是為了說(shuō)明訪問(wèn)控制列表60和文件50的數(shù)據(jù)能夠被認(rèn)為是獨(dú)立于操作系統(tǒng)134的實(shí)體。如上所述,在下面進(jìn)一步詳細(xì)描述,訪問(wèn)控制列表60被可作為操作系統(tǒng)134的一部分的過(guò)程所管理和引用。此外,盡管與此處的公開(kāi)不是特別的相關(guān),但是在某些文件系統(tǒng)實(shí)施例中,文件50能同樣地被可作為操作系統(tǒng)134的一部分的過(guò)程所管理。不過(guò),文件50和訪問(wèn)控制列表60將與操作系統(tǒng)134分開(kāi)地被示出以意味著他們不完全是操作系統(tǒng)組件或構(gòu)架。返回到圖1,如果訪問(wèn)校驗(yàn)30例如通過(guò)比較行為51確定用戶10被允許訪問(wèn)文件50,那么操作系統(tǒng)134將文件的訪問(wèn)授權(quán)給代表用戶而運(yùn)行的應(yīng)用40??商鎿Q地,如果訪問(wèn)校驗(yàn)30確定用戶不被允許訪問(wèn)文件50,那么操作系統(tǒng)134將拒絕來(lái)自應(yīng)用40的訪問(wèn)請(qǐng)求41。所以,訪問(wèn)授權(quán)行為61在圖I中通過(guò)虛線顯示,用于表明其條件狀態(tài)。轉(zhuǎn)到圖2,將進(jìn)一步詳細(xì)地示出和描述圖I中系統(tǒng)99的示例性計(jì)算裝置100。圖2所示的示例性計(jì)算裝置100可包括但不限于一個(gè)或多個(gè)中央處理器(CPU) 120、可包括RAM132的系統(tǒng)存儲(chǔ)器130、以及將包括系統(tǒng)存儲(chǔ)器在內(nèi)的各種系統(tǒng)組件耦接到處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可為若干類型的總線結(jié)構(gòu)的任意一個(gè),包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線和使用了任何類型的總線架構(gòu)的局部總線。計(jì)算裝置100可選擇性地包括圖形硬件,例如用于虛擬用戶接口的顯示,包括但不限于圖像硬件接口 190以及顯示裝置191。此外,計(jì)算裝置100也能包括用戶接口元件,包括但不限于,能被用戶使用的鼠標(biāo)181以及鍵盤182以響應(yīng)通過(guò)顯示裝置191顯示的接口來(lái)生成輸入。用戶接口元件·能夠通過(guò)外圍接口 180可通信地耦接到系統(tǒng)總線121,并且出于提供用戶輸入的目的,用戶對(duì)用戶接口元件的使用可生成信號(hào),系統(tǒng)總線121將該信號(hào)運(yùn)送給作為操作系統(tǒng)134的一部分而執(zhí)行的計(jì)算機(jī)可執(zhí)行指令,進(jìn)而,該計(jì)算機(jī)可執(zhí)行指令視情況而提供這樣的用戶輸入到操作系統(tǒng)134或程序模塊135。計(jì)算裝置100典型地也包括了計(jì)算機(jī)可讀介質(zhì),包括能夠被計(jì)算裝置100訪問(wèn)的任何可用介質(zhì),并且包括易失的和非易失的介質(zhì)和可移除的和非可移除的介質(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)的介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括但不限于,RAM、ROM、EEPR0M、閃存或其他存儲(chǔ)器技術(shù),CD-ROM、數(shù)字多功能盤(DVD)或其他的光盤存儲(chǔ)器,磁盒、磁帶、磁盤存儲(chǔ)或其他磁性存儲(chǔ)裝置,或用于存儲(chǔ)想要的信息且能被計(jì)算裝置100訪問(wèn)的其他任何媒介。通信介質(zhì)典型地以調(diào)制的數(shù)據(jù)信號(hào)體現(xiàn)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù),并且包括任何信息遞送介質(zhì),所述調(diào)制的數(shù)據(jù)信號(hào)例如是載波或其他的傳輸機(jī)制。作為例子,而非限制,通信介質(zhì)包括有線介質(zhì),例如有線網(wǎng)絡(luò)或直接有線連接;無(wú)線介質(zhì),例如聲學(xué)、射頻、紅外以及其他無(wú)線介質(zhì)。上述任意的組合應(yīng)當(dāng)被包括在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。系統(tǒng)存儲(chǔ)器130包括易失的和/或非易失存儲(chǔ)器形式的計(jì)算機(jī)存儲(chǔ)介質(zhì),例如只讀存儲(chǔ)器(ROM) 131和前述的RAM 132。例如在啟動(dòng)過(guò)程中,包含用于幫助在計(jì)算裝置100的元件之間傳輸信息的基礎(chǔ)例程的基本輸入/輸出系統(tǒng)133 (BIOS)典型地存儲(chǔ)在ROM 131中。RAM 132典型地包含可被處理單元120立即訪問(wèn)和/或當(dāng)前正在被操作的數(shù)據(jù)和/或程序模塊。作為例子,而非限制,圖2示出了操作系統(tǒng)134與其他程序模塊135以及程序數(shù)據(jù) 136。計(jì)算裝置100也可包括其他的可移除的/非可移除的、易失的/非易失的計(jì)算機(jī)存儲(chǔ)介質(zhì)。僅作為例子,圖2示出了從非可移除的、非易失的磁性介質(zhì)讀取或?qū)懭氲椒强梢瞥摹⒎且资У拇判越橘|(zhì)的硬盤驅(qū)動(dòng)器141。其他的可以與示例性計(jì)算裝置一起使用的可移除的/非可移除的、易失的/非易失的計(jì)算機(jī)存儲(chǔ)介質(zhì)包括,但不限于,磁帶盒、閃存卡、數(shù)字多功能盤、數(shù)字視頻磁帶、固態(tài)RAM、固態(tài)ROM等等。硬盤驅(qū)動(dòng)器141典型地通過(guò)非可移除的存儲(chǔ)器接口,例如接口 140連接到系統(tǒng)總線121。上面所討論的以及圖2所示出的驅(qū)動(dòng)器和與它們相關(guān)聯(lián)的計(jì)算機(jī)存儲(chǔ)介質(zhì)為計(jì)算裝置100提供計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊以及其他數(shù)據(jù)的存儲(chǔ)。例如,圖2中,硬盤驅(qū)動(dòng)141被示出為存儲(chǔ)操作系統(tǒng)144、其他的程序模塊145以及程序數(shù)據(jù)146,其中后兩者可包括圖I中示出并將在下面進(jìn)行更為詳細(xì)的描述的示例性程序40部分或全部。注意到組件144、145和146既可以相同于、也可以不同于操作系統(tǒng)134、其他的程序模塊135和程序數(shù)據(jù)136。操作系統(tǒng)144、其他的程序模塊145和程序數(shù)據(jù)146在此被賦予不同的數(shù)字至少是為了示出它們是不同的副本。計(jì)算裝置100能夠在使用到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)的邏輯連接的網(wǎng)絡(luò)化環(huán)境下操作。計(jì)算裝置100被示出為通過(guò)網(wǎng)絡(luò)接口或適配器170連接到通用網(wǎng)絡(luò)連接171,該網(wǎng)絡(luò)接口或適配器170進(jìn)而連接到系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境下,被描繪為與計(jì)算裝置100相 關(guān)的程序模塊或其部分或者外圍的可以存儲(chǔ)在一個(gè)或多個(gè)其他計(jì)算裝置的存儲(chǔ)器中,所述一個(gè)或多個(gè)其他計(jì)算裝置通過(guò)通用網(wǎng)絡(luò)連接171與計(jì)算裝置100通信地耦接。將理解的是,所顯示的網(wǎng)絡(luò)連接是示例性的,并且也可以使用其他方法建立計(jì)算裝置之間的通信連接。如前所述,計(jì)算裝置100的操作系統(tǒng)134可實(shí)現(xiàn)訪問(wèn)控制機(jī)制,所述訪問(wèn)控制機(jī)制基于與數(shù)據(jù)相關(guān)聯(lián)的信息(例如更具體地,圖I中所示的訪問(wèn)控制列表60)限制對(duì)所述數(shù)據(jù)的特定集的訪問(wèn)。轉(zhuǎn)到圖3,訪問(wèn)控制列表60將被更詳細(xì)的顯示,其包括多個(gè)訪問(wèn)控制條目260,261和262。最初,如圖3中的系統(tǒng)200所示,在現(xiàn)存的訪問(wèn)控制機(jī)制和方法論的環(huán)境中,通過(guò)首先向例如用戶10提供利用證書數(shù)據(jù)保護(hù)文件50的選項(xiàng)201,證書數(shù)據(jù)可以保護(hù)例如文件50的數(shù)據(jù)組。系統(tǒng)200所示的特定的實(shí)施例中,保護(hù)文件50的選項(xiàng)201能夠由應(yīng)用來(lái)提供,例如應(yīng)用40。因此,在一個(gè)實(shí)施例中,利用證書數(shù)據(jù)保護(hù)文件的選項(xiàng)能夠由與這樣的文件相關(guān)聯(lián)的應(yīng)用來(lái)提供。在另一個(gè)實(shí)施例中,利用證書數(shù)據(jù)保護(hù)文件的選項(xiàng)能由獨(dú)立的應(yīng)用提供,例如安全工具應(yīng)用程序。在另一個(gè)實(shí)施例中,利用證書數(shù)據(jù)保護(hù)文件的選項(xiàng)可由操作系統(tǒng)134直接提供。當(dāng)用戶10被提供有利用證書數(shù)據(jù)保護(hù)文件的選項(xiàng)(例如選項(xiàng)201)時(shí),用戶10可通過(guò)提供其希望利用來(lái)限制對(duì)相關(guān)文件或其他數(shù)據(jù)組的訪問(wèn)的證書數(shù)據(jù)以響應(yīng)該選項(xiàng)。因此,如圖3的系統(tǒng)200中所示,用戶10能提供包括了用戶希望利用其來(lái)限制對(duì)文件50的訪問(wèn)的證書數(shù)據(jù)的響應(yīng)通信211。在一個(gè)實(shí)施例中,保護(hù)文件50的選項(xiàng)201通過(guò)用戶接口提供給用戶10,例如本可以通過(guò)圖2所示的顯示裝置191顯示給用戶的圖形用戶接口。相類似地,通過(guò)圖2所示的鼠標(biāo)181或鍵盤182而提供用戶的響應(yīng)211,也可通過(guò)其他的外圍設(shè)備,例如指紋讀取器、語(yǔ)音分析器、智能卡識(shí)別器或其他類似的如圖2所示的通過(guò)外圍接口180連接到計(jì)算裝置100的外圍設(shè)備。當(dāng)接收到來(lái)自用戶10的包含在響應(yīng)211內(nèi)的證書數(shù)據(jù)時(shí),接收應(yīng)用40可以提供這樣的證書數(shù)據(jù)給操作系統(tǒng)134,在將證書數(shù)據(jù)存儲(chǔ)到訪問(wèn)控制列表60中之前,操作系統(tǒng)的組件能夠模糊所提供的證書數(shù)據(jù)。因此,通過(guò)系統(tǒng)200所示的示例性的實(shí)施例中,所提供的證書數(shù)據(jù)如行為221所示可以被散列并存儲(chǔ)在訪問(wèn)控制列表60中。在另一個(gè)實(shí)施例中,如前面所指出的,來(lái)自用戶的響應(yīng)211可以直接指向操作系統(tǒng)134。例如,操作系統(tǒng)可以實(shí)現(xiàn)到用戶的安全通信通道,例如通過(guò)“安全桌面”或其他類似的用戶接口或其中的元件。在這樣的實(shí)施例中,用戶10例如通過(guò)通信211對(duì)證書數(shù)據(jù)的提供可以直接指向操作系統(tǒng)134。然后,操作系統(tǒng)134可以像之前一樣將所提供的證書數(shù)據(jù)散列并存儲(chǔ)在訪問(wèn)控制列表60中。更具體地,如本領(lǐng)域技術(shù)人員將知曉的,訪問(wèn)控制列表60可以包括單個(gè)訪問(wèn)控制條目,例如訪問(wèn)控制條目260、261和262,該訪問(wèn)控制條目可以單獨(dú)地指定一個(gè)或多個(gè)準(zhǔn)貝U,根據(jù)所述一個(gè)或多個(gè)準(zhǔn)則,可以授權(quán)或拒絕對(duì)文件50的訪問(wèn)。傳統(tǒng)地,訪問(wèn)控制條目,例如訪問(wèn)控制條目261和262,包括了用戶列表或用戶組,所述用戶列表或用戶組可以被授權(quán)對(duì)文件50的特定類型的訪問(wèn),例如讀訪問(wèn)、寫訪問(wèn)或執(zhí)行訪問(wèn),或者可以被拒絕對(duì)文件50的特定類型的訪問(wèn)。用戶10提供的證書數(shù)據(jù)可以通過(guò)例如創(chuàng)建訪問(wèn)控制條目260而被加入到訪問(wèn)控制列表60中,訪問(wèn)控制條目260可以基于包括證書數(shù)據(jù)的布爾條件來(lái)指定對(duì)文件50的訪問(wèn)權(quán)限。例如,在最簡(jiǎn)單的情況中,用戶10提供的證書數(shù)據(jù)可以通過(guò)創(chuàng)建訪問(wèn)控制條目260而被加入到訪問(wèn)控制列表60中。該訪問(wèn)控制條目260僅指明如果用戶提供了證書數(shù)據(jù),則任意用戶可以被授權(quán)訪問(wèn)文件50??商鎿Q地,訪問(wèn)控制條目260可以包括多元素的布爾條·件,例如,通過(guò)指定只有用戶屬于預(yù)定的用戶組且用戶提供了證書數(shù)據(jù),用戶才被允許訪問(wèn)文件50。在這種情況下,不屬于預(yù)定的用戶組的用戶甚至可能沒(méi)有被提供輸入證書數(shù)據(jù)的機(jī)會(huì),這樣的用戶無(wú)論如何都不會(huì)被允許訪問(wèn)文件50。本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到,證書數(shù)據(jù)能夠與已存在的訪問(wèn)控制要求以眾多方式相結(jié)合,包括創(chuàng)建新的訪問(wèn)控制條目,例如訪問(wèn)控制條目260,其只基于證書數(shù)據(jù)的提供來(lái)規(guī)定對(duì)文件50的某個(gè)訪問(wèn)類型;對(duì)現(xiàn)有的訪問(wèn)控制條目的修改,例如訪問(wèn)控制條目261和262,其中被那些已存在的訪問(wèn)控制條目所列舉的訪問(wèn)要求能夠被提供證書數(shù)據(jù)的要求而進(jìn)一步地限制;或所述訪問(wèn)控制要求的其他的組合和置換。在一個(gè)實(shí)施例中,由于訪問(wèn)控制列表60對(duì)于不應(yīng)當(dāng)獲知證書數(shù)據(jù)的用戶是可訪問(wèn)的,所以在單個(gè)訪問(wèn)控制條目(例如訪問(wèn)控制條目260、261和262)中的證書數(shù)據(jù)可以以模糊形式來(lái)指定。因此,例如,如圖3中系統(tǒng)200所示,在依賴于此證書數(shù)據(jù)的訪問(wèn)控制條目的創(chuàng)建或修改之前,用戶10通過(guò)通信211而提供的證書數(shù)據(jù)可以被操作系統(tǒng)134,或更具體地,被操作系統(tǒng)提供的機(jī)制所散列。這種情況下,依賴于此證書數(shù)據(jù)的訪問(wèn)控制條目將會(huì)不基于證書數(shù)據(jù)本身,而是基于被模糊的證書數(shù)據(jù)(例如所獲得的散列值)來(lái)指定布爾條件。如下面將要進(jìn)行進(jìn)一步描述,當(dāng)校驗(yàn)核實(shí)用戶是否被授權(quán)訪問(wèn)文件50時(shí),相關(guān)機(jī)制可利用相同的模糊化,例如相同的散列機(jī)制,從而將試圖訪問(wèn)文件的用戶所提供的證書數(shù)據(jù)模糊。所提供的證書數(shù)據(jù)的模糊版本可與存儲(chǔ)在相關(guān)訪問(wèn)控制條目中的證書數(shù)據(jù)的模糊版本進(jìn)行比較,以便確定用戶是否被允許訪問(wèn)文件。轉(zhuǎn)到圖4,其中所示的系統(tǒng)300圖示了示例性的一系列通信和行為,其在如用戶310的用戶嘗試訪問(wèn)如文件50的文件是被執(zhí)行,所述文件的訪問(wèn)被如訪問(wèn)控制列表60的訪問(wèn)控制列表所控制,所述訪問(wèn)控制表具有至少一個(gè)相關(guān)的如訪問(wèn)控制條目260的訪問(wèn)控制條目,所述訪問(wèn)控制條目至少部分基于用戶310所提供的證書數(shù)據(jù)。如上所詳細(xì)描述的,當(dāng)如用戶310的用戶登錄到計(jì)算裝置100,或以其他方式將自身識(shí)別給計(jì)算裝置100,操作系統(tǒng)134可以創(chuàng)建用戶令牌,例如用戶令牌20。出于示出所述機(jī)制的一個(gè)有用的方面的目的,圖4中示例性的系統(tǒng)300描述了不同于前述的用戶10的用戶310,其可使用用戶10的登錄信息,并從而可引起計(jì)算裝置100的操作系統(tǒng)134生成與前述的用戶令牌相同的用戶令牌20。例如,圖4所示的用戶310可以是圖I和3中所示的用戶10的孩子,并可以使用他們的父母的賬戶去登錄計(jì)算裝置100。相類似地,用戶310也可以是不正當(dāng)?shù)孬@取對(duì)用戶10的登錄信息的訪問(wèn)的惡意用戶,并且已經(jīng)作為用戶10登錄到計(jì)算裝置100。如本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到的,如果在用戶10和用戶310都登錄到計(jì)算裝置100時(shí)生成相同的用戶令牌20,現(xiàn)有的訪問(wèn)控制機(jī)制,例如由操作系統(tǒng)134所實(shí)現(xiàn)的那些,將不能夠?qū)蓚€(gè)人類用戶10和310區(qū)分開(kāi),因?yàn)閷?duì)于這樣現(xiàn)有的訪問(wèn)控制機(jī)制來(lái)說(shuō),他們看起來(lái)是同一用戶,即與用戶令牌20相關(guān)的用戶。因此,用戶10可能想要限制為只對(duì)他們自己的信息,實(shí)際上將不會(huì)被這樣限制。例如,如果用戶10已指定文件50只被該用戶訪問(wèn),例如通過(guò)在與文件相關(guān)聯(lián)的訪問(wèn)控制類表中提供訪問(wèn)控制條目,該訪問(wèn)控制條目指定僅用戶10將被允許訪問(wèn),則使用與用戶10相同的登錄證書的用戶310將會(huì)被允許訪問(wèn)文件50,這是因?yàn)橛脩袅钆?0將會(huì)指明用戶310與用戶10相同,其中用戶令牌20的信息將會(huì)同訪問(wèn)控制列表60進(jìn)行比較以確定是否授權(quán)訪問(wèn)文件50。這種情況下,父母例如將不能限制對(duì)使用相同的賬號(hào)的他們的孩子可訪問(wèn)的信息,個(gè)人也不能夠相對(duì)于惡意用戶進(jìn)一步保護(hù)特定 的數(shù)據(jù)組,這些惡意用戶可能不正當(dāng)?shù)孬@得對(duì)該個(gè)人賬戶的訪問(wèn)。然而,至少一個(gè)如訪問(wèn)控制條目260的相關(guān)訪問(wèn)控制條目的存在能夠防止這樣的困難,其中所述訪問(wèn)控制條目的訪問(wèn)控制是基于證書數(shù)據(jù)。例如,如圖4的系統(tǒng)300所示,即使用戶310作為用戶10登錄到計(jì)算裝置100,引起計(jì)算設(shè)備100的操作系統(tǒng)134生成相同的用戶令牌20,但是如果與文件50相關(guān)聯(lián)的訪問(wèn)控制列表60包括至少一個(gè)如訪問(wèn)控制條目260的相關(guān)訪問(wèn)控制條目,其中所述訪問(wèn)控制條目的訪問(wèn)控制是基于證書數(shù)據(jù),則例如由操作系統(tǒng)134實(shí)現(xiàn)的訪問(wèn)控制機(jī)制仍然能夠阻止用戶310訪問(wèn)文件50。更具體地,用戶310最初可通過(guò)例如使用應(yīng)用40或其他的與執(zhí)行計(jì)算機(jī)可執(zhí)行指令的有關(guān)過(guò)程,來(lái)嘗試訪問(wèn)文件50。因此,如圖4中系統(tǒng)300所示,用戶310能夠執(zhí)行訪問(wèn)文件行為301,該301行為造成如訪問(wèn)請(qǐng)求311所示的應(yīng)用40使用操作系統(tǒng)134來(lái)請(qǐng)求訪問(wèn)文件50。為響應(yīng)訪問(wèn)請(qǐng)求311,操作系統(tǒng)134可使用上述的訪問(wèn)校驗(yàn)機(jī)制30來(lái)驗(yàn)證請(qǐng)求訪問(wèn)的應(yīng)用40是否與用戶令牌20有關(guān),當(dāng)與訪問(wèn)控制列表60中的信息進(jìn)行比較,從而將會(huì)揭示文件50是否被授權(quán)訪問(wèn)。在圖4中系統(tǒng)300所示的示例性的實(shí)施例中,訪問(wèn)校驗(yàn)機(jī)制30所進(jìn)行的比較行為321可發(fā)現(xiàn)用戶令牌20并沒(méi)有包括訪問(wèn)文件50所要求的相關(guān)的證書數(shù)據(jù),如前面所詳細(xì)描述的訪問(wèn)控制條目260所指定證書數(shù)據(jù)。出于當(dāng)前說(shuō)明性的示例的目的,假設(shè)訪問(wèn)控制條目261和262包括了與用戶令牌20無(wú)關(guān)的信息,這些信息,例如,可指定與用戶令牌20所識(shí)別的用戶所不同的用戶或用戶組的訪問(wèn)權(quán)利。而作為對(duì)比,訪問(wèn)控制條目260可與用戶令牌20相關(guān),要么是通過(guò)明確地列舉用戶令牌20所識(shí)別的用戶,要么是直接地、或通過(guò)用戶組成員資格、或通過(guò)列舉所有用戶、或相反地不限制可適用的用戶。在前一種情況下,訪問(wèn)控制條目260可要求嘗試訪問(wèn)文件50的用戶為特定的用戶或是特定的用戶組的成員,還可要求用戶能夠輸入訪問(wèn)控制條目中的證書數(shù)據(jù)。在后一種情況下,訪問(wèn)控制條目260可僅僅要求用戶能夠輸入證書數(shù)據(jù),以及提供正確的證書數(shù)據(jù)就足夠去獲取對(duì)文件50的訪問(wèn),而與用戶令牌20所識(shí)別的特定用戶無(wú)關(guān)。一旦訪問(wèn)校驗(yàn)機(jī)制30確定如訪問(wèn)控制條目260的有關(guān)的訪問(wèn)控制條目為用戶令牌20識(shí)別的用戶而存在;相關(guān)訪問(wèn)控制條目要求提供特定證書數(shù)據(jù);與嘗試訪問(wèn)文件50的應(yīng)用40相關(guān)聯(lián)的用戶令牌20并沒(méi)有包括特定的證書數(shù)據(jù),訪問(wèn)校驗(yàn)機(jī)制返回訪問(wèn)拒絕通知331給應(yīng)用40。訪問(wèn)拒絕通知331可與傳統(tǒng)的訪問(wèn)拒絕通知不同,它可進(jìn)一步通知應(yīng)用40訪問(wèn)被拒絕是因?yàn)橐笞C書數(shù)據(jù)且證書數(shù)據(jù)還沒(méi)成為用戶令牌20的一部分。如那些可以支持執(zhí)行上述機(jī)制的操作系統(tǒng)所提供的接口的兼容應(yīng)用可以識(shí)別特定類型的訪問(wèn)拒絕通知331,還可通過(guò)請(qǐng)求341來(lái)請(qǐng)求來(lái)自用戶310的已被要求的證書數(shù)據(jù)。在一個(gè)實(shí)施例中,請(qǐng)求341通過(guò)應(yīng)用40或操作系統(tǒng)134的用戶接口來(lái)提供,如通過(guò)圖2中所示的顯示裝置191來(lái)顯示。為了響應(yīng)請(qǐng)求341,用戶310可通過(guò)通信351來(lái)向應(yīng)用40提供證書數(shù)據(jù)。如前面所指出的,例如通過(guò)通信351的證書數(shù)據(jù)的提供,可經(jīng)由傳統(tǒng)的用戶輸入裝置來(lái)發(fā)生,例如圖2中所示的鼠標(biāo)181或鍵盤182。同樣如前面所指出的,例如經(jīng)由通信351的證書數(shù)據(jù)的提供,還可通過(guò)專門的用戶輸入裝置來(lái)發(fā)生,例如指紋識(shí)別器、語(yǔ)音分析器、智能卡識(shí)別器或如圖2所示的通過(guò)外圍接口 180連接到計(jì)算裝置100的裝置的其他類似的設(shè)備。用戶310通過(guò)通信351提供的證書數(shù)據(jù)可以被最初地接收這個(gè)通信的應(yīng)用40提 供給操作系統(tǒng),用于存儲(chǔ)在用戶令牌20中。隨后,應(yīng)用40可以發(fā)起與訪問(wèn)請(qǐng)求311類似的訪問(wèn)嘗試。就如同上面所述的訪問(wèn)請(qǐng)求311的情況,這樣的隨后的訪問(wèn)請(qǐng)求(為了維持易讀性圖4中沒(méi)有示出)能夠再一次觸發(fā)如比較321的比較。該隨后的比較(為了維持易讀性圖4中沒(méi)有示出)可以揭示用戶令牌20現(xiàn)在包括了通過(guò)與文件50關(guān)聯(lián)的訪問(wèn)控制列表60有關(guān)的訪問(wèn)控制條目260所要求的證書數(shù)據(jù)。如前所述,可作為如訪問(wèn)控制條目260的訪問(wèn)控制條目的一部分的證書數(shù)據(jù)的有關(guān)信息可被散列或以其他方式被模糊。因此,在用戶310例如經(jīng)由通信351提供的證書數(shù)據(jù)和存儲(chǔ)在用戶令牌20的證書數(shù)據(jù)之間的比較中,訪問(wèn)校驗(yàn)機(jī)制30可以自行散列或以其他方式模糊用戶令牌20的證書數(shù)據(jù),以為了精確比較用戶令牌20的證書數(shù)據(jù)和訪問(wèn)控制條目260所指定的證書數(shù)據(jù)。在一個(gè)實(shí)施例中,操作系統(tǒng)134可使用預(yù)定的模糊機(jī)制,例如已知的標(biāo)準(zhǔn)化的,散列機(jī)制去將如訪問(wèn)控制條目260的訪問(wèn)控制條目中指定的證書數(shù)據(jù)進(jìn)行模糊。隨后,為了執(zhí)行精確的比較,訪問(wèn)控制機(jī)制30在存儲(chǔ)在用戶令牌20中的證書數(shù)據(jù)的模糊中可以使用那些相同的預(yù)定的模糊機(jī)制。在另一個(gè)實(shí)施例中,存儲(chǔ)在用戶令牌20中的證書數(shù)據(jù)可以已經(jīng)模糊的形式存儲(chǔ),這樣應(yīng)用在用戶令牌20中的證書數(shù)據(jù)的模糊與應(yīng)用在如訪問(wèn)控制條目260的訪問(wèn)控制條目中的證書數(shù)據(jù)的模糊相同。在這樣的一個(gè)實(shí)施例中,訪問(wèn)校驗(yàn)機(jī)制30只需要與原始模糊數(shù)據(jù)比較,例如原始散列值,以確定用戶310例如經(jīng)由通信351提供的證書數(shù)據(jù)是否匹配與如訪問(wèn)控制條目260的相關(guān)的訪問(wèn)控制條目中的證書數(shù)據(jù)。在又一個(gè)實(shí)施例中,用戶310提供的證書數(shù)據(jù)可以被操作系統(tǒng)134以一種保護(hù)的方式存儲(chǔ)在用戶令牌20中,這樣訪問(wèn)校驗(yàn)機(jī)制30可以首先解除證書數(shù)據(jù)的保護(hù)并隨后執(zhí)行上面所述的比較。舉個(gè)例子,操作系統(tǒng)可以使用,例如,與訪問(wèn)校驗(yàn)機(jī)制相關(guān)的公鑰來(lái)加密用戶310提供的證書數(shù)據(jù),該證書數(shù)據(jù)能夠以加密形式存儲(chǔ)在用戶令牌20中,這樣訪問(wèn)檢驗(yàn)機(jī)制能夠隨后使用訪問(wèn)校驗(yàn)機(jī)制提供的私鑰來(lái)解密所加密的證書數(shù)據(jù)。在一個(gè)實(shí)施例中,用戶令牌20可包括或可被擴(kuò)展到包括以公知的所謂“名值對(duì)”的形式存儲(chǔ)的信息。在這樣的一個(gè)實(shí)施例中,用戶310提供的證書數(shù)據(jù)能夠以與合適的“名”相關(guān)聯(lián)的“值”進(jìn)行存儲(chǔ),例如名“口令”。一個(gè)用戶輸入證書數(shù)據(jù)并獲取對(duì)如文件50的文件的訪問(wèn),而之后有一個(gè)不同的用戶使用第一個(gè)用戶在計(jì)算裝置100上的會(huì)話而不適當(dāng)?shù)厝カ@取對(duì)文件50的訪問(wèn),為了防止這種情況的可能性,出于安全的目的,存儲(chǔ)在用戶令牌20中的證書數(shù)據(jù)可在有限量的時(shí)間內(nèi)保留。例如在一個(gè)實(shí)施例中,存儲(chǔ)在用戶令牌20中的證書數(shù)據(jù)在與對(duì)文件50的最初訪問(wèn)的所需要的時(shí)間相同的時(shí)間內(nèi)存儲(chǔ)。當(dāng)對(duì)文件50的訪問(wèn)傳統(tǒng)上只進(jìn)行一次的時(shí)候,這樣的實(shí)施例可以是有用的。另一種選擇,如果頻繁的執(zhí)行對(duì)文件50的訪問(wèn),例如文件50是一個(gè)根據(jù)用戶310的輸入而周期性的保存的文字處理應(yīng)用,只要訪問(wèn)文件50正活躍地被應(yīng)用40訪問(wèn),或者只要應(yīng)用40持續(xù)執(zhí)行,所需要的證書數(shù)據(jù)可以保留在用戶20中。在又一個(gè)可選擇的實(shí)施例中,存儲(chǔ)在用戶令牌20中的證書數(shù)據(jù)可以在如計(jì)算裝置100的計(jì)算裝置上的用戶會(huì)話的持續(xù)時(shí)間內(nèi)保存。然而在這樣的一個(gè)實(shí)施例中,用戶可能記得在授權(quán)如用戶310的另一個(gè)用戶的訪問(wèn)之前結(jié)束他們的會(huì)話。在共享登錄的情況下,例如孩子共享父母的賬戶,跟隨著父母的登錄的注銷可造成證書數(shù)據(jù)不再存在于用戶令牌20,因此,在仍然維持基于證書數(shù)據(jù)的訪問(wèn)控制的同時(shí),將允許多個(gè)個(gè)體共享相同的賬戶,其中只有他們中的一個(gè)擁有證書數(shù)據(jù)。在還進(jìn)一步的實(shí)施例中,為了適應(yīng)訪問(wèn)繼承,其中孩子對(duì)象繼承他們父母的訪問(wèn)要求,當(dāng)對(duì)父母對(duì)象的訪問(wèn)持續(xù),證書數(shù)據(jù)可被保留在用戶令牌20中。因此,例如,如果用·戶310要去打開(kāi)一個(gè)文件夾,其中文件夾中的每個(gè)文件繼承了文件夾的要求,即只有輸入了正確的證書數(shù)據(jù)的用戶才能被授權(quán)訪問(wèn),則這樣的證書數(shù)據(jù)可保持與用戶令牌20在一起直到文件夾被關(guān)閉,以避免每次用戶打開(kāi)該文件夾中的任何文件時(shí),都提示用戶提供證書數(shù)據(jù)。在一個(gè)實(shí)施例中,對(duì)用戶令牌20中的證書數(shù)據(jù)的保留的時(shí)間限制能夠由操作系統(tǒng)134來(lái)施行。在這樣一個(gè)實(shí)施例中,提供證書數(shù)據(jù)給操作系統(tǒng)134以保留在用戶令牌20的應(yīng)用,如應(yīng)用40,可被要求對(duì)操作系統(tǒng)指明所提供的證書數(shù)據(jù)要被保留在用戶令牌中的時(shí)間的長(zhǎng)度??商鎿Q地,例如通過(guò)觀測(cè)應(yīng)用40執(zhí)行的行動(dòng),只要操作系統(tǒng)134認(rèn)為需要,操作系統(tǒng)134就可以簡(jiǎn)單地在用戶令牌20中保留所提供的證書數(shù)據(jù)。在一個(gè)可替換的實(shí)施例中,提供證書數(shù)據(jù)給操作系統(tǒng)134的應(yīng)用可施行對(duì)保留證書數(shù)據(jù)和用戶令牌20的時(shí)間限制,例如應(yīng)用40。在這樣的實(shí)施例中,應(yīng)用,例如應(yīng)用40,可在最好的位置知曉什么時(shí)候不再要求證書數(shù)據(jù)并可以從用戶令牌20中刪除證書數(shù)據(jù)。提供證書數(shù)據(jù)給操作系統(tǒng)134以用于保留在用戶令牌20中的應(yīng)用可例如通過(guò)將證書數(shù)據(jù)和當(dāng)證書數(shù)據(jù)被提供用于加入用戶令牌20的時(shí)間關(guān)聯(lián)起來(lái),而進(jìn)一步地對(duì)所提供的證書數(shù)據(jù)“印時(shí)戳”。這樣的時(shí)戳既可以被操作系統(tǒng)134參考,也可以被如應(yīng)用40的應(yīng)用來(lái)參考,以確定時(shí)間限制是否已經(jīng)超期以及證書數(shù)據(jù)是否應(yīng)被丟棄或不再使用。為了更加安全,盡管就用戶310而言,可能會(huì)產(chǎn)生低效率,但用戶提供的證書數(shù)據(jù)可保留在用戶令牌20中僅足夠長(zhǎng)到實(shí)現(xiàn)與證書數(shù)據(jù)的提供相關(guān)聯(lián)的訪問(wèn)請(qǐng)求。在這樣的實(shí)施例中,每一個(gè)隨后的訪問(wèn)可造成請(qǐng)求用戶重新輸入證書數(shù)據(jù),而不管與訪問(wèn)之間的中斷的持續(xù)時(shí)間。轉(zhuǎn)到圖5,其中示出的流程圖400示出了示例性的一系列步驟,這些步驟可以被操作系統(tǒng)134執(zhí)行,以及,更具體地,被訪問(wèn)校驗(yàn)機(jī)制30或其他的有關(guān)聯(lián)機(jī)制執(zhí)行。首先,在步驟410,訪問(wèn)請(qǐng)求被例如操作系統(tǒng)134所接收,其可以觸發(fā)后續(xù)的步驟。之后,在步驟420,步驟410中的訪問(wèn)請(qǐng)求所指向的對(duì)象,例如在之前的圖中所示的文件50的訪問(wèn)策略被引用。如前所指出的,這樣的訪問(wèn)策略可以是訪問(wèn)控制列表的形式,例如訪問(wèn)控制列表60,其包括了一個(gè)或多個(gè)的訪問(wèn)控制條目,如訪問(wèn)控制條目260、261和262,每一個(gè)訪問(wèn)控制條目在前面的附圖中顯示并在上文描述。在步驟430中,基于被請(qǐng)求的對(duì)象的訪問(wèn)策略與進(jìn)行步驟410的訪問(wèn)請(qǐng)求所代表的用戶的用戶令牌之間的比較來(lái)確定,用戶令牌中所識(shí)別的用戶是否與被請(qǐng)求對(duì)象的訪問(wèn)策略所列舉的任何用戶相同或存在于所列舉的任何用戶組中。如前面所述,例如那些只要求提供證書數(shù)據(jù)的一些訪問(wèn)控制條目對(duì)于特定用戶或用戶組可以要么隱含地、要么明確地是不受約束的。在這樣的情況下,那些訪問(wèn)控制條目被認(rèn)為滿足了步驟430的校驗(yàn)。如果發(fā)現(xiàn)沒(méi)有訪問(wèn)控制條目滿足步驟430的校驗(yàn),那么處理過(guò)程轉(zhuǎn)到步驟480,此時(shí),在步驟410中請(qǐng)求該訪問(wèn)的計(jì)算機(jī)可執(zhí)行指令被通知訪問(wèn)被拒絕。另一方面,如果在步驟430所確定的,至少一個(gè)訪問(wèn)控制條目與用戶令牌所識(shí)別的用戶相關(guān),則在步驟440進(jìn)行進(jìn)一步的確定。更具體地,步驟440中的確定能夠識(shí)別,對(duì)于用戶令牌所識(shí)別的用戶,是否要求證書數(shù)據(jù)訪問(wèn)步驟410中所請(qǐng)求訪問(wèn)的對(duì)象。如果在 步驟440確定沒(méi)有要求這樣的證書數(shù)據(jù),那么處理進(jìn)行至步驟470,此時(shí)在步驟410中請(qǐng)求訪問(wèn)的計(jì)算機(jī)可執(zhí)行指令被授權(quán)訪問(wèn)。但是如果在步驟440中確定要求該證書數(shù)據(jù),那么處理可以進(jìn)行至步驟450,此時(shí)所要求的證書數(shù)據(jù)可以與用戶令牌中存在的任何證書數(shù)據(jù)作比較。如果在步驟450中確定所要求的證書數(shù)據(jù)事實(shí)上是用戶令牌中的一部分,那么處理可以再進(jìn)行至步驟470,其中對(duì)所要求的對(duì)象的訪問(wèn)可以被授權(quán)。但是,如果步驟450中確定用戶令牌并沒(méi)有包括所要求的證書數(shù)據(jù),那么處理可以進(jìn)行步驟460,此時(shí)在步驟410中請(qǐng)求該訪問(wèn)的計(jì)算機(jī)可執(zhí)行指令將被通知訪問(wèn)將被拒絕。除此之外,如前面所描述的,步驟460中的通知可以進(jìn)一步向請(qǐng)求訪問(wèn)的計(jì)算機(jī)可執(zhí)行指令指明要求證書數(shù)據(jù)。如上所述,且將參考圖6中的流程圖500所示,這樣的計(jì)算機(jī)可執(zhí)行指令可以使用在步驟460中提供的通知中的證書數(shù)據(jù)請(qǐng)求的方面去請(qǐng)求來(lái)自用戶的證書數(shù)據(jù),并再一次嘗試訪問(wèn)。轉(zhuǎn)到圖6,其中所示的流程圖500示出了示例性的一系列步驟,這些步驟可以被試圖訪問(wèn)數(shù)據(jù)的計(jì)算機(jī)可執(zhí)行指令執(zhí)行,所述步驟與上面描述的基于證書數(shù)據(jù)的提供的訪問(wèn)控制機(jī)制兼容。最初,在步驟510,發(fā)起訪問(wèn)請(qǐng)求。這樣的訪問(wèn)請(qǐng)可以與圖5所示的流程圖400中的步驟410中所接收的訪問(wèn)請(qǐng)求相同。隨后,在步驟520中確定訪問(wèn)是否被授權(quán)。如果在步驟520中確定了訪問(wèn)被授權(quán),比如本要在圖5示出的流程圖400中的步驟470中所發(fā)生的,那么處理可以在步驟570中進(jìn)行對(duì)訪問(wèn)請(qǐng)求510中所指向的的對(duì)象的訪問(wèn)。但是,如果,在步驟520中確定訪問(wèn)沒(méi)有被授權(quán),那么處理可以進(jìn)行至步驟530。在步驟520既可以基于訪問(wèn)被拒絕,而確定訪問(wèn)沒(méi)有被授權(quán),就像圖5的流程圖400中的步驟480的部分所作出的拒絕,也可以基于如圖5的流程圖400中的步驟460的部分所指出的那樣,因?yàn)槿鄙俸线m的證書數(shù)據(jù)而確定訪問(wèn)沒(méi)有被授權(quán)。在步驟520中,如果確定訪問(wèn)沒(méi)有被授權(quán),處理可以進(jìn)行至步驟530,此時(shí)確定證書數(shù)據(jù)是否被要求,就如同,例如圖5的流程圖400中步驟460中的部分所指出的那樣。如果在步驟530中,確定不要求證書數(shù)據(jù),那么在步驟560中,將如同圖5的流程圖400中的步驟480中的部分所作出的拒絕訪問(wèn)傳送給用戶,或其他合適的訪問(wèn)發(fā)起過(guò)程??商鎿Q地,如果在步驟530中,確定要求證書數(shù)據(jù),那么處理可以進(jìn)行至步驟540,其中,將會(huì)要求用戶或其他的合適的訪問(wèn)發(fā)起過(guò)程的此證書數(shù)據(jù)。在步驟550中,為了響應(yīng)步驟540中的請(qǐng)求,不管提供什么樣的證書數(shù)據(jù),隨后都可被存儲(chǔ)在用戶令牌中。更具體地,如同本領(lǐng)域技術(shù)人員所知道的,在步驟550中,所接收的證書數(shù)據(jù)可以進(jìn)而被提供給操作系統(tǒng)、或其他相關(guān)的過(guò)程以便在用戶令牌中存儲(chǔ)證書數(shù)據(jù)。隨后,處理可以返回到步驟510,此時(shí)另一個(gè)訪問(wèn)請(qǐng)求可被發(fā)起。如果響應(yīng)于步驟540提供的且在步驟550中被存儲(chǔ)在用戶令牌中的證書數(shù)據(jù)適用于正在被訪問(wèn)的對(duì)象,那么在步驟510中的后續(xù)訪問(wèn)請(qǐng)求將造成訪問(wèn)被授權(quán),如步驟520中所確定的那樣,并因此使訪問(wèn)能夠進(jìn)行,如步驟570所示。
從上面說(shuō)明書中可以看出,已經(jīng)列舉了用于將現(xiàn)有訪問(wèn)控制擴(kuò)展為至少部分基于證書數(shù)據(jù)來(lái)提供訪問(wèn)控制的訪問(wèn)機(jī)制。鑒于對(duì)在此描述的主題的許多可能的變體,我們把所有可以落入下面的權(quán)利要求及其等價(jià)物的范圍內(nèi)的實(shí)施例作為我們的發(fā)明要求保護(hù)。
權(quán)利要求
1.一個(gè)或多個(gè)包括用于控制訪問(wèn)數(shù)據(jù)組的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),所述數(shù)據(jù)組與訪問(wèn)控制列表相關(guān)聯(lián),所述訪問(wèn)控制列表包括一個(gè)或多個(gè)訪問(wèn)控制條目,所述計(jì)算機(jī)可執(zhí)行指令執(zhí)行的步驟包括 從訪問(wèn)計(jì)算機(jī)可執(zhí)行指令接收訪問(wèn)所述數(shù)據(jù)組的請(qǐng)求; 在所述一個(gè)或多個(gè)訪問(wèn)控制條目中搜索與用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目,所述用戶通過(guò)與所述訪問(wèn)計(jì)算機(jī)可執(zhí)行指令相關(guān)聯(lián)的用戶令牌識(shí)別; 如果所述與所述用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目指定了證書數(shù)據(jù),那么將與所述用戶令牌相關(guān)聯(lián)的證書數(shù)據(jù),同所述與所述用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目所指定的證書數(shù)據(jù)進(jìn)行比較;以及 如果所述比較顯示,與所述用戶令牌相關(guān)聯(lián)的所述證書數(shù)據(jù)不同于與所述用戶有關(guān)的 所述一個(gè)或多個(gè)訪問(wèn)控制條目所指定的所述證書數(shù)據(jù),則拒絕所述請(qǐng)求,并將訪問(wèn)所述數(shù)據(jù)組所要求的所述證書數(shù)據(jù)通知所述訪問(wèn)計(jì)算機(jī)可執(zhí)行指令。
2.如權(quán)利要求I中所述的計(jì)算機(jī)可讀介質(zhì),其中用于比較的所述計(jì)算機(jī)可執(zhí)行指令包括用于使用模糊機(jī)制來(lái)使與所述用戶令牌相關(guān)聯(lián)的所述證書數(shù)據(jù)模糊的計(jì)算機(jī)可執(zhí)行指令,所述模糊機(jī)制等同于用來(lái)模糊與所述用戶有關(guān)的所述一個(gè)或多個(gè)訪問(wèn)控制條目所指定的所述證書數(shù)據(jù)的模糊機(jī)制。
3.如權(quán)利要求I中所述的計(jì)算機(jī)可讀介質(zhì),其中用于比較的所述計(jì)算機(jī)可執(zhí)行指令包括用于解密與所述用戶令牌相關(guān)聯(lián)的所述證書數(shù)據(jù)的計(jì)算機(jī)可執(zhí)行指令。
4.如權(quán)利要求I中所述的計(jì)算機(jī)可讀介質(zhì),其中與所述用戶有關(guān)的所述一個(gè)或多個(gè)訪問(wèn)控制條目包括布爾條件語(yǔ)句,所述布爾條件語(yǔ)句包括至少一個(gè)對(duì)所述證據(jù)數(shù)據(jù)的條件引用。
5.權(quán)利要求I中所述的計(jì)算機(jī)可讀介質(zhì),進(jìn)一步包括執(zhí)行以下步驟的計(jì)算機(jī)可執(zhí)行指令,包括接收所述證書數(shù)據(jù)并生成與所述用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目中的至少一個(gè),以便在訪問(wèn)所述數(shù)據(jù)組的所述請(qǐng)求被接收時(shí),如果所接收的證書數(shù)據(jù)與關(guān)聯(lián)于所述訪問(wèn)計(jì)算機(jī)可執(zhí)行指令的所述用戶令牌相關(guān)聯(lián),則指定授權(quán)對(duì)所述數(shù)據(jù)組的訪問(wèn)。
6.如權(quán)利要求5中所述的計(jì)算機(jī)可讀介質(zhì),其中用于生成所述一個(gè)或多個(gè)訪問(wèn)控制條目中的至少一個(gè)的所述計(jì)算機(jī)可執(zhí)行指令包括用于在所生成的所述一個(gè)或多個(gè)訪問(wèn)控制條目中的至少一個(gè)中列舉用戶組的計(jì)算機(jī)可執(zhí)行指令,以使得所生成的所述一個(gè)或多個(gè)訪問(wèn)控制條目中的至少一個(gè)指定了,如果所接收的證書數(shù)據(jù)與關(guān)聯(lián)于所述訪問(wèn)計(jì)算機(jī)可執(zhí)行指令的所述用戶令牌相關(guān)聯(lián)、且與所述訪問(wèn)計(jì)算機(jī)可執(zhí)行指令相關(guān)聯(lián)的所述用戶指令所識(shí)別的用戶在所列舉的用戶組中,那么對(duì)所述數(shù)據(jù)組的訪問(wèn)被授權(quán)。
7.—種訪問(wèn)與訪問(wèn)控制列表相關(guān)聯(lián)的數(shù)據(jù)組的方法,所述訪問(wèn)控制列表包括一個(gè)或多個(gè)訪問(wèn)控制條目,所述方法包括以下步驟 請(qǐng)求訪問(wèn)所述數(shù)據(jù)組; 在所述一個(gè)或多個(gè)訪問(wèn)控制條目中搜索與用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目,所述用戶通過(guò)與所述訪問(wèn)請(qǐng)求相關(guān)聯(lián)的用戶令牌被識(shí)別; 如果所述與所述用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目指定了證書數(shù)據(jù),那么將與所述用戶令牌相關(guān)聯(lián)的證書數(shù)據(jù),同所述與所述用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目所指定的證書數(shù)據(jù)進(jìn)行比較;以及如果所述比較顯示,與所述用戶令牌相關(guān)聯(lián)的所述證書數(shù)據(jù)不同于與所述用戶有關(guān)的所述一個(gè)或多個(gè)訪問(wèn)控制條目所指定的所述證書數(shù)據(jù),則生成訪問(wèn)拒絕通知,其中包括了要求證書數(shù)據(jù)以訪問(wèn)所述數(shù)據(jù)組的指示; 響應(yīng)于所接收的所述拒絕訪問(wèn)的通知,請(qǐng)求所述證書數(shù)據(jù); 響應(yīng)于請(qǐng)求所述證書數(shù)據(jù),接收收到的證書數(shù)據(jù); 在時(shí)間有限的時(shí)間量?jī)?nèi),將所接收的證書數(shù)據(jù)與所述用戶令牌相關(guān)聯(lián); 在后續(xù)時(shí)間內(nèi),請(qǐng)求訪問(wèn)所述數(shù)據(jù)組; 其中在所述時(shí)間有限的時(shí)間量只能長(zhǎng)至使得與所請(qǐng)求的訪問(wèn)和后續(xù)請(qǐng)求的訪問(wèn)相關(guān)聯(lián)的訪問(wèn)能夠進(jìn)行。
8.如權(quán)利要求7中所述的方法,其中所述比較包括使用模糊機(jī)制將與所述用戶令牌相關(guān)聯(lián)的所述證書數(shù)據(jù)模糊,所述模糊機(jī)制等同于用來(lái)模糊與所述用戶有關(guān)的一個(gè)或多個(gè)所述訪問(wèn)控制條目所指定的所述證書數(shù)據(jù)的模糊機(jī)制。
9.如權(quán)利要求7中所述的方法,其中與所述用戶有關(guān)的所述一個(gè)或多個(gè)訪問(wèn)控制條目包括布爾條件語(yǔ)句,所述布爾條件語(yǔ)句包括至少一個(gè)所述證據(jù)數(shù)據(jù)的條件引用。
10.如權(quán)利要求7中所述的方法,進(jìn)一步包括以下步驟首先接收初始證書數(shù)據(jù);并生成與所述用戶有關(guān)的一個(gè)或多個(gè)訪問(wèn)控制條目中的至少一個(gè),以便當(dāng)發(fā)生訪問(wèn)請(qǐng)求時(shí),如果所述初始證書數(shù)據(jù)與關(guān)聯(lián)于所述訪問(wèn)請(qǐng)求的所述用戶令牌相關(guān)聯(lián),便指定授權(quán)對(duì)所述數(shù)據(jù)組的訪問(wèn)。
11.如權(quán)利要求7中所述的方法,其中通過(guò)所述時(shí)間有限的時(shí)間量實(shí)現(xiàn)的訪問(wèn)包括指向所述數(shù)據(jù)組中的一個(gè)或多個(gè)孩子對(duì)象的訪問(wèn)。
12.如權(quán)利要求7中所述的方法,其中通過(guò)所述時(shí)間有限的時(shí)間量實(shí)現(xiàn)的訪問(wèn)只包含了后續(xù)請(qǐng)求的訪問(wèn)。
全文摘要
基于嘗試訪問(wèn)數(shù)據(jù)的用戶是否在被允許訪問(wèn)數(shù)據(jù)的用戶中被識(shí)別出來(lái)的現(xiàn)有控制對(duì)數(shù)據(jù)的訪問(wèn)的機(jī)制可以擴(kuò)展到基于用戶或與其相關(guān)聯(lián)的過(guò)程所提供的證書數(shù)據(jù)的進(jìn)一步的訪問(wèn)控制。訪問(wèn)控制條目可基于包含那些引用的證書數(shù)據(jù)的布爾條件來(lái)限制訪問(wèn),以使得只對(duì)提供了證書數(shù)據(jù)的特定用戶,或可替換地,對(duì)提供了證書數(shù)據(jù)的任意用戶授權(quán)該訪問(wèn)。出于安全目的,可以以模糊的形式在訪問(wèn)控制信息中指定所引用的證書數(shù)據(jù)。當(dāng)用戶提供證書數(shù)據(jù)時(shí),與用戶相關(guān)聯(lián)的信息,例如用戶令牌,可以暫時(shí)地更新以包含證書數(shù)據(jù),以便使得能夠訪問(wèn)數(shù)據(jù),但阻止這樣的訪問(wèn)在過(guò)長(zhǎng)時(shí)間內(nèi)保持開(kāi)放。
文檔編號(hào)G06F15/00GK102792313SQ201180014760
公開(kāi)日2012年11月21日 申請(qǐng)日期2011年3月16日 優(yōu)先權(quán)日2010年3月19日
發(fā)明者J.B.漢布林, R.P.佩魯馬爾 申請(qǐng)人:微軟公司