高翰卿,秦小麟,史文浩
南京航空航天大學 計算機科學與技術學院,南京 210016
基于目的和上下文推理的數據庫訪問控制模型*
高翰卿+,秦小麟,史文浩
南京航空航天大學 計算機科學與技術學院,南京 210016
訪問控制;目的;上下文;規則
經濟合作與發展組織于2013年最新發布的《個人數據隱私保護和跨界流通準則》[1]中提出個人隱私數據需要與可使用目的相綁定;而在隱私數據被使用前,使用者必須首先表明使用目的,只有某些特定目的的操作才能被允許。而傳統的關系數據庫訪問控制模型,如自主訪問控制、強制訪問控制、基于角色訪問控制等,主要是對用戶的訪問內容和用戶的訪問操作進行管理和限制,并沒有考慮用戶的訪問目的和數據的用途等屬性,從而無法滿足個人隱私保護環境下的數據庫安全保護功能。
為了滿足上述要求,近年來出現了多個以數據被訪問目的為研究重點的訪問控制模型。但這些模型都存在著一個共同缺點:用戶在發起訪問操作時,由用戶來輸入訪問目的。這樣就無法避免某些惡意用戶為了獲取隱私數據而編造訪問目的的情況。例如:在醫療管理系統[2]中存放著病人的電子病歷,而其中的病情和治療過程等信息可以允許研究機構和制藥公司以“研究”為訪問目的進行訪問,但當上述機構的人員欺騙性地輸入“治療”作為訪問目的發起訪問會話時,用戶個人信息將被泄露,進而可能導致針對病人的電話推銷和招聘歧視等不良結果。
在現實生活中,通常使用人的行為以及所處的環境來推測人的目的。人們將這一方法[3-5]拓展到訪問控制中,利用用戶所處的物理環境、訪問時間以及執行的任務等來刻畫訪問目的。基于這一點,本文提出了一種基于目的和上下文推理的訪問控制模型(purpose and context reasoning based access control model,PCRAC)。
PCRAC模型具有以下特點:
(1)用戶發起一個訪問會話時,不必表明訪問目的。PCRAC模型根據用戶所處的上下文環境信息以及用戶提交的操作信息,為用戶動態地分配訪問目的。
(2)數據提供者(data provider)通過設定意向目的(intended purpose)來限制隱私數據的訪問用途。訪問控制模型根據數據提供者提交的意向目的來制定相應的訪問策略。
(3)模型針對數據庫中存放的數據內容制定相應的目的訪問規則(access rule)。通過上下文環境觸發不同的規則,從而為用戶綁定不同的訪問目的。
本文組織結構如下:第2章介紹現有的基于目的訪問控制模型;第3章介紹PCRAC模型的結構以及執行流程,并以實例說明模型的可用性;第4章通過實驗證明PCRAC模型在數據庫訪問控制中的可用性和高效性;最后對文章進行總結。
由于數據庫隱私保護這一需求的急迫性,針對隱私保護提出的基于目的訪問控制的概念一經提出,馬上成為數據庫研究領域的一個熱點。近年來,先后有多個優秀的目的訪問控制模型被提出,以下將分別進行介紹。
IBM公司的Agrawal等人于2002年在VLDB會議上提出了Hippocratic數據庫的概念[6]。其中首次提出了關系數據庫中隱私保護的問題,并提出了數據庫隱私保護的10條經典規則,分別是:目的說明、數據提供者許可、收集限制、使用限制、公開限制、保留限制、準確、安全、順從和開放。根據上述10條準則,文章提出以隱私元數據為核心的Hippocratic數據庫系統架構,并且使用訪問目的作為構建隱私數據保護策略的關鍵。架構中為每個用戶綁定了被授權的訪問目的,為每個數據表綁定了可訪問目的。通過系統監測兩個訪問目的是否匹配來進行訪問控制。
基于目的的訪問控制模型(purpose based access control,PBAC)由Byunn等人在文獻[7-8]中提出。Byunn給出了訪問目的的定義,即訪問目的用來描述數據采集和數據訪問的原因,并且創新性地使用樹狀結構來存儲目的數據。該模型提出了4個不同的訪問粒度,分別是表級、屬性級、行級和元素級。對于表級和屬性級訪問控制,模型采用新建隱私信息字典的方式來存儲相關的訪問目的信息,而對于行級和元素級,則是通過在數據表中添加一列數據來存儲相應的目的信息。
Peng等人在文獻[9]中提出了“基于目的的動態訪問控制模型”。該模型不再將訪問目的與訪問主體靜態地綁定,而是創建了條件角色(conditional roles)的概念,將訪問目的與條件角色綁定,在用戶進行訪問時,通過激活相應的角色,獲取相應的訪問目的。這樣做改進了PBAC模型中主體與訪問目的靜態綁定的缺點。
Kabir等人在文獻[10]中提出了“基于動態角色和條件目的的訪問控制”。該模型基于RBAC(rolebased access control)模型[11]提出了條件目的的概念,也就是被訪問的客體與一個額外的數據形式條件相關聯,用來指定當前數據內容展現給訪問者的形式。該模型提高了訪問控制的靈活程度,在適應更廣泛的訪問類型的同時,盡可能地保護隱私數據的內容。
Colombo等人在文獻[12]中提出創建公司的實際問題:數據庫中存放著用戶住址等隱私數據,而使用的關系數據庫并不能提供個人化、隱私化的數據保護能力。對此,作者在PuRBAC(purpose-aware RBAC)模型[13]的基礎上,使用查詢語句重寫技術[14-15],解決了細粒度基于目的訪問控制的問題。
劉逸敏等人在文獻[16-18]中提出了“基于目的的隱私數據訪問控制模型”,將數據的訪問目的表示為隱私數據的一個可訪問標簽,以隱私數據的一個屬性的形式存儲。該模型將訪問控制模型抽象為一棵隱私泄漏風險樹,將查詢改寫為對風險平衡樹的查詢,以評估查詢的隱私泄露風險。該模型被使用到XML(extensible markup language)數據中,對模型中的隱私泄漏風險樹等概念進行了實例化的應用。
本文選擇以PBAC模型為基礎,使用規則推理機制進行訪問目的分配,從而更加靈活地將用戶與訪問目的相結合,增加了訪問控制機制的靈活性和安全性。
上文對現有的基于目的訪問控制模型進行了介紹。通過總結和比較,發現這些模型存在一個共同的缺點,即用戶的訪問目的需要訪問者輸入。這個缺點會導致惡意用戶偽造訪問目的,從而達到欺騙訪問控制系統,獲取隱私數據的結果。
針對這個不足,對PBAC模型進行了改進和擴展,提出了一種基于規則推理的訪問控制模型PCRAC。本模型利用用戶環境上下文、用戶操作請求等信息,通過規則推理得出用戶的訪問目的,從而解決了現有PBAC模型的上述缺點,可以更安全地保護數據庫中的隱私數據。
3.1模型結構
在PCRAC模型中,為了解決動態分配訪問目的的問題,引入了訪問目的規則集。將用戶的輸入信息、上下文信息以及角色信息等組合成目的上下文字典(context data dictionary,CDD),通過激活相應的目的規則來為用戶分配相應的訪問目的。PCRAC模型的結構如圖1所示。

Fig.1 Construction diagram of PCRAC model圖1PCRAC模型結構圖
PCRAC模型可以形式化地定義如下。
(1)UR?USER×ROLE:表示一個從用戶集USER到角色集ROLE的多對多分配關系,即一個用戶可以擁有多個角色,而一個角色也可以分配給多個用戶。
(2)CDD:上下文字典。上下文用來表示當前對象所處的環境。根據文獻[19]中的定義,上下文包括物理變量(如網絡類型、物理位置等)和人為因素(如用戶行為等),上下文根據使用環境等信息構造出一個系統的行為環境。上下文字典定義如下:
① AN(attribute name)={Attr1,Attr2,…,Attrn}:表示上下文中包括的屬性名稱集合。AN可能是時間、位置、IP等一些用戶所處的外部環境信息,也可能是系統內部的狀態信息,比如用戶訪問量、用戶位置等。
②AV(attribute value):表示上下文屬性的取值集合。上下文屬性的取值是動態變化的,通過相應的獲取函數,在用戶發起訪問時抓取數據。
PCRAC模型的上下文字典中主要包括用戶所處的環境,以及當前程序上下文環境和用戶的操作請求等信息。
(3)PURP={purp1,purp2,…,purpn}:表示數據庫系統中的訪問目的集合。
(4)PT(purpose tree)=PURP×PURP:目的樹的概念最早由Byunn[5]提出,用來表示訪問目的集合中元素之間的繼承關系。目的樹中,每個節點代表一個訪問目的,每條邊代表兩個目的之間的偏序關系。設PT樹中兩個目的為 pi、pj,稱 pi是 pj的祖先,當樹中存在一條從 pi到 pj的下行邊,而此時 pj稱為pi的子孫。
表示關聯了訪問目的的客體oip與關系操作perm間的對應關系。
(8)COND=AN×AV:表示上下文條件表達式集合。其中,AN為上下文屬性名;AV為管理員為屬性名設定的值;COND用來記錄屬性 field的允許取值范圍。
3.2目的規則建立
目的規則作為PCRAC模型的核心,用來動態地為訪問用戶分配訪問目的。目的規則集中每條規則都是以訪問目的為規則頭,上下文條件集作為規則體。模型通過用戶的上下文差異,激活相應的規則,從而為用戶分配相應的訪問目的。下面給出目的規則結構體的定義以及創建互斥目的規則集(mutual purpose rule,MPR)的算法:
在PCRAC模型中,目的規則結構體包括規則頭和規則體兩部分。規則頭中存儲訪問目的Purpose,這里要保證Purpose為系統訪問目的集PURP中的元素;而規則體包含了觸發這條規則的所有上下文條件,每個條件之間由邏輯運算符“&”進行連接。如果當前用戶的上下文屬性值滿足規則集中一條規則rule的所有條件時,該規則被觸發。為了避免多條規則同時被觸發而導致的邏輯混亂,定義了互斥規則集的概念。
定義1(互斥規則集)

上下文條件間的包含關系表示:兩個條件的屬姓名一致,且屬性值存在包含關系。其中,is_in()函數用來判斷實數域中的包含關系。
上述定義互斥規則集用來描述一組規則,其中任意兩條規則的規則體中包含的屬性不完全一致。

算法1規則編碼算法

算法1中,rule_length用來記錄一條規則rule中上下文條件數,而con_num用來記錄上下文屬性集CA中屬性的個數。算法3~10行用來遍歷規則rule的每一個上下文條件,若當前條件rule.condi在上下文屬性集CA中在第 j位,則創建一個二進制串temp,temp的第 j位為1,其他位為0。然后,將規則編碼code與temp做“與”運算,從而將編碼code的第j位置1。這樣,code就是規則rule的編碼。
通過上述編碼方法,將每條規則的規則體表述為一串二進制碼。在每次進行規則插入時,不再需要線性地將新插入規則與規則集中每一個規則相匹配,而只需將新的規則進行編碼,與規則集中已有的規則對應的編碼進行逐一比較。下面給出規則互斥性判斷算法。
算法2規則互斥性判斷算法
輸入:規則集編碼表rule_code;新插入規則new_rule。
輸出:TRUE或FALSE。


算法2中3~4行用于順序遍歷編碼表,當新插入規則的編碼new_code與編碼表中一項相同,則進入該規則;5~10行用于判斷該規則是否與新插入的規則互斥,其中is_cover函數首先判斷兩個條件表達式的屬性名是否一致,若一致,則繼續判斷兩個表達式是否滿足實數域上的包含關系。若所有條件都為相互包含關系時,則判斷兩條規則不具有互斥性,從而返回FALSE。
通過上述算法,將每次插入時順序遍歷檢查互斥性的任務簡化為比較兩個比特串是否一致,從而將時間開銷降為O(rule.num+k×rulei.length)。其中rule.num表示規則條數,k表示與當前待插入規則編碼一致的規則條數,rulei.length表示第i條規則的規則體長度。
3.3目的規則推理與匹配
在訪問主體發起會話時,PCRAC模型將訪問目的推理過程分為兩個階段:
(1)在用戶登錄時,PCRAC模型調用上下文獲取函數,得到用戶的上下文屬性值,并根據用戶的身份標識,為其分配角色。在用戶的上下文變量獲取完畢后,將其保存至上下文屬性字典中。
(2)將用戶的上下文屬性字典作為輸入參數傳遞到規則匹配模塊。在該模塊中,系統將用戶的上下文屬性值與每一條規則進行匹配。由于規則集具有互斥性,每次匹配至多有一條規則與用戶的上下文環境相匹配。下面給出規則匹配算法。
算法3規則匹配算法

22.return NULL;
算法1~5行用于找到當前用戶被分配的角色對應的全部規則,其中first_rule函數用于獲取當前角色對應的第一條規則的位置。算法6~18行將上下文屬性字典CDD與當前待匹配的規則rule_temp進行屬性的一一匹配,其中is_in函數用來判斷rule_temp當前的條件condi是否在規則頭集合H_Rule中,如果在,則進行規則遞歸推理;is_cover函數與規則互斥性判斷算法中的一致,用于判別兩個條件表達式是否具有包含關系。19~21行用于判斷當前規則rule_ temp是否與屬性字典匹配;若匹配成功,則將rule_ temp規則的規則頭rule_temp.purpose賦予給用戶。
3.4PCRAC模型執行流程
本模型主要包括3個階段:用戶發起會話的輸入階段、基于規則推理的訪問目的分配階段和目的訪問控制階段。具體執行流程如圖2所示。
詳細步驟描述如下:
(1)在用戶發起一個新的會話(session)后,Client模塊向用戶請求身份驗證;用戶將身份認證信息發送回Client模塊。Client通過驗證用戶與身份認證信息的有效性來判斷是否允許用戶繼續訪問。
(2)Client模塊將當前訪問的用戶信息發送到用戶-角色表中,該表存放有系統的UR(user-role)信息。根據表中信息,系統為用戶分配角色。

Fig.2 Flow diagram of PCRAC model圖2PCRAC模型流程圖
(3)Client模塊將用戶提出的操作信息發送到目的規則集。
(4)在為當前用戶分配相應的角色后,將用戶信息以及角色信息發送到目的規則集。
(5)通過上面的介紹,上下文屬性字典用于存放用戶的上下文信息。在Client模塊通過用戶的身份驗證后,激活上下文屬性字典模塊中包括的環境數據抓取函數。抓取到的上下文變量數據存放在上下文屬性字典中。隨后,將屬性字典發送到目的規則集。
(6)目的規則集分別接收用戶信息、用戶操作信息以及上下文信息。該模塊需要做以下事情:
①整合、處理數據,將收到的信息分為用戶角色、上下文信息、操作類型和操作對象4部分,整合成為用戶信息(user information,UI)。
②調用規則匹配算法,將用戶信息UI與目的規則集中的規則進行逐條匹配。由于規則集在構造時已保證了規則之間的互斥性,可以保證在匹配過程中至多有一條規則與用戶信息相匹配。如果匹配成功,則將匹配的規則頭作為用戶本次會話的訪問目的(access purpose,AP);否則,中斷會話。
(7)將當前用戶的訪問目的AP傳遞到OIP(Object-IP)模塊中。
(8)將用戶的操作信息發送到OIP模塊。
(9)系統根據用戶的操作信息找到數據庫中存放的相應客體,并在目的數據字典中找到與客體對應的意向訪問目的IP(intended purpose)。
(10)模型進行IP與AP的匹配,若IP與AP一致,則允許用戶的操作請求;若不一致,則查詢目的樹PT,判斷AP與IP的關系。若存在AP?IP,則認為當前用戶的訪問目的是可以被許可的(permitted),否則拒絕用戶的操作請求。
綜上所述,PCRAC模型在用戶發起會話后,通過模型內部的上下文抓取函數,將用戶當前的上下文信息填寫到上下文屬性字典中。然后利用上下文屬性字典和用戶的角色信息等,在目的規則集中進行逐條匹配。如果匹配成功,則將該規則的規則頭中存儲的訪問目的分配給當前用戶。否則,拒絕用戶繼續訪問。之后,將用戶的操作信息及訪問目的傳送到訪問控制決策模塊。通過查詢目的數據字典,判斷是否允許用戶執行相應的操作。通過規則推理機制,更加安全、智能地獲取用戶的訪問目的。因此實現了一種細粒度、實時動態的訪問控制機制,能夠更加安全地為用戶分配合適的權限。
數據庫訪問控制模塊的評判標準主要包括有效性和高效性。由于PCRAC模型包含規則集的構造和數據庫操作中的訪問控制兩個模塊,本文在測試模型的高效性時分別對這兩部分進行實驗。而對于模型的有效性,本文使用實例分析的方法進行驗證。因此,設置了如下3組實驗:
(1)基于不同規模的規則集下規則插入時間的比較。本組實驗以規則集大小為自變量,測試了規則插入需要的時間。
(2)PCRAC模型應對惡意攻擊的有效性驗證。本組實驗用來驗證模型在實際場景中能否有效地阻止惡意攻擊。
(3)PCRAC模型查詢效率驗證。本組實驗將PCRAC模型與PBAC模型進行對比,在相同的操作下比較分別帶有兩種模型的數據庫系統查詢所需的時間。
4.1規則插入效率實驗
本實驗包含兩部分,首先測試單次規則集構造的效率。以規則集的大小作為變量,進行了5次實驗,實驗結果如圖3所示。

Fig.3 Expense of rule inserting operation圖3 規則插入開銷實驗結果
在圖3中,當規則集中規則數為10、30、40條時,時間消耗較低,僅用20 μs。這是因為新插入的規則的編碼與規則集中任意一個現有規則編碼都不重合,直接執行插入。當規則數為20和50時,插入耗時約為100 μs。這是因為新插入的規則的編碼與規則集中已有的某個規則編碼一致,需要通過比較兩條規則體來進行規則互斥性檢查。因此,這兩次插入的時間開銷大于其他3次。
實驗第二部分測試規則集構造的平均效率。仍以規則集大小作為自變量,進行50次類似實驗,求時間開銷均值,實驗結果如圖4所示。

Fig.4 Average expense of rule inserting operation圖4 規則插入平均開銷實驗結果
在圖4中,規則插入的開銷隨規則集的增加而緩慢增加,并且都能保證在0.1 ms以下。這個開銷可以滿足數據庫系統要求的高效性。
4.2PCRAC模型有效性實驗
針對上文提到的醫療管理系統,系統中存放著醫院治療記錄表(PI),如表1所示。

Table1 Patient index表1 治療記錄表
本文將訪問的目的分為3大類:治療(cure)、研究(research)和審計(audit)。而治療包括開處方(prescribe)和做手術(operation),研究包括病情研究(patient?s condition research,PCR)和藥物作用研究(medicine effect research,MER)。這個層次性目的集構成了如圖5所示的目的樹。

Fig.5 Purpose tree of medical administrative system圖5 醫療管理系統目的樹
針對醫療管理系統中的PI表,設計了以下規則:

第一條規則表示:當主治醫生在醫院內部訪問當前在診病人的年齡、性別和病情信息時,分配“cure”訪問目的;第二條規則表示:當研究人員訪問已經出院的病人的病情和治療方法信息時,分配“research”訪問目的;第三條規則用于規定hospital的范圍,當規則1被觸發,判斷position IN hospital時,規則匹配算法跳到第三條規則進行匹配。
上述規則在PCRAC模型中以表2和表3編碼后的形式存儲。
如表3所示,對于同樣擁有Doctor角色的用戶Sam和King來說,Sam發起一個查詢請求“Select P_sex From PI Where P_id=‘161060205’”,而King發起查詢請求“Select P_age From PI Where P_id=‘161060508’”。根據病人信息表中的情況,兩位被查詢的病人的P_State=1,即都處在住院期間。根據上下文屬性字典中Position信息,用戶King處在hospital內部,而Sam則在hospital外,雖然二者的角色相同,且訪問目標都滿足訪問規則,但用戶Sam的位置信息不滿足IN hospital。因此模型將用戶Sam的訪問行為視為惡意攻擊,系統禁止Sam執行該查詢請求,而King可以訪問P_age信息。

Table 2 Rule encoding表2 規則編碼表

Table 3 Data dictionary of context表3 上下文數據字典
上面的實例說明,PCRAC模型在應對非法區域的惡意攻擊方面具有很好的效果。此外,模型在應對用戶名和密碼的惡意泄露、內部人員的惡意攻擊等方面都具有較好的效果。
4.3PBAC模型與PCRAC模型的效率對比實驗
為了驗證PCRAC模型的查詢效率,本文實現了PBAC模型,并將兩個模型添加到實驗室自主實現的NHDB關系數據庫系統[20]中。每次系統處理查詢操作之前,需要通過匹配目的規則來為用戶分配一個訪問目的,因此本實驗同樣以規則集的大小作為自變量,進行5次對比實驗,實驗結果如圖6。

Fig.6 Comparison of accessing time between PCRAC and PBAC圖6PCRAC模型與PBAC模型時間開銷對比
在圖6中,PBAC模型不存在規則推理機制,因此訪問控制時間開銷不隨規則數的增加而增加。而對于PCRAC模型,時間開銷曲線呈增長趨勢。這是因為規則數的增加,提高了規則匹配的時間開銷。但是本文在存儲規則時,以每條規則對應的訪問角色作為關鍵字,建立了類似Hash表的鏈表存儲結構。因此,規則數雖然以線性增長,但鏈表數據結構保證了每次搜索的次數不會以線性規模進行增長。在實驗結果圖中可以看出,當規則數達到50次時,訪問控制開銷漲幅已經逐漸趨緩。
本文針對基于目的的訪問控制需要用戶輸入訪問目的的缺點,提出了一種基于目的和上下文的訪問控制模型,該模型以用戶所處上下文環境變量和用戶操作作為輸入參數,使用規則推理機制,可以為用戶動態分配訪問目的,從而提高了訪問控制機制的安全性。在實驗驗證階段,從有效性和高效性兩方面入手,分別做了實例分析和效率測試實驗。實驗結果表明,本文模型能實時地獲取用戶的上下文數據,并根據該數據進行規則推理。本文模型適用于傳統關系數據庫系統。
作為一個使用規則的訪問控制模型,本文模型需要在使用前針對數據庫中存放的數據創建相應的規則集,這需要相關領域專家的介入。因此,下一步研究工作將針對這一問題,嘗試提取不同數據庫的規則創建的共同點,抽象出一套可以適應盡可能多的實際應用環境的規則集。
References:
[1]Charney S.The evolution of online identity[J].IEEE Security &Privacy,2009,7(5):56-59.
[2]Rahmouni H B,Solomonides T,Mont M C,et al.Privacy aware access controls for medical data disclosure on European healthgrids[J].Studies in Health Technology&Informatics,2010,159:14-27.
[3]Daniele L,Costa P D,Pires L F.Towards a rule-based approach for context-aware applications[C]//LNCS 4606:Dependable and Adaptable Networks and Services,Proceedings ofthe 13th Open European Summer School and IFIP TC6.6 Workshop,Enschede,The Netherlands,Jul 18-20,2007.Berlin,Heidelberg:Springer,2007:33-43.
[4]Liu Dong,Meng Xiangwu,Chen Junliang,et al.Algorithms for rule generation and matchmaking in context-aware system[J].Journal of Software,2009,20(10):2655-2666.
[5]Costa P D,Almeida J P A,Pires L F,et al.Evaluation of a rule-based approach for context-aware services[C]//Proceedings of the 2008 IEEE Global Telecommunications Conference,New Orleans,USA,Nov 30-Dec 4,2008.Piscataway, USA:IEEE,2008:1-5.
[6]Agrawal R,Kiernan J,Srikant R,et al.Hippocratic databases[C]//Proceedings of the 28th International Conference on Very Large Data Bases,Hong Kong,China,Aug 20-23,2002. San Fransisco,USA:Morgan Kaufmann,2002:143-154.
[7]Byunn J W,Li Ninghui.Purpose based access control for privacy protection in relational database systems[J].The International Journal on Very Large Data Bases,2008,17(4): 603-619.
[8]Byunn J W,Bertino E,Li Ninghui.Purpose based access control of complex data for privacy protection[C]//Proceedings of the 10th ACM Symposium on Access Control Models and Technologies,Stockholm,Sweden,Jun 1-3,2005. New York,USA:ACM,2005:102-110.
[9]Peng Huanchun,Gu Jun,Ye Xiaojun.Dynamic purposebased access control[C]//Proceedings of the 2008 IEEE International Symposium on Parallel and Distributed Processing with Applications,Sydney,Australia,Dec 10-12,2008.Piscataway,USA:IEEE,2008:695-700.
[10]Kabir M E,Wang Hua.Conditional purpose based access control model for privacy protection[C]//Proceedings of the 20th Australasian Database Conference,Wellington,New Zealand,2009.Darlinghurst:Australian Computer Society, Inc,2009:135-142.
[11]Sandhu R,Coyne E,Feinstein H,et al.Role-based access control models[J].IEEE Computer,1996,29(2):38-47.
[12]Colombo P,Ferrari E.Enforcement of purpose based access control within relational database management systems[J]. IEEE Transactions on Knowledge&Data Engineering, 2014,26(11):2703-2716.
[13]Masoumzadeh A,Joshi J B D.PuRBAC:purpose-aware role-based access control[C]//LNCS 5332:Proceedings of the 2008 International Conference on the Move to Meaningful Internet Systems,Monterrey,Mexico,Nov 9-14,2008. Berlin,Heidelberg:Springer,2008:1104-1121.
[14]Van Staden W,Olivier M S.Extending SQL to allow the active usage of purposes[C]//LNCS 4083:Proceedings of the 3rd International Conference on Trust and Privacy in Digital Business,Kraków,Poland,Sep 4-8,2006.Berlin,Heidelberg:Springer,2006:123-131.
[15]Agrawal R,Bird P,Grandison T,et al.Extending relational database systems to automatically enforce privacy policies [C]//Proceedings of the 21st International Conference on Data Engineering,Tokyo,Japan,Apr 5-8,2005.Washington:IEEE Computer Society,2005:1013-1022.
[16]Liu Yimin,Wang Zhihui,Wang Wei.Research and implementation of purpose-based privacy access control policy in XML data model[J].Computer Applications&Software, 2013,30(2):148-151.
[17]Liu Yimin.Purpose based access control model on privacy data[D].Shanghai:Fudan University,2012.
[18]Liu Yimin,Wang Zhihui,Zhou Haofeng,et al.Privacyaware data purpose based access control for relational database[J].Journal of Frontiers of Computer Science and Technology,2010,4(3):222-230.
[19]Dey A K,Providing architectural support for building context aware applications[D].Georgia Institute of Technology, 2000.
[20]Lin Junhai,Qin Xiaolin.NHDB relational database system [J].Journal of Nanjing Aeronautical Institute,1989,21(3): 99-103.
附中文參考文獻:
[4]劉棟,孟祥武,陳俊亮,等.上下文感知系統中的規則生成與匹配算法[J].軟件學報,2009,20(10):2655-2666.
[16]劉逸敏,王智慧,汪衛.XML數據模式下基于purpose的隱私訪問控制策略研究與實現[J].計算機應用與軟件, 2013,30(2):148-151.
[17]劉逸敏.基于訪問目的的隱私數據訪問控制機制研究[D].上海:復旦大學,2012.
[18]劉逸敏,王智慧,周皓峰,等.基于Purpose的隱私數據訪問控制模型[J].計算機科學與探索,2010,4(3):222-230.
[20]林鈞海,秦小麟.NHDB關系數據庫系統[J].南京航空學院學報,1989,21(3):99-103.

GAO Hanqing was born in 1992.He is an M.S.candidate at Nanjing University of Aeronautics and Astronautics. His research interests include security in database,cloud computing and distributed database,etc.
高翰卿(1992—),男,遼寧丹東人,南京航空航天大學計算機科學與技術學院碩士研究生,主要研究領域為數據庫安全,分布式數據庫等。

QIN Xiaolin was born in 1953.He is a professor and doctoral supervisor at Nanjing University of Aeronautics and Astronautics,and the senior member of CCF.His research interests include spatial and spatio-temporal databases, data management and security in distributed environment,etc.
秦小麟(1953—),男,江蘇南京人,南京航空航天大學教授、博士生導師,CCF高級會員,主要研究領域為空間與時空數據庫,分布式數據管理與安全等。

SHI Wenhao was born in 1988.He is an M.S.candidate at Nanjing University of Aeronautics and Astronautics.His research interests include access control and cloud computing,etc.
史文浩(1988—),男,河北衡水人,南京航空航天大學計算機科學與技術學院碩士研究生,主要研究領域為訪
問控制,云計算技術等。
Purpose and Context Reasoning Based Access Control Model on Databases?
GAO Hanqing+,QIN Xiaolin,SHI Wenhao
College of Computer Science and Technology,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China
+Corresponding author:E-mail:gaohqnuaa@foxmail.com
GAO Hanqing,QIN Xiaolin,SHI Wenhao.Purpose and context reasoning based access control model on databases.Journal of Frontiers of Computer Science and Technology,2016,10(9):1229-1239.
With the rapid development of information technology today,as the most effective storage data tool,the database stores a large number of data related to userys privacy.But the traditional database access control model cannot guarantee the security of personal privacy data due to the different degrees of protection for the privacy information between different people.This gives birth to the emergence of purpose based access control model.Existing models concentrate on binding the data with intend purpose dynamically,but rarely concern about the distribution between users and access purpose.On the basis of previous studies,this paper proposes a purpose and context based access control model,which uses the rule reasoning mechanism and takes the context information of users as the trigger condition.In this way,the access purpose can be distributes to user dynamically.The experiment shows that,the new model not only makes up the shortcomings of existing models,but also controls the access behavior from user to database efficiently.
access control;purpose;context;rule
在信息技術高速發展的今天,作為存儲數據最有效的工具,數據庫存儲了大量與用戶個人隱私相關的數據。由于每個人對于隱私信息的保護程度不同,傳統數據庫訪問控制無法保證隱私數據的安全,從而產生了基于目的的訪問控制模型。現有的基于目的訪問控制模型主要針對數據與允許目的的動態綁定方式進行研究,考慮用戶與訪問目的的動態分配的研究較少。在過去研究的基礎上,提出了一種基于目的和上下文的訪問控制模型,模型使用規則推理機制,以用戶的上下文信息作為規則觸發條件,動態地為用戶分配訪問目的。實驗結果表明,該模型不僅彌補了現有模型的缺點,而且能夠高效地控制用戶對數據庫中隱私數據的訪問行為。
2015-07,Accepted 2015-10.
*The National Natural Science Foundation of China under Grant Nos.61373015,61300052,41301047(國家自然科學基金);the PriorityAcademic Development Program of Jiangsu Higher Education Institutions(江蘇高校優勢學科建設工程資助項目).
CNKI網絡優先出版:2015-11-02,http://www.cnki.net/kcms/detail/11.5602.TP.20151102.0857.002.html
A
TP311