專利名稱::基于索引樹的海量數(shù)據(jù)庫訪問控制方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及海量數(shù)據(jù)庫,尤其涉及一種基于索引樹的海量數(shù)據(jù)庫訪問控制方法,屬于數(shù)據(jù)處理
技術(shù)領(lǐng)域:
。
背景技術(shù):
:隨著空間技術(shù)的日益普及,用戶通過GoogleEarth,MSTerraServer可以任意訪問地球上任意范圍的物體,甚至觀測到其運動變化;全球定位系統(tǒng)(GPS)和慣性導(dǎo)航系統(tǒng)(INS)等高技術(shù)系統(tǒng)相結(jié)合的智能型實時地理信息系統(tǒng)使得地理空間數(shù)據(jù)成為一種實用的工具,即使用戶處于陌生的城市,可以通過GPS等設(shè)備快速定位自己的位置,查詢道路信息等。由此可見,空間技術(shù)的需求在不斷的增長。方便、快捷的空間地理數(shù)據(jù)的操作方式,一方面滿足了用戶對空間信息的快速訪問,但另一方面也泄露了用戶的隱私信息,給國家、企業(yè)和個人造成極大的威脅。訪問控制是對數(shù)據(jù)庫資源進行保護的重要措施,它主要規(guī)定了主體對客體的訪問權(quán)限,并在身份識別的基礎(chǔ)上,根據(jù)主體身份對資源的訪問加以控制。傳統(tǒng)的訪問控制在數(shù)據(jù)庫內(nèi)部的實現(xiàn)方法主要包括訪問控制列表、訪問控制矩陣、查詢改寫等方式。但是,由于空間數(shù)據(jù)量大,空間目標(biāo)不規(guī)則,目標(biāo)的結(jié)構(gòu)及其關(guān)系復(fù)雜(相交、相鄰、包含、覆蓋關(guān)系等),空間操作與計算比傳統(tǒng)的關(guān)系運算代價高的特點,并不能直接將傳統(tǒng)數(shù)據(jù)庫的訪問控制方法直接應(yīng)用,需要依據(jù)不同空間數(shù)據(jù)特征構(gòu)建空間數(shù)據(jù)訪問控制機制。目前空間數(shù)據(jù)庫訪問控制方法主要通過查詢改寫的方式進行。當(dāng)空間關(guān)系表達過于復(fù)雜時,會造成訪問控制效率較低的問題。為了提高訪問控制效率,現(xiàn)有工作主要針對空間柵格數(shù)據(jù)特征進行區(qū)域劃分,選擇特定的索引樹結(jié)構(gòu),并在相應(yīng)區(qū)域上添加授權(quán)信息,使得在對空間數(shù)據(jù)查找過程中能快速判斷其操作的有效性,此類方法在一定程度上提高了訪問控制判定效率。但是,這些授權(quán)模型都不能同時支持對矢量和柵格數(shù)據(jù)的應(yīng)用,不能很好解決肯定授權(quán)和否定授權(quán)的沖突問題。因此,如何針對矢量數(shù)據(jù)和柵格數(shù)據(jù)提出通用的授權(quán)機制,并有效提高訪問控制判定效率成為空間數(shù)據(jù)庫訪問控制的熱點。
發(fā)明內(nèi)容針對上述問題,本發(fā)明的目的在于提供一種通用的海量數(shù)據(jù)庫(比如空間數(shù)據(jù)庫)訪問控制方法,將傳統(tǒng)的訪問控制方法中對數(shù)據(jù)對象實施訪問控制進行的兩次檢索(一次檢索產(chǎn)生于對數(shù)據(jù)對象授權(quán)策略的查找與判定,另一次檢索產(chǎn)生于數(shù)據(jù)對象的獲取過程)合并為一次檢索。通過將授權(quán)信息和數(shù)據(jù)庫索引結(jié)構(gòu)相結(jié)合,使數(shù)據(jù)對象和授權(quán)信息的獲取在一次檢索中完成,提高了訪問控制實施效率。此外,在索引樹中對授權(quán)信息通過授權(quán)信息集合進行記錄,當(dāng)進行請求判定時,直接對授權(quán)信息進行比較即可,進一步提高訪問控制判定效率。為了實現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案基于索引樹的海量數(shù)據(jù)庫訪問控制方法,包括a)為數(shù)據(jù)庫建立索引樹,b)在所述索引樹的每個節(jié)點上建立一授權(quán)信息集合,所述授權(quán)信息集合包括用戶對所述節(jié)點及其子節(jié)點中的全部數(shù)據(jù)對象的操作權(quán)限,c)用戶提出針對數(shù)據(jù)對象的訪問請求后,自所述索引樹的根節(jié)點逐層向下至所述數(shù)據(jù)對象所在的節(jié)點,依次檢索各個節(jié)點的授權(quán)信息集合,直至根據(jù)某一節(jié)點的授權(quán)信息集合可獲得確定的訪問控制結(jié)果,所述確定的訪問控制結(jié)果包括接受或拒絕所述訪問請求。舉例來說,如圖1所示,數(shù)據(jù)庫索引樹的每個節(jié)點上均包括一授權(quán)信息集合,當(dāng)用戶請求訪問節(jié)點4中的數(shù)據(jù)時,自根節(jié)點1逐層向下檢索,在從節(jié)點1經(jīng)節(jié)點2,節(jié)點3直至節(jié)點4的路徑中,當(dāng)根據(jù)路徑中的某一節(jié)點(比如節(jié)點3)可以確定用戶能否訪問所述數(shù)據(jù)時,即就此實現(xiàn)訪問控制,如能訪問,則直接提取數(shù)據(jù),如不能訪問,則拒絕請求。當(dāng)根據(jù)路徑中的節(jié)點無法得到確定的訪問控制結(jié)果,則檢索到所述路徑的末尾,即節(jié)點4,無論如何,根據(jù)路徑的末尾節(jié)點均可以得到確定的訪問控制結(jié)果,只是在此情況下無法省略判斷次數(shù)。進一步,在上述方法中,通過下列方法為所述索引樹中的每個節(jié)點建立一個授權(quán)信息集合a)根據(jù)設(shè)定的授權(quán)信息為所述授權(quán)信息涉及的節(jié)點建立初步的授權(quán)信息集合;b)從所述索引樹的葉節(jié)點開始至根節(jié)點,對授權(quán)信息集合進行遞歸操作,所述遞歸操作之后,所述索引樹中的父節(jié)點的授權(quán)信息集合包含其所有子節(jié)點的授權(quán)信息。其中,可通過下列方法根據(jù)設(shè)定的授權(quán)信息為所述授權(quán)信息涉及的節(jié)點建立初步的授權(quán)信息集合將所述授權(quán)信息分解為多個不相交的子集,每個所述子集均映射到所述索引樹的某個節(jié)點上并建立所述初步的授權(quán)信息集合,同時所述多個節(jié)點之間不存在父子關(guān)系。優(yōu)選地,在上述方法中,在所述索引樹的全部或部分節(jié)點上,按照用戶的不同操作之間的偏序關(guān)系,根據(jù)用戶的一個操作權(quán)限將另一操作權(quán)限補入授權(quán)信息集合中。也可以在所述索引樹的全部或部分節(jié)點上,按照多個用戶的角色之間的偏序關(guān)系,根據(jù)一個用戶的操作權(quán)限將另一用戶的操作權(quán)限補入其授權(quán)信息集合中。從另一個方面來說,本發(fā)明基于索引樹的海量數(shù)據(jù)庫授權(quán)方法主要分為兩個過程首先,通過授權(quán)信息構(gòu)建索引樹中每個節(jié)點的授權(quán)信息集合;其次,實現(xiàn)對用戶的訪問請求的判定,主要是在索引樹中查找請求的數(shù)據(jù)對象的同時,進行權(quán)限判定,實現(xiàn)將兩次索引合并為一次索引的過程,提高訪問請求判定效率。具體來說,前一過程包括下列內(nèi)容,如圖2所示1)通過授權(quán)信息構(gòu)建索引樹相應(yīng)節(jié)點上的授權(quán)信息集合。索引樹中每個節(jié)點均具有一個授權(quán)信息集合,用來記錄數(shù)據(jù)庫用戶(可以是單個用戶,多個用戶或用戶組等等)所有的授權(quán)信息。授權(quán)信息映射到樹中節(jié)點時,不一定能直接映射到一個節(jié)點上,因此需要分解授權(quán)信息,使其能通過多個節(jié)點完全表示。授權(quán)信息集合可以采用表格的形式(授權(quán)信息表)儲存各項信息,既可以采用多個表格,每個表格對應(yīng)一個用戶或一類用戶;也可以采用一個表格,在該表格中包括多個用戶或多類用戶,沒有特定的限制。關(guān)于授權(quán)信息表內(nèi)的表項,比如,每個授權(quán)信息表可包括四個部分授權(quán)信息對應(yīng)的范圍,即索引樹中相應(yīng)的節(jié)點的范圍;數(shù)據(jù)對象類型,可以包括多種分類方式,例如按照點、線、面的方式,或圖層的方式;數(shù)據(jù)對象統(tǒng)計信息,即各種類型的數(shù)據(jù)對象的總個數(shù);操作權(quán)限信息,即相應(yīng)操作類型下肯定(有操作權(quán)限)或否定(沒有操作權(quán)限)的對象的個數(shù),當(dāng)該操作下允許的對象個數(shù)與對象總個數(shù)一致且否定授權(quán)個數(shù)為零時,表面該區(qū)域中所有對象均有訪問權(quán)限。授權(quán)信息進行分解的過程需要滿足以下條件將授權(quán)信息劃分為一系列不相交的子集,這些子集均與索引樹中的某節(jié)點范圍一致,即映射到某個節(jié)點上;子節(jié)點之和即為數(shù)據(jù)對象的范圍總和;并且這些節(jié)點之間不存在父子關(guān)系,然后將分解后的授權(quán)信息添加到相應(yīng)的各個節(jié)點上,避免對授權(quán)信息進行多次存儲,造成空間的浪費和效率的降低。2)依據(jù)用戶的不同操作之間的偏序關(guān)系將相應(yīng)信息添加至授權(quán)信息表。當(dāng)用戶具有操作1的權(quán)限則必然也具有操作2的權(quán)限時(例如允許用戶對空間對象進行放大操作,則允許用戶進行查看操作,否則放大操作沒有意義),在每個節(jié)點的授權(quán)信息集合中添加相應(yīng)的操作關(guān)系,即將操作1的權(quán)限信息添加到操作2的權(quán)限信息中。此外,在否定授權(quán)時,操作之間的偏序關(guān)系具有逆向性,即不允許操作2時也不允許進行操作1。因此,可根據(jù)肯定和否定授權(quán)均按照其偏序關(guān)系,將相應(yīng)的授權(quán)信息及其推導(dǎo)結(jié)果填入授權(quán)信息集合中。與操作之間類似,授權(quán)用戶的角色之間也存在一定的偏序關(guān)系,比如管理員具有普通用戶的所有權(quán)限。因此,依據(jù)用戶角色之間的偏序關(guān)系,對各個節(jié)點上的授權(quán)信息集合進行信息填充,使得各個節(jié)點上操作、角色之間的關(guān)系得到體現(xiàn)。3)構(gòu)建好每個節(jié)點上相應(yīng)的初步的授權(quán)信息之后,需要對整個樹從葉節(jié)點開始進行向上遞歸操作構(gòu)建完整的授權(quán)信息集合。所述遞歸操作從葉子開始向上進行,因此父節(jié)點的授權(quán)信息集合應(yīng)該包含其所有子節(jié)點的信息,以此類推構(gòu)建完整的包含授權(quán)信息的索引樹結(jié)構(gòu)。因此從樹的根部進行查找的過程中,在某些情況下可以直接判斷其子節(jié)點的權(quán)限信息,盡早確定用戶權(quán)限,無需對每個節(jié)點上的授權(quán)信息進行判斷,提高訪問請求判定的效率。當(dāng)索引樹中授權(quán)信息集合構(gòu)建完成后,如圖3所示,對訪問請求判定過程具體如下1)用戶發(fā)起訪問請求,則通過索引樹自根節(jié)點逐層向下檢索相應(yīng)區(qū)域。由于索引樹中各個節(jié)點包含了相應(yīng)的權(quán)限信息。當(dāng)通過檢索過程中的某一節(jié)點的授權(quán)信息集合可獲得確定的訪問控制結(jié)果時,即停止檢索,并作出相應(yīng)的訪問控制。例如,當(dāng)過程中的某一節(jié)點已經(jīng)包含了完全授權(quán)的信息且否定授權(quán)為空,即此空間范圍內(nèi)的所有對象均允許進行訪問,則無需再進行相應(yīng)的權(quán)限判定,直接返回所查找對象信息即可;如果區(qū)域中否定授權(quán)的對象與空間對象統(tǒng)計信息相等,則區(qū)域中全部空間對象均被拒絕。由于采用否定優(yōu)先的策略,不論肯定授權(quán)個數(shù),則訪問請求均被拒絕。如果沒有全部肯定或否定時,則一直到訪問對象對應(yīng)的節(jié)點處再進行權(quán)限判定。2)如果查找的對象不能完全映射至某個節(jié)點,則需要對查找范圍進行劃分,同授權(quán)信息集合構(gòu)建過程中的劃分規(guī)則一致。依據(jù)上述l)所述的方法,將查找區(qū)域分成幾個子區(qū)域進行分別的權(quán)限判定和對象的查找,并將結(jié)果分別返回??偵纤?,本發(fā)明方法可以支持多種數(shù)據(jù)類型,包括矢量數(shù)據(jù)和柵格數(shù)據(jù),而且使5用授權(quán)信息集合可以加速判定效率。采用本發(fā)明的數(shù)據(jù)庫訪問控制方法,可針對數(shù)據(jù)特征進行分析,支持多種數(shù)據(jù)類型,同時保證權(quán)限判定正確的情況下,減少權(quán)限比較次數(shù),提高訪問控制效率,比傳統(tǒng)的訪問控制方法具有更高的效率。本發(fā)明方法適用于各種海量數(shù)據(jù)庫,尤其適用于空間數(shù)據(jù)庫。和現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點1.更高的通用性本發(fā)明提出的數(shù)據(jù)庫訪問控制方法同時適用于矢量數(shù)據(jù)和柵格數(shù)據(jù);支持基于圖層或拓撲方式的授權(quán);同時支持肯定和否定授權(quán);并且適用于多種數(shù)據(jù)庫索引結(jié)構(gòu)。更高的通用性方便了用戶對訪問控制權(quán)限的靈活定義。2.更高的訪問效率本發(fā)明將傳統(tǒng)的訪問請求判定和數(shù)據(jù)查找的兩次索引合并為一次判定,在一次查找中確定訪問請求的結(jié)果并返回相應(yīng)的信息;在判斷過程使用授權(quán)信息集合進行權(quán)限記錄,使得權(quán)限比較過程更簡單;支持?jǐn)?shù)據(jù)查找路徑上盡早判定權(quán)限,減少權(quán)限比較次數(shù),提高權(quán)限判定效率,同時方便用戶進行策略定義和查找。圖1為本發(fā)明方法涉及的索引樹示意圖;圖2為本發(fā)明方法一授權(quán)信息集合構(gòu)建過程實例流程圖;圖3為本發(fā)明方法一訪問請求判定過程實例流程圖;圖4為實施例基于索引樹的空間數(shù)據(jù)庫訪問控制系統(tǒng)示意圖;圖5為實施例的普通用戶授權(quán)信息集合示意圖;圖6為實施例空間數(shù)據(jù)庫的結(jié)構(gòu)示意圖。具體實施例方式下面通過實施例結(jié)合附圖對本發(fā)明作進一步描述。本實施例通過如圖4所示的空間數(shù)據(jù)庫訪問控制系統(tǒng)實施本發(fā)明方法,該系統(tǒng)包括前端和后端兩部分。其中,前端主要負責(zé)對用戶的請求進行處理并接受后端返回的結(jié)果。后端主要是空間數(shù)據(jù)庫中訪問控制處理部分,分為索引查找模塊,權(quán)限判定模塊,結(jié)果返回模塊三大部分。在收到前端發(fā)起的請求后,首先利用索引查找模塊進行相應(yīng)權(quán)限信息和訪問對象信息的查找;接著在權(quán)限判斷模塊中進行相應(yīng)的權(quán)限判定,最后將結(jié)果返回給前端。下面以R樹為例,描述方法的整個過程,圖5給出了本實施例的普通用戶授權(quán)信息集合示意圖。1)樹中各節(jié)點的授權(quán)信息集合是其所有子節(jié)點授權(quán)信息的集合。每個節(jié)點上的授權(quán)信息集合包括空間范圍,數(shù)據(jù)類型,數(shù)據(jù)對象統(tǒng)計信息,以及用戶對各種操作的權(quán)限。其中,數(shù)據(jù)類型按點、線、面的方式劃分。為了便于說明,在本實施例中,只涉及查看操作和修改操作。在實際應(yīng)用中,可以擴展到多個操作類型。定義好授權(quán)信息集合的數(shù)據(jù)結(jié)構(gòu)后,將授權(quán)信息填入相應(yīng)的授權(quán)信息集合中。當(dāng)授權(quán)信息的范圍與樹中某節(jié)點的范圍正好匹配時,直接填入表中;否則需要對授權(quán)信息的范圍進行劃分,分散到索引樹中多個節(jié)點上,這些節(jié)點之間不存在完全包含關(guān)系。假設(shè)本實施例采用的授權(quán)信息(或者說授權(quán)策略)為"不允許普通用戶查看區(qū)域D中點對象,允許普通用戶查看區(qū)域D中的面對象",則節(jié)點D的各項信息如表1所示。表1.節(jié)點D的授權(quán)信息表<table>tableseeoriginaldocumentpage7</column></row><table>其中,mD表示節(jié)點D的空間范圍,第二列中的0,l,2分別表示點、線、面。第三列中分別表示區(qū)域D中有0個點,0個線和2個面。第四列第五列分別表示查看操作的肯定授權(quán)(用"+"表示)和否定授權(quán)(用"-"表示)的個數(shù),其中數(shù)字"O"表示有零個肯定授權(quán),字母"*"則表示全部數(shù)據(jù)對象均為否定授權(quán),另外表格中的"N/A"表示該項信息未作定義。2)依據(jù)權(quán)限信息對空間節(jié)點權(quán)限進行合并優(yōu)化;同時利用授權(quán)信息中的偏序關(guān)系對權(quán)限描述,對偏序關(guān)系能夠包含的所有子權(quán)限進行歸類描述,保證權(quán)限信息的完整性和有效性。例如用戶允許進行修改操作,則允許進行查看操作,否則修改操作是沒有意義的。例如添加策略"允許普通用戶對區(qū)域D中的所有對象進行修改操作",采用否定優(yōu)先的策略,則上表更新為表2。表2.節(jié)點D的授權(quán)信息表<table>tableseeoriginaldocumentpage7</column></row><table>可以看出,由于修改操作與查看操作具有一定的偏序關(guān)系,因此允許用戶對區(qū)域D中的所有進行修改操作,即允許用戶進行相應(yīng)的查看操作,但是由于表1中用戶關(guān)于區(qū)域D中的點對象的查看操作是被拒絕的,根據(jù)否定優(yōu)先的策略,最終點對象的查看操作仍被拒絕。同樣,偏序關(guān)系可以擴展到用戶角色之間,如管理員具有普通用戶的權(quán)限,則將普通用戶的權(quán)限歸類表與管理員的權(quán)限歸類表進行合并,并采用否定優(yōu)先的策略。例如,管理員對區(qū)域D的權(quán)限"允許管理員修改區(qū)域D中的所有對象"。通過修改操作和查看操作的偏序關(guān)系,管理員權(quán)限歸類表如表3所示。表3.節(jié)點D的管理員授權(quán)信息表<table>tableseeoriginaldocumentpage8</column></row><table>通過將普通用戶在區(qū)域D上的權(quán)限歸類表與管理員的權(quán)限歸類表進行合并,管理員在區(qū)域D上最終的授權(quán)信息如表4所示表4.節(jié)點D最終的管理員授權(quán)信息表<table>tableseeoriginaldocumentpage8</column></row><table>因此在授權(quán)信息表合并中,依據(jù)操作和角色之間的偏序關(guān)系,首先對樹中每個節(jié)點上授權(quán)信息集中涉及的偏序關(guān)系進行一定的推導(dǎo),將可以推得的信息添入;最后將授權(quán)信息進行合并,形成該節(jié)點最終的權(quán)限授權(quán)信息表示。3)通過上述方法可以將授權(quán)信息映射到授權(quán)信息集合中,但是為了實現(xiàn)授權(quán)信息盡量上移,可以減少權(quán)限比較次數(shù)的目的,下面定義授權(quán)信息合并方法。授權(quán)信息合并方法,從樹的葉子節(jié)點,向上遞歸;對同一個節(jié)點的所有子節(jié)點信息進行合并,遞歸結(jié)束后,當(dāng)前的索引樹T,以及其對應(yīng)的授權(quán)信息集I是對授權(quán)信息合并的結(jié)果。因此如果允許用戶訪問某個中間節(jié)點的全部信息,則允許其訪問所有子節(jié)點。圖5中root節(jié)點就是將其子節(jié)點信息進行合并而成。表5.根節(jié)點的授權(quán)信息表<table>tableseeoriginaldocumentpage8</column></row><table>由此可見,在根節(jié)點中,對于普通用戶,所有的點對象均不能被查看和修改;線對象中部分允許被查看,但是全部拒絕被修改;面對象全部可以被查看和修改。因此,在空間對象查找過程中,可以盡早的判斷用戶的操作權(quán)限。4)在訪問請求判定過程中,通過索引樹的查找過程,將兩次索引樹查找過程合并為一次,當(dāng)查找路徑中已經(jīng)具有相應(yīng)權(quán)限,則無需再進行權(quán)限判定。例如,如果用戶希望查看區(qū)域中的某一點對象,由于根節(jié)點上可知所有點對象均被拒絕訪問,則根節(jié)點之后的所有節(jié)點均無需再進行權(quán)限比較,直接返回否定結(jié)果即可,這樣大大提高了訪問請求權(quán)限判定和結(jié)果返回的效率。因此,權(quán)限比較和空間對象查找是在索引樹遍歷一次的過程中完成的,并不需要對經(jīng)過的每個節(jié)點都進行權(quán)限比較,減少了比較的次數(shù),提高了效率。同時對權(quán)限判斷的過程也進行了優(yōu)化,無須對每個授權(quán)信息進行比較,而是通過對授權(quán)信息進行歸類。如果訪問對象的空間區(qū)域能直接映射到某空間節(jié)點上時,則直接在索引樹遍歷過程中進行判定;否則需要將空間區(qū)域利用空間對象分解函數(shù)進行劃分,對每個子區(qū)域進行判定。分解過程要求所有分解后子節(jié)點的空間范圍之和與查詢區(qū)域一致,而且子節(jié)點之間不存在完全的包含關(guān)系,子節(jié)點之間區(qū)域不存在重疊。分解之后對每個分解后的節(jié)點分別進行權(quán)限判定,具體過程如下在訪問請求判定函數(shù)中從根節(jié)點開始查找,如果在路徑上已經(jīng)確定其權(quán)限,則此后無需再進行權(quán)限比較,直接返回結(jié)果即可,提高權(quán)限判定的效率。例如,如圖5,6所示,用戶請求訪問的區(qū)域包括點D、F和Polyl,通過權(quán)限授權(quán)信息表快速查出用戶對D中所有空間對象均有訪問權(quán)限(因為D中沒有點和線對象,而面對象均被授權(quán));F中線對象部分具有訪問權(quán)限,部分被拒絕,因此需要繼續(xù)查找葉子節(jié)點,這里line2被允許,line3被拒絕;Polyl對象為肯定授權(quán),因此可以快速返回相應(yīng)的查詢結(jié)果,即polyl,poly2,poly3和line2。綜上所述,本發(fā)明提出一種基于空間索引的授權(quán)方法和系統(tǒng)。該系統(tǒng)主要將索引樹進行擴展,與授權(quán)信息結(jié)合的方法,在訪問數(shù)據(jù)過程中直接進行權(quán)限判定,將兩次查找匹配過程進行結(jié)合,提高查詢效率。此外,容易擴展到現(xiàn)有空間數(shù)據(jù)庫中,可以對多種索引結(jié)構(gòu),如R樹,四叉樹,及其變形等進行相應(yīng)的擴展。9權(quán)利要求基于索引樹的海量數(shù)據(jù)庫訪問控制方法,包括a)為數(shù)據(jù)庫建立索引樹,b)在所述索引樹的每個節(jié)點上建立一授權(quán)信息集合,所述授權(quán)信息集合包括用戶對所述節(jié)點及其子節(jié)點中的全部數(shù)據(jù)對象的操作權(quán)限,c)用戶提出針對數(shù)據(jù)對象的訪問請求后,自所述索引樹的根節(jié)點逐層向下至所述數(shù)據(jù)對象所在的節(jié)點,依次檢索各個節(jié)點的授權(quán)信息集合,直至根據(jù)某一節(jié)點的授權(quán)信息集合可獲得確定的訪問控制結(jié)果,所述確定的訪問控制結(jié)果包括接受或拒絕所述訪問請求。2.如權(quán)利要求1所述的基于索引樹的海量數(shù)據(jù)庫訪問控制方法,其特征在于,通過下列方法為所述索引樹中的每個節(jié)點建立一個授權(quán)信息集合a)根據(jù)設(shè)定的授權(quán)信息為所述授權(quán)信息涉及的節(jié)點建立初步的授權(quán)信息集合;b)從所述索引樹的葉節(jié)點開始至根節(jié)點,對授權(quán)信息集合進行遞歸操作,所述遞歸操作之后,所述索引樹中的父節(jié)點的授權(quán)信息集合包含其所有子節(jié)點的授權(quán)信息。3.如權(quán)利要求2所述的基于索引樹的海量數(shù)據(jù)庫訪問控制方法,其特征在于,通過下列方法根據(jù)設(shè)定的授權(quán)信息為所述授權(quán)信息涉及的節(jié)點建立初步的授權(quán)信息集合將所述授權(quán)信息分解為多個不相交的子集,每個所述子集均映射到所述索引樹的某個節(jié)點上并建立所述初步的授權(quán)信息集合,同時所述多個節(jié)點之間不存在父子關(guān)系。4.如權(quán)利要求1所述的基于索引樹的海量數(shù)據(jù)庫訪問控制方法,其特征在于,在所述索引樹的全部或部分節(jié)點上,按照用戶的不同操作之間的偏序關(guān)系,根據(jù)用戶的一個操作權(quán)限將另一操作權(quán)限補入授權(quán)信息集合中。5.如權(quán)利要求1所述的基于索引樹的海量數(shù)據(jù)庫訪問控制方法,其特征在于,在所述索引樹的全部或部分節(jié)點上,按照多個用戶的角色之間的偏序關(guān)系,根據(jù)一個用戶的操作權(quán)限將另一用戶的操作權(quán)限補入其權(quán)限授權(quán)信息表中。6.如權(quán)利要求1所述的基于索引樹的海量數(shù)據(jù)庫訪問控制方法,其特征在于,所述索引樹是R數(shù)索引樹、或四叉樹。7.如權(quán)利要求1所述的基于索引樹的海量數(shù)據(jù)庫訪問控制方法,其特征在于,在所述授權(quán)信息集合中,數(shù)據(jù)對象按設(shè)定的分類方式分類,所述分類方式包括點、線、面的方式,或圖層的方式。8.如權(quán)利要求1所述的基于索引樹的海量數(shù)據(jù)庫訪問控制方法,其特征在于,所述海量數(shù)據(jù)庫是空間數(shù)據(jù)庫。全文摘要本發(fā)明公開了一種基于索引樹的海量數(shù)據(jù)庫訪問控制方法,屬于數(shù)據(jù)處理
技術(shù)領(lǐng)域:
。本發(fā)明旨在將傳統(tǒng)的訪問控制方法中對數(shù)據(jù)對象實施訪問控制進行的兩次檢索合并為一次檢索,以提高訪問控制實施效率。本發(fā)明方法包括a)為數(shù)據(jù)庫建立索引樹,b)在索引樹的每個節(jié)點上建立一授權(quán)信息集合,該集合包括用戶對所述節(jié)點及其子節(jié)點中的全部數(shù)據(jù)對象的操作權(quán)限,c)用戶提出訪問請求后,自索引樹的根節(jié)點逐層向下至數(shù)據(jù)對象所在的節(jié)點,依次檢索各個節(jié)點的授權(quán)信息集合,直至根據(jù)某一節(jié)點的授權(quán)信息集合可獲得確定的訪問控制結(jié)果,所述確定的訪問控制結(jié)果包括接受或拒絕所述訪問請求。本發(fā)明可用于各種海量數(shù)據(jù)庫,尤其適用于空間數(shù)據(jù)庫。文檔編號G06F17/30GK101706808SQ20091023815公開日2010年5月12日申請日期2009年11月17日優(yōu)先權(quán)日2009年11月17日發(fā)明者張妍,張德勝,張敏,張穎君,洪澄,王伏根,陳馳申請人:中國科學(xué)院軟件研究所