韓道軍 賈培艷 馬宇翔
摘要: 分析了基于屬性的訪問控制模型(ABAC)的工作原理及特點(diǎn),并以在企業(yè)信息系統(tǒng)中的應(yīng)用為例說明了該模型的有效性。
關(guān)鍵詞: 基于屬性的訪問控制; 企業(yè)信息系統(tǒng); 信息安全
中圖分類號(hào):TP309.2文獻(xiàn)標(biāo)志碼:A文章編號(hào):1006-8228(2012)05-39-02
Attribute-based access control and its application in enterprise information system
Han Daojun, Jia Peiyan, Ma Yuxiang
(Institute of Data and Knowledge Engineering, Henan University, KaiFeng, Henan 475004, China)
Abstract: The process and features of attribute based access control (ABAC) is analyzed, and the effect of ABAC by an example of applying ABAC in enterprise information system is explained.
Key words: attribute-based access control; enterprise information system; information security
0 引言
訪問控制是一種常用的資源保護(hù)手段,在眾多的信息系統(tǒng)中均需要使用這種重要的信息安全技術(shù)。訪問控制的核心是授權(quán)策略。授權(quán)策略是用于確定一個(gè)主體是否對客體擁有訪問能力的一套規(guī)則。在統(tǒng)一的授權(quán)策略下,得到授權(quán)的用戶就是合法用戶,否則就是非法用戶[1]。企業(yè)信息系統(tǒng)是一種業(yè)務(wù)系統(tǒng),主要處理企業(yè)運(yùn)行過程中產(chǎn)生的各種信息。企業(yè)信息系統(tǒng)涉及到業(yè)務(wù)流程復(fù)雜、資源種類眾多和用戶數(shù)量巨大等問題,因此,人們對訪問控制技術(shù)也更為關(guān)注。在現(xiàn)有的訪問控制模型中,基于屬性的訪問控制模型(Attribute-based Access Control, ABAC)以一種統(tǒng)一的方式對訪問控制的各個(gè)要素進(jìn)行描述,使得系統(tǒng)的安全策略描述變得簡單、清晰,引起了研究人員和工作人員的密切關(guān)注[2]。本文首先介紹ABAC模型的工作原理和特點(diǎn),然后給出ABAC在企業(yè)信息系統(tǒng)中的應(yīng)用過程和具體應(yīng)用步驟,并進(jìn)一步說明了該模型的有效性。
1 背景
ABAM用屬性值元組來描述訪問矩陣中行和列對應(yīng)的主體和客體,并用關(guān)于屬性的謂詞來描述指令執(zhí)行條件,通過指令來修改系統(tǒng)狀態(tài),然后在指令和屬性滿足某個(gè)特定條件下,確認(rèn)ABAM的安全問題是可判定的[3]。在ABAM描述的基礎(chǔ)上,可將其擴(kuò)展至統(tǒng)一框架——基于屬性的訪問控制(ABAC)。ABAC表示能力較強(qiáng),可以作為一種統(tǒng)一訪問控制框架,且有相應(yīng)的訪問控制語言XACML提供支持[4]。
ABAC中的基本元素包括請求者,被訪問資源,訪問方法和條件。這些元素統(tǒng)一使用屬性來描述,而且各個(gè)元素所關(guān)聯(lián)的屬性可以根據(jù)系統(tǒng)需要定義。屬性概念的引入,可以將訪問控制中對所有元素的描述統(tǒng)一起來,提供一種統(tǒng)一描述的框架。一種典型的ABAC框架如圖1所示。
[AA][NAR][PEP][資源][訪問][PDP] [PAP][AAR][響應(yīng)] [屬性請求/響應(yīng)] [策略][NAR:原始訪問請求AA:屬性權(quán)威AAR:基于屬性訪問請求
PEP:策略執(zhí)行點(diǎn)PDP:策略判定點(diǎn)PAP:策略管理點(diǎn)]
圖1ABAC框架示意圖
在ABAC中,一次訪問控制判定過程描述如下。PEP接收原始訪問請求(NAR),然后根據(jù)NAR,利用不同的屬性權(quán)威(AA)中存儲(chǔ)的屬性信息構(gòu)建一個(gè)基于屬性的訪問請求(AAR)。AAR描述了請求者、資源、方法和環(huán)境屬性。PEP將AAR傳遞給PDP,PDP根據(jù)從PAP處獲取的策略對AAR進(jìn)行判定,并將判定結(jié)果傳給PEP,PEP執(zhí)行此訪問判定結(jié)果。
2 應(yīng)用及分析
企業(yè)信息系統(tǒng)是伴隨企業(yè)信息化過程而產(chǎn)生的業(yè)務(wù)系統(tǒng)。企業(yè)信息化實(shí)質(zhì)上是將企業(yè)的生產(chǎn)過程、物料移動(dòng)、事務(wù)處理、現(xiàn)金流動(dòng)、客戶交互等業(yè)務(wù)過程數(shù)字化,通過各種信息系統(tǒng)網(wǎng)絡(luò)加工生成新的信息資源。顯然,這些信息資源需要合理而受控地使用。例如,銷售計(jì)劃是一種信息資源,在系統(tǒng)的使用過程中需要對其進(jìn)行保護(hù),只能提供給有權(quán)限的人員進(jìn)行操作和使用。假設(shè)銷售計(jì)劃的訪問規(guī)則P1為銷售部的人能夠讀取銷售計(jì)劃,則該控制規(guī)則如圖2所示。
[Sales][Sale plans] [Read]
圖2一個(gè)訪問控制規(guī)則示例
在使用ABAC的前提下,我們可以構(gòu)造訪問控制規(guī)則P1:Permit←sCategory=Sales, aID=Read, rCategory=Sale plans。
對于系統(tǒng)中的訪問控制規(guī)則庫,可以將其存儲(chǔ)在數(shù)據(jù)庫或XML文件中。由于XML文件的可擴(kuò)展性強(qiáng),我們選用這種方式進(jìn)行編碼。對于P1,核心部分的代碼如下。
Sale
DataType="urn:oasis:names:tc:xacml:1.0:data-type:rfc822Name"/>