專利名稱:用于實施基于內(nèi)容的文件系統(tǒng)安全性的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及計算機文件系統(tǒng)安全性,更具體地說,涉及基于內(nèi)容的計算機文件系統(tǒng)的安全性。
背景技術(shù):
存儲在計算機文件系統(tǒng)中的數(shù)字信息的數(shù)量和類型的大量增長導(dǎo)致在物理文件系統(tǒng)的傳統(tǒng)層次目錄結(jié)構(gòu)之外,出現(xiàn)了新的向計算機用戶提供信息的方式。一種用于表示文件系統(tǒng)信息的新的比喻說法是“基于內(nèi)容的”文件系統(tǒng),在此系統(tǒng)中,使用基于文件在文件系統(tǒng)中的特性(如文件內(nèi)容、結(jié)構(gòu)和元數(shù)據(jù))的“虛擬目錄”來建立目錄結(jié)構(gòu)。例如,在基于內(nèi)容的文件系統(tǒng)中,包含與獲得$50,000獎金的雇員有關(guān)的信息的文件可能位于虛擬目錄路徑“/employees/employee/bonus/50000”下,遍歷此路徑便可訪問所述文件。
在實現(xiàn)傳統(tǒng)層次目錄結(jié)構(gòu)的物理文件系統(tǒng)中,通常在文件或目錄級別實現(xiàn)訪問安全性,在所述級別維護與用戶訪問文件或目錄的權(quán)限有關(guān)的信息。因此,沒有對特定文件或目錄的權(quán)限的用戶通常不能訪問文件或目錄,接收與文件或目錄有關(guān)的信息,甚至不能“查看”文件或目錄本身。不幸的是,在基于內(nèi)容的文件系統(tǒng)中,了解虛擬目錄的存在可以使得用戶能夠推斷出有關(guān)文件系統(tǒng)中文件內(nèi)容的信息。同樣,了解某些虛擬目錄下文件的存在使得用戶能夠推斷出有關(guān)該特定文件的內(nèi)容的信息。在這兩種情況下,用戶可以在不實際打開和讀取文件的情況下推斷出有關(guān)文件的內(nèi)容的信息。例如,虛擬目錄路徑“/employees/employee/bonus/50000”的存在表明存在一個或多個包含與獎金為$50,000的一個或多個雇員有關(guān)的信息的文件。此外,目錄“/employees/employee/bonus/50000”下文件“文件1.doc”的存在表明文件1.doc包含與某些雇員的獎金為$50,000這一事實有關(guān)的信息。此外,在基于內(nèi)容的文件系統(tǒng)中,通常并不預(yù)先生成目錄,而是響應(yīng)于用戶遍歷虛擬目錄樹的請求來生成目錄,從而不能使用常規(guī)的目錄級別訪問安全性。因此,在基于內(nèi)容的文件系統(tǒng)中實施無需預(yù)先知道每個可能虛擬目錄并且限制用戶具有他們未被授權(quán)的消息的用戶權(quán)限是有利的。
發(fā)明內(nèi)容
本發(fā)明披露了一種用于在構(gòu)建基于內(nèi)容的文件系統(tǒng)時應(yīng)用物理文件系統(tǒng)安全性權(quán)限的系統(tǒng)和方法,由此通過以下步驟在基于內(nèi)容的文件系統(tǒng)中實施用戶權(quán)限■只有在用戶具有讀取虛擬目錄中的文件的權(quán)限時才允許用戶查看該文件;以及■只有在虛擬目錄派生自用戶具有讀取權(quán)限的文件時才允許用戶查看該虛擬目錄。
通常,為每個用戶創(chuàng)建單獨的基于內(nèi)容的目錄樹,其中每個用戶具備用于導(dǎo)航所述樹并且用戶優(yōu)選地具有對其的單獨訪問的唯一虛擬根訪問目錄。
在本發(fā)明的一個方面中,提供了一種用于實施基于計算機的文件系統(tǒng)安全性的方法,所述方法包括從物理文件系統(tǒng)中的文件生成基于內(nèi)容的文件系統(tǒng),以及對所述基于內(nèi)容的文件系統(tǒng)的任何方面都實施用戶訪問權(quán)限,其中所述用戶訪問權(quán)限派生自用戶對所述物理文件系統(tǒng)中的文件的訪問權(quán)限。
在本發(fā)明的另一個方面中,所述實施步驟包括只有在所述基于內(nèi)容的文件系統(tǒng)中的虛擬目錄派生自用戶具有讀取權(quán)限的文件時才向用戶提供對該虛擬目錄的訪問。
在本發(fā)明的另一個方面中,所述實施步驟包括只有在用戶具有讀取所述物理文件系統(tǒng)中的文件的權(quán)限時才向用戶提供對所述基于內(nèi)容的文件系統(tǒng)中的所述文件的訪問。
在本發(fā)明的另一個方面中,提供了一種用于實施基于計算機的文件系統(tǒng)安全性的方法,所述方法包括接收與用戶關(guān)聯(lián)的訪問文件系統(tǒng)中的目錄的請求,以及只有在所述目錄與用戶具有讀取權(quán)限的文件關(guān)聯(lián)時才向用戶提供對所述目錄的訪問。
在本發(fā)明的另一個方面中,所述方法還包括作為基于內(nèi)容的文件系統(tǒng)中的虛擬目錄來生成所述目錄。
在本發(fā)明的另一個方面中,所述生成步驟包括從物理文件系統(tǒng)中的文件派生所述虛擬目錄。
在本發(fā)明的另一個方面中,所述提供步驟包括在用戶具有讀取物理文件系統(tǒng)中的文件的權(quán)限時提供所述訪問。
在本發(fā)明的另一個方面中,所述提供步驟包括在所述目錄或其后代子目錄派生自所述文件時提供所述訪問。
在本發(fā)明的另一個方面中,提供了一種用于實施基于計算機的文件系統(tǒng)安全性的系統(tǒng),所述系統(tǒng)包括用于從物理文件系統(tǒng)中的文件生成基于內(nèi)容的文件系統(tǒng)的裝置,以及用于對所述基于內(nèi)容的文件系統(tǒng)的任何方面都實施用戶訪問權(quán)限的裝置,其中所述用戶訪問權(quán)限派生自用戶對所述物理文件系統(tǒng)中的文件的訪問權(quán)限。
在本發(fā)明的另一個方面中,所述實施裝置用于只有在所述基于內(nèi)容的文件系統(tǒng)中的虛擬目錄派生自用戶具有讀取權(quán)限的文件時才向用戶提供對該虛擬目錄的訪問。
在本發(fā)明的另一個方面中,所述實施裝置用于只有在用戶具有讀取所述物理文件系統(tǒng)中的文件的權(quán)限時才向用戶提供對所述基于內(nèi)容的文件系統(tǒng)中的所述文件的訪問。
在本發(fā)明的另一個方面中,所述系統(tǒng)還包括用于接收與用戶關(guān)聯(lián)的訪問所述基于內(nèi)容的文件系統(tǒng)中的目錄的請求的裝置,其中所述實施裝置用于只有在所述目錄與用戶具有讀取權(quán)限的文件關(guān)聯(lián)時才向用戶提供對所述目錄的訪問。
在本發(fā)明的另一個方面中,所述生成裝置用于作為基于內(nèi)容的文件系統(tǒng)中的虛擬目錄來生成所述目錄。
在本發(fā)明的另一個方面中,所述生成裝置用于從物理文件系統(tǒng)中的文件派生所述虛擬目錄。
在本發(fā)明的另一個方面中,所述實施裝置用于在用戶具有讀取物理文件系統(tǒng)中的文件的權(quán)限時提供所述訪問。
在本發(fā)明的另一個方面中,所述實施裝置用于在所述目錄或其后代子目錄派生自所述文件時提供所述訪問。
在本發(fā)明的另一個方面中,提供了一種包含在計算機可讀介質(zhì)中的計算機實現(xiàn)的程序,所述計算機程序包括用于從物理文件系統(tǒng)中的文件生成基于內(nèi)容的文件系統(tǒng)的第一代碼段,以及用于對所述基于內(nèi)容的文件系統(tǒng)的任何方面都實施用戶訪問權(quán)限的第一代碼段,其中所述用戶訪問權(quán)限派生自用戶對所述物理文件系統(tǒng)中的文件的訪問權(quán)限。
通過以下結(jié)合附圖的詳細說明可以更完整地理解本發(fā)明,這些附圖是圖1是根據(jù)本發(fā)明的優(yōu)選實施例構(gòu)建和運行的用于在構(gòu)建基于內(nèi)容的文件系統(tǒng)時應(yīng)用物理文件系統(tǒng)安全性權(quán)限的示例性系統(tǒng)的簡化方塊圖;圖2A和2B是根據(jù)本發(fā)明的優(yōu)選實施例運行的用于運行圖1的系統(tǒng)的示例性方法的簡化流程圖;以及圖3是根據(jù)本發(fā)明的優(yōu)選實施例構(gòu)建和運行的虛擬目錄的示例性實現(xiàn)的簡化圖。
具體實施例方式
現(xiàn)在參考圖1,圖1是根據(jù)本發(fā)明的優(yōu)選實施例構(gòu)建和運行的用于在構(gòu)建基于內(nèi)容的文件系統(tǒng)時應(yīng)用物理文件系統(tǒng)安全性權(quán)限的示例性系統(tǒng)的簡化概念圖。在圖1的系統(tǒng)中,物理文件系統(tǒng)100位于計算機102上或可由計算機102訪問。物理文件系統(tǒng)100示出為具有一個或多個位于根目錄中的文件或者具有一個或多個在根目錄之下的目錄。物理文件系統(tǒng)100還示出為根據(jù)常規(guī)技術(shù)(對于每個文件和目錄,指出了用戶X具有的訪問級別)來維護訪問控制信息。在示出的實例中,用戶X示為對文件1、文件2、文件3、文件5和文件6以及目錄目錄-1具有“讀取”權(quán)限(標為“R”)?!癗R”表明用戶X對文件4和目錄-2沒有讀取權(quán)限。在一種實現(xiàn)中,盡管用戶X對文件5和文件6具有讀取權(quán)限,但是由于它們位于用戶X對其沒有讀取權(quán)限的目錄-2中,目錄-2的訪問控制權(quán)限被應(yīng)用到目錄-2之下的文件和目錄,因此防止了用戶X讀取文件5和文件6。
使用基于內(nèi)容的文件系統(tǒng)構(gòu)建技術(shù)由計算機102或為計算機102構(gòu)建基于內(nèi)容的文件系統(tǒng)104,所述構(gòu)建技術(shù)例如但不限于“語義文件系統(tǒng)”(“Semantic文件System”,Gifford等人,MIT計算科學(xué)實驗室,編程系統(tǒng)研究組,有關(guān)操作系統(tǒng)原理的第13次ACM討論會的會議錄,1991)中描述的技術(shù),其中從與文件關(guān)聯(lián)的信息(如文件元數(shù)據(jù))或文件內(nèi)的信息來構(gòu)建虛擬目錄。根據(jù)本發(fā)明,在構(gòu)建基于內(nèi)容的文件系統(tǒng)104期間實施物理文件系統(tǒng)100的訪問控制權(quán)限,由此只有在用戶具有讀取虛擬目錄中的文件的權(quán)限時才向用戶提供對該文件的訪問,并且只有在使用與用戶具有讀取權(quán)限的文件關(guān)聯(lián)的信息來構(gòu)建虛擬目錄時才向用戶提供對該虛擬目錄的訪問。此類訪問可以包括接收文件或目錄名稱的列表或者任何其他已知類型的訪問。通常,為每個用戶創(chuàng)建單獨的基于內(nèi)容的目錄樹,其中每個用戶具備用于導(dǎo)航所述樹并且用戶優(yōu)選地具有對其的單獨訪問的唯一虛擬根訪問目錄。
因此,在圖1示出的實例中,用戶X具備其下顯示虛擬目錄目錄-A、目錄-B和目錄-C的虛擬根目錄。目錄-A示出為派生自與文件1和文件6關(guān)聯(lián)的信息。由于用戶X具有對文件1的讀取權(quán)限,因此目錄-A與文件1一樣對用戶X可見,而由于用戶X沒有對目錄-2的讀取權(quán)限(因為用戶X沒有對物理文件系統(tǒng)100中的文件6的讀取權(quán)限),所以文件6對用戶X隱藏。目錄-B示出為派生自與文件4關(guān)聯(lián)的信息。由于用戶X沒有對文件4的讀取權(quán)限,因此目錄-B與文件4一樣對用戶X隱藏。目錄-C示出為派生自與文件2、文件3和文件5關(guān)聯(lián)的信息。由于用戶X具有對文件2和文件3的讀取權(quán)限,因此目錄-C對用戶X可見,而文件5對用戶X隱藏。
現(xiàn)在參考圖2A和2B,它們是根據(jù)本發(fā)明的優(yōu)選實施例運行的用于運行圖1的系統(tǒng)的示例性方法的簡化流程圖。在圖2A和2B的方法中,向用戶提供對基于內(nèi)容的文件系統(tǒng)(如對用戶唯一的虛擬根目錄)的訪問。然后根據(jù)在物理文件系統(tǒng)中找到的文件,在當前訪問的虛擬目錄中生成一個或多個候選虛擬目錄。然后評估當前訪問的虛擬目錄中的每個候選虛擬目錄,以便判定所述候選虛擬目錄是否派生自所述物理文件系統(tǒng)中用戶具有讀取權(quán)限的文件。如果是,則可以通過例如顯示候選虛擬目錄的名稱來授予用戶訪問候選虛擬目錄的權(quán)限,于是用戶可以遍歷候選虛擬目錄或以其他方式與之交互。如果否,則限制用戶對候選虛擬目錄的訪問。還可以評估在當前訪問的虛擬目錄中標識的每個文件,以便判定在所述物理文件系統(tǒng)中用戶是否具有讀取所述文件的權(quán)限。如果是,則可以通過例如顯示文件的名稱來授予用戶訪問文件的權(quán)限,于是用戶可以讀取文件或以其他方式與之交互。
現(xiàn)在參考圖3,圖3是根據(jù)本發(fā)明的優(yōu)選實施例構(gòu)建和運行的虛擬目錄的示例性實現(xiàn)的簡化圖。在圖3中,向用戶300、302和304提供了用于導(dǎo)航基于內(nèi)容的虛擬目錄文件系統(tǒng)104的相應(yīng)唯一虛擬根訪問目錄300’、302’和304’。每個訪問目錄可以由其所屬的用戶的名稱來表示,并且優(yōu)選地提供其用于用戶的單獨訪問。每當用戶讀取基于內(nèi)容的文件系統(tǒng)的根時,計算機102就優(yōu)選地返回屬于該用戶的唯一訪問目錄,在此目錄下出現(xiàn)可顯示給該用戶的任何虛擬目錄。以這種方式,緩存目錄內(nèi)容并且從高速緩存為文件系統(tǒng)查詢服務(wù)以便提高性能的文件系統(tǒng)將避免向某一用戶提供其他用戶的緩存的結(jié)果集(在沒有結(jié)果屬于特定用戶的概念時可能出現(xiàn)這種情況)。應(yīng)當理解,可以使用常規(guī)技術(shù)對用戶或用戶應(yīng)用隱藏訪問目錄的存在,直接跳至用戶的訪問目錄下的虛擬目錄而不顯示所述訪問目錄的存在。
應(yīng)當理解,在不偏離本發(fā)明的真正精神和范圍的情況下,可以省略在此描述的任何方法的一個或多個步驟,或者按不同于所示的順序執(zhí)行這些步驟。
雖然可以參考(也可以不參考)特定計算機硬件或軟件來描述在此披露的方法和裝置,但是應(yīng)當理解,可以使用常規(guī)技術(shù)在計算機硬件或軟件中容易地實現(xiàn)在此描述的方法和裝置。
雖然參考一個或多個特定實施例描述了本發(fā)明,但是所述描述旨在作為整體來說明本發(fā)明,并且所述描述不應(yīng)被解釋為將本發(fā)明限于示出的實施例。應(yīng)該理解,本領(lǐng)域的技術(shù)人員可以做出各種修改,雖然在此沒有具體示出這些修改,但是它們?nèi)栽诒景l(fā)明的真正精神和范圍之內(nèi)。
權(quán)利要求
1.一種用于實施基于計算機的文件系統(tǒng)安全性的方法,所述方法包括從物理文件系統(tǒng)中的文件生成基于內(nèi)容的文件系統(tǒng);以及對所述基于內(nèi)容的文件系統(tǒng)的任何方面都實施用戶訪問權(quán)限,其中所述用戶訪問權(quán)限派生自用戶對所述物理文件系統(tǒng)中的文件的訪問權(quán)限。
2.根據(jù)權(quán)利要求1的方法,其中所述實施步驟包括只有在所述基于內(nèi)容的文件系統(tǒng)中的虛擬目錄派生自用戶具有讀取權(quán)限的文件時才向所述用戶提供對該虛擬目錄的訪問。
3.根據(jù)權(quán)利要求1的方法,其中所述實施步驟包括只有在用戶具有讀取所述物理文件系統(tǒng)中的文件的權(quán)限時才向所述用戶提供對所述基于內(nèi)容的文件系統(tǒng)中的所述文件的訪問。
4.一種用于實施基于計算機的文件系統(tǒng)安全性的方法,所述方法包括接收與用戶關(guān)聯(lián)的訪問文件系統(tǒng)中的目錄的請求;以及只有在所述目錄與所述用戶具有讀取權(quán)限的文件關(guān)聯(lián)時才向所述用戶提供對所述目錄的訪問。
5.根據(jù)權(quán)利要求4的方法,還包括作為基于內(nèi)容的文件系統(tǒng)中的虛擬目錄來生成所述目錄。
6.根據(jù)權(quán)利要求5的方法,其中所述生成步驟包括從物理文件系統(tǒng)中的所述文件派生所述虛擬目錄。
7.根據(jù)權(quán)利要求4的方法,其中所述提供步驟包括在所述用戶具有讀取物理文件系統(tǒng)中的所述文件的權(quán)限時提供所述訪問。
8.根據(jù)權(quán)利要求4的方法,其中所述提供步驟包括在所述目錄或其后代子目錄派生自所述文件時提供所述訪問。
9.一種用于實施基于計算機的文件系統(tǒng)安全性的系統(tǒng),所述系統(tǒng)包括用于從物理文件系統(tǒng)中的文件生成基于內(nèi)容的文件系統(tǒng)的裝置;以及用于對所述基于內(nèi)容的文件系統(tǒng)的任何方面都實施用戶訪問權(quán)限的裝置,其中所述用戶訪問權(quán)限派生自用戶對所述物理文件系統(tǒng)中的文件的訪問權(quán)限。
10.根據(jù)權(quán)利要求9的系統(tǒng),其中所述實施裝置用于只有在所述基于內(nèi)容的文件系統(tǒng)中的虛擬目錄派生自用戶具有讀取權(quán)限的文件時才向所述用戶提供對該虛擬目錄的訪問。
11.根據(jù)權(quán)利要求9的系統(tǒng),其中所述實施裝置用于只有在用戶具有讀取所述物理文件系統(tǒng)中的文件的權(quán)限時才向所述用戶提供對所述基于內(nèi)容的文件系統(tǒng)中的所述文件的訪問。
12.根據(jù)權(quán)利要求9的系統(tǒng),還包括用于接收與用戶關(guān)聯(lián)的訪問所述基于內(nèi)容的文件系統(tǒng)中的目錄的請求的裝置,其中所述實施裝置用于只有在所述目錄與用戶具有讀取權(quán)限的文件關(guān)聯(lián)時才向所述用戶提供對所述目錄的訪問。
13.根據(jù)權(quán)利要求12的系統(tǒng),其中所述生成裝置用于作為基于內(nèi)容的文件系統(tǒng)中的虛擬目錄來生成所述目錄。
14.根據(jù)權(quán)利要求13的系統(tǒng),其中所述生成裝置用于從物理文件系統(tǒng)中的所述文件派生所述虛擬目錄。
15.根據(jù)權(quán)利要求12的系統(tǒng),其中所述實施裝置用于在所述用戶具有讀取物理文件系統(tǒng)中的所述文件的權(quán)限時提供所述訪問。
16.根據(jù)權(quán)利要求12的系統(tǒng),其中所述實施裝置用于在所述目錄或其后代子目錄派生自所述文件時提供所述訪問。
17.一種包含在計算機可讀介質(zhì)中的計算機實現(xiàn)的程序,所述計算機程序包括用于從物理文件系統(tǒng)中的文件生成基于內(nèi)容的文件系統(tǒng)的第一代碼段;以及用于對所述基于內(nèi)容的文件系統(tǒng)的任何方面都實施用戶訪問權(quán)限的第一代碼段,其中所述用戶訪問權(quán)限派生自用戶對所述物理文件系統(tǒng)中的文件的訪問權(quán)限。
全文摘要
一種用于實施基于計算機的文件系統(tǒng)安全性的方法,所述方法包括從物理文件系統(tǒng)中的文件生成基于內(nèi)容的文件系統(tǒng),以及對所述基于內(nèi)容的文件系統(tǒng)的任何方面都實施用戶訪問權(quán)限,其中所述用戶訪問權(quán)限派生自用戶對所述物理文件系統(tǒng)中的文件的訪問權(quán)限。
文檔編號G06F17/30GK1904901SQ20061009355
公開日2007年1月31日 申請日期2006年6月26日 優(yōu)先權(quán)日2005年7月29日
發(fā)明者M·法克特, B·曼德勒, N·克勞斯 申請人:國際商業(yè)機器公司