亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        多源對象關系數(shù)據(jù)庫細粒度強制訪問控制機制實現(xiàn)方法

        2021-12-14 01:37:10陳曉娟
        計算機應用與軟件 2021年12期
        關鍵詞:關系數(shù)據(jù)庫訪問控制數(shù)據(jù)源

        繆 燕 孫 燕 陳曉娟 宋 偉

        1(北京許繼電氣有限公司 北京 100085)2(武漢大學計算機學院 湖北 武漢 430074)

        0 引 言

        數(shù)據(jù)庫技術作為計算機系統(tǒng)軟件,一直以來都是信息系統(tǒng)中數(shù)據(jù)存儲的核心。傳統(tǒng)關系數(shù)據(jù)庫具備堅實的理論基礎、完備的配套工具和靈活的數(shù)據(jù)表達能力,因此以關系數(shù)據(jù)庫為代表的傳統(tǒng)數(shù)據(jù)庫系統(tǒng)在產(chǎn)業(yè)領域取得了巨大成功。

        隨著計算機技術的發(fā)展,數(shù)據(jù)存儲管理變得越來越重要,無論從數(shù)據(jù)規(guī)模還是數(shù)據(jù)管理復雜度上都對數(shù)據(jù)存儲和管理提出了越來越高的要求。近年來數(shù)據(jù)庫已經(jīng)應用到眾多新興應用領域,如社交網(wǎng)絡、移動數(shù)據(jù)、地理信息系統(tǒng)、圖數(shù)據(jù)管理等,各種半結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù)的內(nèi)在特征和服務特性都使得傳統(tǒng)關系型數(shù)據(jù)庫效率低下甚至無能為力。關系數(shù)據(jù)庫具有統(tǒng)一的數(shù)據(jù)存儲和處理規(guī)范,在管理結(jié)構(gòu)化數(shù)據(jù)方面具有優(yōu)勢,但是在表達復雜語義方面則顯得效率低下。

        面向?qū)ο竽P图懊嫦驅(qū)ο蟛僮鞯某霈F(xiàn),彌補了關系數(shù)據(jù)庫基于關系對象操作在復雜語義表達性和復雜語義操作方面存在的不足。但是面向?qū)ο髷?shù)據(jù)庫由于對數(shù)據(jù)對象進行結(jié)構(gòu)化封裝,又使得對象數(shù)據(jù)庫存在數(shù)據(jù)冗余大、數(shù)據(jù)表達靈活性差等缺點。為克服關系數(shù)據(jù)庫和對象數(shù)據(jù)庫的不足之處,出現(xiàn)了對象關系數(shù)據(jù)庫。對象關系數(shù)據(jù)庫具有關系數(shù)據(jù)庫表達靈活、理論完備的優(yōu)勢,又支持面向?qū)ο筇卣鞯臄?shù)據(jù)操作,具有語義表達能力強、數(shù)據(jù)對象存儲持久等諸多優(yōu)勢。

        近年隨著大數(shù)據(jù)應用的發(fā)展與普及,對象關系數(shù)據(jù)庫受到越來越廣泛的關注,知名的開源數(shù)據(jù)庫系統(tǒng)PostgreSQL就是一種對象關系數(shù)據(jù)庫系統(tǒng)。PostgreSQL數(shù)據(jù)庫在復雜數(shù)據(jù)管理領域擴張迅速,已被廣泛應用于地理信息系統(tǒng)、云數(shù)據(jù)庫、圖數(shù)據(jù)管理等諸多領域,但對于PostgreSQL的數(shù)據(jù)訪問授權管理則顯得有些滯后。

        數(shù)據(jù)訪問授權是信息系統(tǒng)的基本核心功能,也是網(wǎng)絡安全等級保護的重要組成部分。傳統(tǒng)商用關系型數(shù)據(jù)庫如Oracle、SqlServer、DB2等都有一整套完備的數(shù)據(jù)訪問授權邏輯和實現(xiàn),但是在對象關系數(shù)據(jù)庫中(以最新版PostgreSQL12為例)仍沒有嚴格意義上完備的強制訪問控制。這給對象關系數(shù)據(jù)庫系統(tǒng)在更多商業(yè)領域應用造成了巨大困難。

        如何基于對象關系數(shù)據(jù)庫的數(shù)據(jù)模式和服務特點,設計適用于對象關系數(shù)據(jù)庫的強制訪問控制模型成為亟需解決的理論和應用問題。本文以PostgreSQL為研究對象,設計并實現(xiàn)了一種對象關系數(shù)據(jù)庫環(huán)境下的強制訪問控制方法,該訪問控制模型實現(xiàn)了完備的強制訪問控制邏輯,同時支持多數(shù)據(jù)源、細粒度授權的特點,通過在PostgreSQL12中的實驗證明,設計的強制訪問控制方法具有授權訪問靈活、數(shù)據(jù)維護開銷小的優(yōu)點。

        1 相關研究

        20世紀70年代,Bell等[1]首次提出可證明安全的強制訪問控制模型,稱為Bell-La Padula(BLP)模型,該模型針對操作系統(tǒng)安全,最初主要應用于軍事安全策略實現(xiàn)。此后,為了優(yōu)化BLP模型,避免引發(fā)因使用強制訪問控制模型而造成的隱通道問題,國內(nèi)外的學者們提出了多級安全關系數(shù)據(jù)模型,其中包括Sea View模型[2]和Jajodia-Sandhu模型[3]等。

        在BLP強制訪問控制模型中,實體被分為主體和客體,每個實體都被賦予了相應的安全等級。模型通過比較主體和客體的安全等級來決定主體對客體的操作授權[4]。在BLP模型中,主體不能讀安全等級比自己高的客體,也不能寫安全等級比自己低的客體。因此,信息只能從低安全級向高安全級流動或者在同安全級之間流動,有效防止了由低安全等級的用戶讀取高安全等級的數(shù)據(jù)造成的信息泄露。然而當BLP模型的讀寫規(guī)則應用在數(shù)據(jù)庫系統(tǒng)中的時候,低安全等級的用戶擁有寫高安全等級數(shù)據(jù)的權限,可能因此造成不恰當?shù)闹貙懖僮?,給數(shù)據(jù)安全帶來隱患[5]。為此研究者們提出了改進的BLP模型,只有當主體的安全等級和客體的安全等級相同時,主體才能對客體進行寫操作,從而避免了低安全等級用戶對高安全等級數(shù)據(jù)重寫所造成的問題。

        除此之外,為了能讓BLP模型更好地應用于數(shù)據(jù)庫系統(tǒng),出現(xiàn)了各類改進工作。文獻[6]對BLP模型進行進一步優(yōu)化,使其契合屬性安全值的特點,形成一個靈活的基于屬性安全值的強制訪問控制模型。文獻[7]基于BLP模型提出了一種具有自主控制特性的強制訪問控制模型。文獻[8]從安全模型構(gòu)建入手,對智能終端的Web操作系統(tǒng)進行抽象建模,并重定義BLP模型的元素,增強主客體的訪問控制以提高其機密性。

        Sea View模型引入了多實例和多級關系。多實例和多級關系的存在解決了由于主鍵唯一性導致的隱通道問題。但因Sea View安全數(shù)據(jù)視圖模型標識粒度較細并定義了完整性規(guī)則,這導致一個寫操作會產(chǎn)生多個元組,且元組個數(shù)可能達到非關鍵字屬性個數(shù)的指數(shù)級,這些元組中得到屬性的產(chǎn)生是不合邏輯的。同時,其多級關系存取的處理也會嚴重降低系統(tǒng)的性能。

        針對Sea View安全數(shù)據(jù)視圖模型中存在的問題,Jajodia-Sandhu模型[3]重新定義了多實例完整性,并且定義了空值完整性和實例間完整性,消除了Sea View模型中的多值依賴,提高了數(shù)據(jù)安全性和完整性,并且減少了寫操作產(chǎn)生的多實例的個數(shù)。不過由于該模型中的插入和更新操作仍然會存在著一定數(shù)量的多實例[9]。此后,Sandhu等[11]又在Jajodia-Sandhu模型的基礎上,吸收了Sea View模型的優(yōu)點,并引入了Simith-Winslett模型[10]中基于信任的語義概念,提出了MLR綜合模型。該模型提供了元素粒度的強制訪問控制,定義了數(shù)據(jù)借用關系,即高安全等級的主體可以從低安全級別的主體借用數(shù)據(jù),不過其控制較為復雜,在實現(xiàn)的過程中可能存在安全隱患。

        此后,國內(nèi)外數(shù)據(jù)庫安全領域的學者們針對各種數(shù)據(jù)庫的實際安全需求進行了大量的強制訪問控制研究。文獻[12]提出了一個安全數(shù)據(jù)庫訪問控制模型,包括一個多層關系模型和一個增強自主訪問控制能力的元素級粒度的授權,在多層關系模型中拓展了MLR模型,使其支持了傳遞借用和多值借用。文獻[13]提出一種新的云計算環(huán)境中數(shù)據(jù)分布式強制訪問控制算法。文獻[14]提出一種協(xié)作環(huán)境下具有時空約束的強制訪問控制模型,將任務、時間、空間等要素進行綜合考慮,既增強了訪問控制模型的安全性,又滿足了協(xié)作環(huán)境下訪問控制的靈活性。文獻[15]采用數(shù)據(jù)庫資源的染色標記方法,提出了一種基于染色標記的數(shù)據(jù)庫安全強制訪問控制體系。文獻[16]針對實時操作系統(tǒng)資源少、開銷小、實時性要求嚴格等特點,提出了一種針對RTOS的輕量級強制訪問控制模型。文獻[17]基于對象代理特性提出了一個適用于TOTEM數(shù)據(jù)庫的強制訪問控制模型。文獻[18]針對SQL注入、內(nèi)部人員權限濫用等非法行為,提出可信計算環(huán)境下的數(shù)據(jù)庫強制行為控制(MBC)模型。

        現(xiàn)有數(shù)據(jù)庫安全訪問控制研究重點側(cè)重關系數(shù)據(jù)庫環(huán)境中的數(shù)據(jù)授權訪問,但是并沒有考慮到對象關系數(shù)據(jù)庫給數(shù)據(jù)授權帶來的新問題,如數(shù)據(jù)對象之間的繼承關系、數(shù)據(jù)對象的溯源操作帶來的隱私泄露問題等。因此需要提出一種安全、實用的強制訪問控制邏輯和實現(xiàn)機制,以滿足目前對于對象關系數(shù)據(jù)庫的巨大應用需求。

        2 對象關系數(shù)據(jù)對象強制訪問控制

        2.1 對象關系數(shù)據(jù)庫的訪問控制

        現(xiàn)有對象關系數(shù)據(jù)庫的自主訪問控制安全性能有限,在實際應用場景中也存在授權機制不靈活的限制?,F(xiàn)有對象關系數(shù)據(jù)庫訪問控制機制存在權限管理不當,可能引發(fā)秘密數(shù)據(jù)泄露,在很多方面也存在安全隱患,并且粗粒度的訪問控制也缺乏靈活性。目前的對象關系數(shù)據(jù)庫訪問控制中,可以進行訪問控制的數(shù)據(jù)庫對象的最小粒度是類,因此在PostgreSQL中使用訪問控制列表無法限制數(shù)據(jù)庫用戶對數(shù)據(jù)庫列級對象和行級對象的訪問,使得PostgreSQL的訪問控制機制并不能滿足實際應用中細粒度訪問控制的需求。

        在對象關系數(shù)據(jù)庫實際應用中,用戶會根據(jù)不同的使用目的,生成不同類型的繼承類,包括SELECTED選擇型繼承類、JOIN連接型繼承類、UNION合并型繼承類和GROUP分組型繼承類。其中對于擁有多個數(shù)據(jù)源(即源類)的繼承類,僅僅只在其屬性上分配一個統(tǒng)一的安全標簽可能會造成部分源類的數(shù)據(jù)無法通過繼承類被合法用戶訪問的問題。為了讓基于對象關系特性的強制訪問控制模型為多源繼承類提供更為方便靈活的訪問控制,本文針對多源繼承類在理論和實際應用方面的特性,從更細的粒度上探討了各種繼承類中屬性級對象的安全等級管理,并在此基礎上闡述繼承類上細粒度訪問控制的過程。

        為方便描述訪問控制規(guī)則及介紹對象安全等級管理方法,表1列出了本文中使用的符號及其意義。

        表1 正文符號表及意義

        在詳細介紹對象關系數(shù)據(jù)庫的強制訪問控制規(guī)則之前,先對用到的基本概念進行定義。

        (1) 安全級別序列。安全級別序列是一個有n個元素的有序序列,用SL=(sl1,sl2,…,sln)表示,其中sli(i=1,2,…,n)表示第i個元素,對于任意兩個元素sli和slj,若i

        (2) 類別范圍集合。類別范圍集合是一個有m個元素的集合,用CR={cr1,cr2,…,crm}表示,其中cri(i=1,2,…,m)表示第i個元素,對于任意兩個元素cri和crj,若i≠j,則有cri≠crj。

        (3) 安全標簽。一個安全標簽SecL由一個安全級別元素和一個類別范圍集合組成,表示為SecL=sl:cr,其中sl∈SL為安全級別序列SL中的一個元素,cr為空集或者類別范圍集合CR中的一個或多個元素的集合。數(shù)據(jù)庫對象的安全標簽表示為SecLobj=SLobj:CRobj,請求訪問數(shù)據(jù)庫對象的主體的安全標簽表示為SecLsub=SLsub:CRsub。

        (4) 安全等級。數(shù)據(jù)庫對象的安全等級由數(shù)據(jù)庫對象的安全標簽來體現(xiàn)。對于數(shù)據(jù)庫對象obj1和obj2,obj1的安全標簽SecLobj1表示為SLobj1:CRobj1,obj2的安全標簽SecLobj2表示為SLobj2:CRobj2。當且僅當SLobj1>SLobj2且CRobj1?CRobj2,認為obj1的安全等級高于obj2的安全等級;當且僅當SLobj1=SLobj2且CRobj1=CRobj2時,認為obj1的安全等級等obj2的安全等級。

        (5) 源類。對象關系數(shù)據(jù)庫中存在著繼承關系,即通過特定的繼承規(guī)則從源類繼承部分或全部屬性值,這里的源類就是繼承類中部分屬性的數(shù)據(jù)源。一個繼承類可以有一個或多個源類,一個繼承類的n個源類用集合SC表示,SC={SCi|i=1,2,…,n}。

        (6) 繼承類。繼承類中必定會有虛屬性,即根據(jù)規(guī)則從源類中繼承的屬性,這些屬性的內(nèi)容并未實際存儲。同時繼承類中也可以新增屬性,這些屬性為繼承類中實際存儲的實屬性,繼承類中的實屬性個數(shù)可為0個或若干個。繼承類用IC表示,繼承類的第i個虛屬性表示為IC.vai,繼承類的第j個實屬性表示為IC.raj,則繼承類的安全標簽表示為SecLIC=SLIC:CRIC,繼承類的第i個虛屬性的安全標簽表示為SecLIC.vai=SLIC.vai:CRIC.vai,繼承類的第j個實屬性的安全標簽表示為SecLIC.raj=SLICIC.raj:CRIC.raj。

        (7) UNION繼承類。UNION繼承類合并了若干個源類中共有屬性的選擇型繼承結(jié)果,用UIC表示,那么代表其安全等級的安全標簽表示為SecLUIC=SLUIC:CRUIC。

        2.2 強制訪問控制安全模型

        對象關系數(shù)據(jù)庫強制訪問控制的安全模型主要基于BLP(Bell-La Padula)安全模型,該模型如圖1所示。數(shù)據(jù)庫系統(tǒng)中的每一個數(shù)據(jù)庫對象都被分配一個安全標簽,這個安全標簽反映了數(shù)據(jù)庫對象的安全等級。數(shù)據(jù)庫中除了數(shù)據(jù)庫、源類、繼承類等數(shù)據(jù)庫對象被分配了安全標簽外,源類的實屬性、繼承類的虛屬性和實屬性也被分配了安全標簽。同時,對數(shù)據(jù)庫進行操作和訪問的主體也被授予了一個安全標簽。當主體訪問數(shù)據(jù)庫對象時,需要比較二者的安全標簽是否符合主體訪問數(shù)據(jù)庫對象管理規(guī)則。

        圖1 對象關系數(shù)據(jù)庫的強制訪問安全模型

        2.3 基于多源數(shù)據(jù)的安全等級細化方法

        在對象關系數(shù)據(jù)庫中,具有多個源類的繼承類有兩種,分別是UNION繼承類和JOIN繼承類。其中,UNION繼承類存在著類中不同實例的同一屬性內(nèi)容來源于多個源類中對應屬性的內(nèi)容。下面將結(jié)合具體的例子說明這種多源類繼承類上在進行強制訪問控制時可能出現(xiàn)的問題。

        假設音樂網(wǎng)站的數(shù)據(jù)庫中有兩個基本類,命名為vipmusic和freemusic,分別存儲付費歌曲和免費歌曲的信息。其中,vipmusic類和freemusic類中共有的屬性有編號number、歌名name、歌手singer和歌曲音頻內(nèi)容context,不過付費歌曲的音頻內(nèi)容只有在用戶付費成為會員后才能聽到,免費的歌曲音頻內(nèi)容普通用戶和會員都可以聽到。為了方便在音樂網(wǎng)站的構(gòu)建中對歌曲共有的屬性信息進行統(tǒng)一的獲取和處理,需要構(gòu)建一個提供所有歌曲信息的更抽象的類。UNION繼承類便可以滿足這個需求,將vipmusic和freemusic兩個基本類作為源類,創(chuàng)建一個名為music的UNION繼承類,如圖2所示。

        圖2 UNION繼承類中多數(shù)據(jù)源屬性示例

        那么通過直接對UNION繼承類music進行查詢即可得到所有歌曲共有屬性的信息。music類中繼承自源類的屬性均為虛屬性,其擴展定義的屬性comment為實屬性,表示網(wǎng)站用戶對歌曲的評論,其中music類中所有實例的虛屬性內(nèi)容都不是實際存儲在本地的,而是通過訪問源類vipmusic和freemusic中對應屬性的內(nèi)容而得到的,實屬性的內(nèi)容是實際存儲在本地的。

        假設源類vipmusic中,除了表示歌曲音頻內(nèi)容的context屬性之外的所有屬性安全級別為sl1,例如SLvipmusic.name=sl1,而context屬性的安全級別為sl5,即SLvipmusic.context=sl5。源類freemusic中,所有屬性的安全級別均為sl1,例如SLfreemusic.name=sl1,SLfreemusic.context=sl1。若UNION繼承類music的安全級別也為sl1,那么有music中除context屬性的以外的所有屬性的安全級別為sl1,context屬性安全級別為sl5。對于context外的其他屬性,顯然能訪問源類中這些屬性內(nèi)容的用戶也能通過UNION繼承類music訪問到這些屬性內(nèi)容。然而,只有安全級別大于等于sl5的用戶才可以通過music同時訪問到兩個源類中context屬性的內(nèi)容。安全級別為sl1、sl2、sl3和sl4的用戶可以訪問源類freemusic中的context屬性內(nèi)容,卻無法通過繼承類music而訪問到源類freemusic中的context屬性內(nèi)容。因此,可以看到UNION繼承類上的強制訪問控制在某些情況下阻止了部分擁有源類數(shù)據(jù)訪問權限的用戶通過UNION繼承類訪問源類數(shù)據(jù),從而影響了UNION繼承類在實際條件下的使用。

        為了解決多源類繼承類中多數(shù)據(jù)源虛屬性的內(nèi)容在強制訪問控制模型中的訪問受限問題,本文設計了多數(shù)據(jù)源虛屬性的安全等級細化方法,為多源類繼承類上靈活的細粒度訪問控制提供支持。

        對于一個UNION繼承類UIC,其有m個源類SC={SCi|i=1,2,…,m},UIC有從這m個源類中繼承的n個虛屬性va={vaj|j=1,2,…,n}。這些虛屬性都是擁有多個數(shù)據(jù)源的虛屬性,且每個虛屬性的數(shù)據(jù)源為m個源類中與這個虛屬性相對應的屬性。

        任一虛屬性va的安全標簽只有一個,表示為SecLUIC.va=SLUIC.va:CRUIC.va,其中SLUIC.va為va的安全級別,CRUIC.va為va的類別范圍,該安全標簽代表了va的安全等級。因此,UNION繼承類虛屬性va在所有UIC實例中對應內(nèi)容都由同一個安全標簽SecLUIC.va來進行訪問控制。

        為了支持多源類繼承類UIC中多數(shù)據(jù)源屬性上的細粒度訪問控制,設計了UIC虛屬性的安全等級細化方法,使得同一屬性中來自不同數(shù)據(jù)源的屬性內(nèi)容擁有各自的安全等級。其具體表現(xiàn)為:對于有m個源類的UIC中的任一虛屬性va,設置一個安全標簽集SecLUIC.va,該安全標簽集合中默認有m個安全標簽,va中從一個源類繼承的屬性內(nèi)容與一個安全標簽對應。UIC虛屬性va安全等級的細化實際上就是將UIC所有實例的va屬性內(nèi)容根據(jù)數(shù)據(jù)源進行劃分,并為來自不同數(shù)據(jù)源的屬性內(nèi)容分配與之對應的安全標簽。

        1) 虛屬性va按數(shù)據(jù)源劃分。

        由UIC類實例的介紹可知,UNION繼承類中的所有類實例集合表示為TUIC,將TUIC按照實例對應源類實例所屬類的不同進行劃分,可以得到:

        2) 虛屬性va多安全標簽分配。

        對TUIC.va中包含的其他m-1個分組,都按照相同的方法為其分配安全標簽,可以得到UIC中虛屬性va的安全標簽集合為:

        各個安全標簽和虛屬性va按數(shù)據(jù)源進行劃分后的各個分組為一一對應關系。

        為了進一步說明多源類繼承類中虛屬性的安全等級細化方法,下面將結(jié)合實際的例子對安全等級細化方法進行具體的介紹。此處同樣以圖2的UNION繼承類music為例,對于其中的虛屬性context,由于其內(nèi)容繼承自兩個源類,因此context的屬性內(nèi)容可以劃分為兩組,分組結(jié)果表示為:

        為每個分組分配安全標簽以表示來自數(shù)據(jù)源的屬性內(nèi)容的安全等級,由于此例中各級對象的類別范圍CR均未設置,因此安全標簽的內(nèi)容只需考慮安全級別SL,則有:

        經(jīng)過以上處理的UNION繼承類中context虛屬性的安全標簽由之前的單一安全標簽變成了一個安全標簽集合,圖3直觀地展現(xiàn)了music繼承類中虛屬性context安全等級細化后的結(jié)果。

        圖3 多數(shù)據(jù)源屬性安全等級細化示例

        通過對同一虛屬性中來自不同源類的屬性內(nèi)容進行劃分并添加安全標簽,多源類繼承類UIC中同一虛屬性繼承自不同數(shù)據(jù)源的屬性內(nèi)容以分組為單位擁有了各自的安全標簽,從而實現(xiàn)了多源類繼承類中虛屬性的安全等級細化。

        2.4 細粒度訪問控制機制

        當數(shù)據(jù)庫用戶企圖訪問UNION繼承類中的虛屬性va中的部分屬性內(nèi)容時,細粒度訪問控制機制可以通過獲取待訪問屬性內(nèi)容對應的一個或者多個安全標簽進行更為具體的訪問控制。其具體過程為:

        (1) 獲取請求訪問多源類繼承類的用戶的安全標簽SecLsub,得到其安全級別SLsub和類別范圍CRsub。

        (7) 在初步訪問結(jié)果PreResva中屬性va的所有屬性值都經(jīng)過以上判斷后,若PreResva=?,則不返回任何va屬性內(nèi)容給用戶。否則,將初步訪問結(jié)果PreResva中剩余的屬性內(nèi)容作為最終訪問結(jié)果返回給用戶。

        為了進一步說明多源類繼承類中的細粒度訪問控制機制,下面同樣將結(jié)合圖3中已進行虛屬性安全等級細化的UNION繼承類music為例,對多源類繼承類中進行細粒度訪問控制的流程和方法進行介紹。

        假設音樂網(wǎng)站上有一普通用戶user,并且該普通用戶的安全標簽為SecLuser=SLuser:CRuser,其中安全級別SLuser的內(nèi)容為sl3,CRuser的內(nèi)容默認為空。用戶user請求訪問UNION繼承類music中歌曲名字包含“晴天”的歌曲內(nèi)容。則采用細粒度訪問控制機制對用戶user的訪問請求進行控制的流程如下:

        對初步訪問結(jié)果PreRescontext中的context虛屬性內(nèi)容依次進行訪問權限判定后,PreRescontext={r18.context,r57.context}表示初步訪問結(jié)果經(jīng)過訪問權限篩選后僅剩下music繼承類中第18個實例和第57個實例中的context屬性內(nèi)容。最后,將PreRescontext作為訪問結(jié)果返回給用戶user。

        由以上介紹可知,多源類繼承類中屬性級對象的強制訪問控制可以細化到具體的屬性內(nèi)容,用戶可以訪問在多數(shù)據(jù)源屬性中其安全等級可以訪問到的所有數(shù)據(jù),而屬性上安全等級高于用戶安全等級的屬性內(nèi)容則不會包含在用戶的訪問結(jié)果中,從而很好地避免了多數(shù)據(jù)源屬性上單一安全標簽導致的用戶訪問受限的問題,實現(xiàn)了多源類繼承類上的細粒度訪問控制。

        2.5 安全性分析

        在多源數(shù)據(jù)上進行細粒度的訪問控制是為了在保證數(shù)據(jù)安全的前提下,最大限度地提高多源類數(shù)據(jù)中各虛屬性內(nèi)容的可用性。為了實現(xiàn)這一目的,本文提出了基于多源數(shù)據(jù)的安全等級細化方法。該方法考慮到對象繼承數(shù)據(jù)庫中的主體是通過訪問繼承類中的虛屬性而得到源類中對應屬性內(nèi)容的,因此若要對繼承類中的虛屬性進行粒度更細的訪問控制,需要對繼承類的虛屬性內(nèi)容根據(jù)其繼承數(shù)據(jù)所在的源類的不同而進行分組,并為繼承自不同源類的數(shù)據(jù)分組分配相應的安全標簽,從而實現(xiàn)對多源類繼承類中同一虛屬性中來自不同數(shù)據(jù)源的數(shù)據(jù)分別進行互相獨立的訪問權限判斷。由于訪問權限的判斷完全是基于用戶的安全標簽和屬性內(nèi)容安全標簽的比較的,所以同一虛屬性中各個內(nèi)容分組安全標簽的設定將直接決定細粒度訪問控制的安全性。

        SLsub≥SLSCi.a且CRsub?CRSCi.a

        SLsub≥SLUIC且CRsub?CRUIC

        可以看出,用戶sub的安全等級大于等于SCi中a屬性的安全等級,即具備SCi中a屬性的訪問權限,并且用戶sub的安全等級大于等于va所在的繼承類UIC的安全等級,即具備了UIC的訪問權限。

        由以上推理可得,按照基于多源數(shù)據(jù)的安全等級細化方法處理得到的虛屬性安全標簽集合中,同一虛屬性中繼承了不同源類對應屬性的內(nèi)容分組的安全標簽和其各自對應的源類屬性的安全標簽存在著緊密聯(lián)系,以此可以通過判定用戶對虛屬性中各個內(nèi)容分組的訪問權限來控制用戶對源類屬性內(nèi)容的訪問,從而實現(xiàn)安全的細粒度強制訪問控制。

        3 實 驗

        3.1 實驗環(huán)境

        實驗在一臺主頻為4.00 GHz、內(nèi)存為8 GB的PC機上進行,實驗平臺操作系統(tǒng)為Redhat 6.5。實驗數(shù)據(jù)集選用開源音樂數(shù)據(jù)集Million Song Dataset。

        3.2 實驗方案設計

        基于PostgreSQL12實現(xiàn)了本文提出的支持多數(shù)據(jù)源、細粒度授權的強制訪問控制模型,對該方法進行效率評估。目前還沒有一種針對對象關系數(shù)據(jù)庫的多源細粒度授權的訪問控制模型實現(xiàn),因此將本文改進的系統(tǒng)(PostgreSQL12+)與PostgreSQL12系統(tǒng)的訪問控制功能進行比較。實驗選用10個類,10 000條數(shù)據(jù),并逐漸增大數(shù)據(jù)規(guī)模進行數(shù)據(jù)隨機授權、隨機撤銷授權、查詢和更新操作,通過統(tǒng)計分析PostgreSQL12系統(tǒng)執(zhí)行時間和本文改進系統(tǒng)(PostgreSQL12+)在執(zhí)行時間上的差異,對設計的細粒度強制訪問模型給PostgreSQL12系統(tǒng)帶來的性能影響進行分析。

        3.3 用戶授權實驗分析

        首先對授權效率進行對比分析,結(jié)果如圖4所示??梢钥闯?,在10 000條數(shù)據(jù)里依次隨機授權100~1 000條數(shù)據(jù)給指定用戶,PostgreSQL12+在執(zhí)行數(shù)據(jù)授權操作時所用的時間小于未使用強制訪問控制模型的PostgreSQL12系統(tǒng)執(zhí)行相同操作時所用的時間。這是由于強制訪問控制模型通過細粒度授權規(guī)則優(yōu)化了隨機授權方式,在一定程度上減小了隨機授權操作的時間開銷,使得PostgreSQL12+數(shù)據(jù)庫授權訪問更加靈活。

        圖4 隨機授權操作執(zhí)行時間對比圖

        3.4 用戶撤銷授權實驗分析

        實驗分析了撤銷不同規(guī)模數(shù)據(jù)的時間開銷,結(jié)果如圖5所示??梢钥闯觯谑跈?0 000條數(shù)據(jù)給用戶后依次隨機撤銷100~1 000條數(shù)據(jù)的授權,PostgreSQL12+在執(zhí)行數(shù)據(jù)撤銷授權操作時所用的時間小于未使用強制訪問控制模型的PostgreSQL12系統(tǒng)執(zhí)行相同操作時所用的時間,但相對而言,強制訪問控制模型對執(zhí)行隨機撤銷授權操作的影響要更大于其對隨機授權操作的影響。這和系統(tǒng)執(zhí)行隨機授權和隨機撤銷授權操作本身用時有一定關系,同時由于強制訪問控制模型使用基于多源數(shù)據(jù)的安全等級細化方法,在較大程度上減小了時間開銷,使得PostgreSQL12+數(shù)據(jù)庫的撤銷授權操作更加高效。

        圖5 隨機撤銷授權操作執(zhí)行時間對比圖

        3.5 數(shù)據(jù)查詢實驗分析

        通過上述實驗分析可見,本文方法可以獲得更好的授權、撤銷權限效率,同時作為數(shù)據(jù)庫的訪問控制授權策略,也需要衡量其是否會對數(shù)據(jù)庫查詢本身產(chǎn)生影響。

        設計實驗分析PostgreSQL12+的數(shù)據(jù)查詢效率,結(jié)果如圖6所示??梢钥闯?,在10個類上進行查詢操作,對應的數(shù)據(jù)量分別為1 000~10 000條記錄,PostgreSQL12+在執(zhí)行用戶查詢請求時所用的時間略大于PostgreSQL12系統(tǒng)執(zhí)行用戶查詢請求所用時間,并且隨著數(shù)據(jù)規(guī)模的增大,消耗的時間也越多。因此可見強制訪問控制模型對PostgreSQL12系統(tǒng)的查詢性能是有一定影響的。究其原因,主要是對類中的各個屬性上的數(shù)據(jù)進行查詢時,均需要通過調(diào)用強制訪問控制的模塊進行處理,強制訪問控制的模塊對各個屬性進行了訪問權限判定后才能繼續(xù)查詢執(zhí)行操作,造成了一定的時間延遲。但同時強制訪問控制模型在保證數(shù)據(jù)安全的前提下,最大限度地提高多源類數(shù)據(jù)中各虛屬性內(nèi)容的可用性,改善了PostgreSQL12系統(tǒng)的性能。

        圖6 查詢操作執(zhí)行時間對比圖

        3.6 實驗結(jié)果分析

        綜合以上實驗可以看出,本文設計的強制訪問控制模型雖然在很小的程度上會降低PostgreSQL12數(shù)據(jù)庫的查詢效率,但是其也賦予PostgreSQL12數(shù)據(jù)庫授權訪問靈活、時間開銷小等優(yōu)點,是一種實用的對象關系數(shù)據(jù)庫訪問控制解決方案。

        4 結(jié) 語

        本文設計了一種對象關系數(shù)據(jù)庫環(huán)境下的強制訪問控制模型,該模型適用于多數(shù)據(jù)源細粒度訪問授權,提高了對象關系數(shù)據(jù)庫在多數(shù)據(jù)源上進行強制訪問控制的靈活性,降低了數(shù)據(jù)庫授權及撤銷授權的時間開銷。在PostgreSQL12上的實驗表明該方法可以很好地為對象關系數(shù)據(jù)庫提供靈活高效的強制訪問控制。

        猜你喜歡
        關系數(shù)據(jù)庫訪問控制數(shù)據(jù)源
        關系數(shù)據(jù)庫在高爐數(shù)據(jù)采集系統(tǒng)中的應用
        山東冶金(2022年2期)2022-08-08 01:51:30
        Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
        基于不同網(wǎng)絡數(shù)據(jù)源的期刊評價研究
        ONVIF的全新主張:一致性及最訪問控制的Profile A
        動態(tài)自適應訪問控制模型
        通信學報(2016年11期)2016-08-16 03:20:32
        淺析云計算環(huán)境下等級保護訪問控制測評技術
        大數(shù)據(jù)平臺訪問控制方法的設計與實現(xiàn)
        基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
        基于索引結(jié)構(gòu)的關系數(shù)據(jù)庫關鍵詞檢索
        分布式異構(gòu)數(shù)據(jù)源標準化查詢設計與實現(xiàn)
        精品三级国产一区二区三| 人妻丰满av无码中文字幕| 91久久精品一二三区蜜桃 | 麻豆精品一区二区三区| 久久97久久97精品免视看| 又黄又爽又色的视频| 狼色在线精品影视免费播放| 国产一区二区三区四区在线视频| 国产精品一区二区av麻豆| 久久久久久人妻一区二区三区| 日韩最新在线不卡av| 男人一插就想射的原因| 亚洲欧洲成人a∨在线观看| 把插八插露脸对白内射| 亚欧乱色束缚一区二区三区| 国产韩国一区二区三区| 亚洲 欧美 国产 制服 动漫| 成人天堂资源www在线| 18禁黄无遮挡免费网站| 亚洲国产精品国自拍av| 一本色道久久综合无码人妻 | 亚洲va在线va天堂va四虎| 蜜臀人妻精品一区二区免费| 婷婷丁香五月激情综合| 精品无码一区二区三区爱欲九九 | 国产一区二区三区护士| 欧美精品国产综合久久| 日本一区午夜艳熟免费 | 波多野结衣不打码视频| 97免费人妻在线视频| 国产成人AⅤ| 男女交射视频免费观看网站| 天天夜碰日日摸日日澡| 中文字幕不卡高清免费| 日本av一级视频在线观看| 国产综合精品| 五月天综合在线| 日本久久黄色高清视频| 一本大道熟女人妻中文字幕在线| 精品综合久久久久久97超人| 日韩精品一区二区三区四区视频|