丁 滟,王 鵬,王 闖,李志鵬,宋連濤,馮了了
(國防科技大學計算機學院,湖南 長沙 410073)
訪問控制[1]是數(shù)據(jù)保護的基礎(chǔ)性技術(shù)之一。傳統(tǒng)訪問控制模型主要有自主訪問控制模型DAC(Discretionary Access Control)、強制訪問控制模型MAC(Mandatory Access Control)和基于角色的訪問控制模型RBAC(Role-Based Access Control)3種。基于內(nèi)核的強制訪問控制因運行在高特權(quán)級,能夠為系統(tǒng)帶來較強的安全性保障。
隨著信息系統(tǒng)應用場景向多元化的趨勢演變,信息敏感等級可能隨應用場景而動態(tài)變化,對訪問控制的靈活性要求越來越高。
在云原生應用的部署運行中,應用以容器鏡像的形式發(fā)布,對應用資源訪問的安全策略也隨之一同發(fā)布,規(guī)定容器應用對容器內(nèi)部以及主機操作系統(tǒng)資源的訪問權(quán)限。然而,由于容器發(fā)布時并不能完全確定未來運行該容器平臺的安全級別,當容器鏡像運行在不同安全級別的平臺上時,需根據(jù)其運行環(huán)境動態(tài)調(diào)整安全策略。密碼服務等高安全等級要求的計算平臺一般會根據(jù)生命周期被分為出廠、安裝、就緒和工作等不同狀態(tài),平臺處于不同狀態(tài)時,系統(tǒng)中運行的主體以及受保護的客體資源都不相同,對系統(tǒng)的資源管理、設(shè)備管理和業(yè)務處理等均提出了不同的安全管控需求。在 BYOD(Bring Your Own Device)環(huán)境下,為滿足員工隨時隨地使用各種智能終端安全訪問公司數(shù)據(jù)和應用程序資源的需求,需要根據(jù)其使用的設(shè)備類型、位置、時間和訪問對象等因素對其訪問權(quán)限進行動態(tài)調(diào)控,以平衡辦公效率與安全。
為實現(xiàn)細粒度動態(tài)訪問控制,研究人員提出了基于時間、空間、行為和屬性等一系列訪問控制模型并進行了應用性探索。Bertino等人[2]提出了一種TRBAC(Temporal Role-Based Access Control)模型,將時間引入RBAC模型,以實現(xiàn)在不同時間激活不同角色并解決角色激活的相互依賴問題。Joshi等人[3]提出了一個基于廣義時態(tài)角色的訪問控制GTRBAC(Generalized Temporal Role-Based Access Control)模型,以表示角色、用戶-角色和角色-權(quán)限分配的周期性或持續(xù)時間約束。張宏等人[4]提出了一個支持空間上下文的訪問控制模型,提出了空間角色概念,可根據(jù)用戶的空間位置激活相匹配的角色。Cui等人[5]提出了一個擴展的基于角色的訪問控制ExRBAC(Extended Role-Based Access Control)模型,以表達身份和時空約束。李鳳華等人[6]提出了基于行為的訪問控制模型,通過行為來綜合角色、時態(tài)和環(huán)境的安全信息,增強了訪問控制策略的表達能力。為解決多方訪問控制下信任等級的細粒度區(qū)分問題,李唯冠等人[7]提出一種帶屬性策略的RBAC 權(quán)限訪問控制模型,往角色中引入屬性,提供了更細粒度的控制,增強了訪問控制的靈活性和精確性。Hu等人[8]提出了基于屬性的訪問控制方案,通過設(shè)置可擴展的用戶、客體和環(huán)境屬性,解決了基于身份限定符的訪問控制策略表達能力不足的問題。劉曉威等人[9]設(shè)計實現(xiàn)了一個基于環(huán)境屬性的訪問控制模型和原型系統(tǒng),將內(nèi)存占用率、CPU負載等環(huán)境屬性引入訪問控制的判定過程。微軟從 Windows 8開始引入動態(tài)訪問控制并不斷改進,將訪問控制主體從單純的用戶擴展到角色及訪問設(shè)備,客體引入資源敏感度,并采用集中式的域控制器通過布爾函數(shù)進行統(tǒng)一判斷授權(quán),實現(xiàn)了訪問權(quán)限的動態(tài)調(diào)控[10]。
上述模型考慮了多種動態(tài)因素,但大都沒有落地到操作系統(tǒng)。文獻[9]中的模型未與現(xiàn)有操作系統(tǒng)的訪問控制機制相結(jié)合,在表達能力和靈活性上還存在不足。本文將屬性與經(jīng)典操作系統(tǒng)的訪問控制機制相結(jié)合,提出了基于屬性的操作系統(tǒng)動態(tài)強制訪問控制模型,并在Linux平臺上實現(xiàn)了原型系統(tǒng)。實驗結(jié)果表明該系統(tǒng)能夠?qū)崿F(xiàn)靈活的權(quán)限調(diào)控,且性能開銷小。
本文模型不再單純地從操作系統(tǒng)訪問控制主客體的安全標記信息來構(gòu)建安全規(guī)則,而是引入屬性對訪問請求時的具體信息進行描述,并根據(jù)屬性描述的對象將其分類為主體屬性類別ATTSUB、客體屬性類別ATTOBJ和環(huán)境屬性類別ATTENV。
ATTSUB是對主體的訪問控制特征的描述,包括角色和安全級別等屬性。ATTOBJ是對訪問對象的訪問控制特征的描述,包括類別和敏感級別等屬性;ATTENV是對訪問請求發(fā)起時環(huán)境的訪問控制特征的描述,包括時間和系統(tǒng)狀態(tài)等屬性。
各屬性都有一組表示屬性狀態(tài)的屬性值,屬性值可表示為原子形式或區(qū)間形式。原子式屬性如角色屬性,其取值由崗位名集合組成。區(qū)間式屬性如時間屬性,其取值可由一組時間段組成的集合組成。
2.1.1 基本概念
(1)屬性。表示為A=(c,V),其中,c∈{ATTSUB,ATTOBJ,ATTENV},表示屬性A所屬類別;V表示屬性A的取值集合,表示屬性值域。
(2)屬性值域。表示為原子類型Atomic或區(qū)間類型Range取值集合,形式化定義如式(1)所示:
(1)
其中,category(A)表示屬性取值類型,當category(A)為原子類型取值時,屬性值域VA為原子類型集合list(A);當category(A)為區(qū)間類型取值時,屬性值域VA為區(qū)間類型取值集合2list(A)。
(3)屬性組合。表示為2個或多個屬性之間屬性值域的笛卡爾積,2個屬性組合的定義如式(2)所示:
A1×A2=VA1×VA2=
{(vA1,vA2)|vA1∈VA1,vA2∈vA2}
(2)
n個屬性組合可通過式(3)遞歸定義:
A1×A2×…×An=
A1×(A2×…×An-1×An)
(3)
(4)訪問權(quán)限。表示為P=(s,o,OPS),其中s表示用戶或進程等實體;o表示計算機系統(tǒng)中需要保護的對象,也是主體訪問的目標;OPS表示主體可以對客體或系統(tǒng)進行的操作集合。針對某一對象的訪問權(quán)限集合又被稱為安全規(guī)則集。值得注意的是,本文提出的是安全規(guī)則集的通用表示形式,在具體使用時,白名單策略、多級安全策略等均可以展開為上述基礎(chǔ)形式。
(5)屬性訪問權(quán)限。表示為exPA={(vA,SP,vA)|vA∈VA},其中vA∈VA表示屬性A的某個屬性取值;SP,vA表示屬性取值為vA時所對應的訪問權(quán)限集合,該訪問權(quán)限集合又被稱為屬性安全規(guī)則集。
相比前文的訪問權(quán)限,屬性訪問權(quán)限增加了屬性維度,表示當系統(tǒng)處于不同屬性取值時分別對應不同的屬性安全規(guī)則集。引入類別屬性,對訪問請求首先進行類別屬性分類,進而對每個屬性取值制定對應的屬性安全規(guī)則集。在系統(tǒng)安全策略加載時,將對各個屬性類別中的不同屬性取值所對應的訪問控制規(guī)則集一次性都裝載入內(nèi)核,當訪問發(fā)生時,系統(tǒng)在捕獲訪問請求后,通過屬性匹配,定位具體的屬性安全規(guī)則集來實施訪問權(quán)限的動態(tài)調(diào)整。
2.1.2 模型定義
基于屬性的操作系統(tǒng)動態(tài)強制訪問控制模型,將訪問控制各要素落地到操作系統(tǒng)層面。如圖1所示,該模型由準備階段和動態(tài)訪問控制階段組成。
Figure 1 An attribute-based dynamic mandatory access control model for operating system
在準備階段,將預先建立的安全規(guī)則集載入內(nèi)核,包括屬性相關(guān)的屬性安全規(guī)則集和屬性無關(guān)的通用安全規(guī)則集。本文將這種能快速命中的安全規(guī)則集稱為活躍安全規(guī)則集。
在動態(tài)訪問控制階段,屬性收集點ACP(Attribute Collection Point)負責主體、客體和環(huán)境屬性的收集、存儲和管理,并周期性將屬性值傳遞給策略判定點PDP(Policy Decision Point)。
策略執(zhí)行點PEP(Policy Execution Point)截獲訪問控制主體的每一次訪問請求,向PDP發(fā)出決策請求,接收PDP返回的決策結(jié)果,以允許或拒絕該訪問請求。
PDP根據(jù)接收到的屬性值集合信息映射到一組生效屬性安全規(guī)則集,并與通用安全規(guī)則集分別進行決策后,將最終的聯(lián)合決策結(jié)果返回給PEP。本文將訪問請求到達時參與決策的安全規(guī)則集稱為生效安全規(guī)則集。
PDP決策過程如圖2所示。
Figure 2 Flow chart of PDP decision
策略判定點PDP接收每一個訪問請求作為輸入,該訪問請求對應一個訪問權(quán)限請求Requests=(s,o,OPS)。
首先判斷訪問請求是否被安全模塊限制,在本文模型中,即判斷其是否存在通用安全規(guī)則集,若存在,則先由生效屬性安全規(guī)則集集合進行屬性權(quán)限檢查,再由通用安全規(guī)則集進行通用權(quán)限檢查。若不存在,跳過安全模塊權(quán)限檢查。
對于訪問權(quán)限請求(s,o,OPS),PDP首先匹配生效屬性安全規(guī)則集集合進行訪問控制決策。當(s,o)包含在第j個屬性安全規(guī)則集SP,vAj中時,如果主體對客體的操作在規(guī)則SP,vAj[s,o]中被允許執(zhí)行,對應的決策decisionj為True;否則decisionj為False。當(s,o)沒有包含在第j個屬性安全規(guī)則集SP,vAj中時,decisionj為None。
遍歷完生效屬性安全規(guī)則集后,屬性決策結(jié)果decisionA為decision1&decision2&…&decisionn。當各屬性決策結(jié)果為True,或True與None的組合時,decisionA為True;當各屬性決策結(jié)果均為None時,decisionA為None;當某個屬性決策結(jié)果為False時,decisionA為False。對于訪問權(quán)限請求結(jié)果,True表示允許執(zhí)行,False表示不允許執(zhí)行,None表示其在屬性安全規(guī)則集中未定義。
當屬性決策結(jié)果非False時,PDP匹配通用安全規(guī)則集進行通用權(quán)限檢查。當(s,o)包含在通用安全規(guī)則集PG中時,若主體對客體的操作在規(guī)則PG[s,o]中被允許執(zhí)行,那么對應的通用決策結(jié)果decisionG為True;否則為False。當(s,o)沒有包含在通用安全規(guī)則集PG中時,對應的通用訪問權(quán)限決策結(jié)果decisionG等于None。
訪問權(quán)限請求的最終訪問決策結(jié)果為decision=decisionA&decisionG,當屬性與通用訪問權(quán)限決策結(jié)果均為None或存在False時,decision為False,否則decision為True。
本文架構(gòu)模型向傳統(tǒng)操作系統(tǒng)訪問控制技術(shù)中融入屬性獲取、判定及系統(tǒng)安全策略動態(tài)切換等相關(guān)機制,以解決訪問控制不夠靈活的問題。架構(gòu)模型主要由屬性管理、安全規(guī)則集構(gòu)建與動態(tài)訪問控制3個單元組成,如圖3所示。
Figure 3 System architecture
屬性管理單元主要是進行訪問控制主體、客體和環(huán)境等屬性的實時收集、存儲和管理,并將屬性信息傳遞給動態(tài)訪問控制單元。
安全規(guī)則集構(gòu)建單元主要是構(gòu)建不同屬性對應的安全規(guī)則集。審計功能完成訪問信息采集,安全規(guī)則生成工具完成訪問權(quán)限規(guī)則生成。
動態(tài)訪問控制單元對每個訪問請求進行屬性和通用訪問權(quán)限檢查。依據(jù)從屬性管理單元獲取的屬性信息,定位一組生效屬性安全規(guī)則集,再由其與通用安全規(guī)則集分別進行決策,并返回聯(lián)合決策結(jié)果。
在分析屬性爆炸對系統(tǒng)訪問控制決策性能影響的基礎(chǔ)上,從時間和空間2個方面進行性能優(yōu)化。時間優(yōu)化方面,提出了基于屬性安全規(guī)則集融合的聯(lián)合決策優(yōu)化方法,通過減少決策次數(shù)大幅降低了訪問控制聯(lián)合決策的時間開銷;空間優(yōu)化方面,提出了基于屬性特征分組的聯(lián)合決策優(yōu)化方法,通過對屬性特征分類以及活躍安全規(guī)則集集合設(shè)置來降低當前有效安全策略的空間占用率。
為實現(xiàn)動態(tài)強制訪問控制,本系統(tǒng)針對每個屬性Ai,i=1,…,n都配置了一組屬性訪問權(quán)限exPAi,每個屬性訪問權(quán)限由一個屬性取值vAi和屬性取值所對應的屬性安全規(guī)則集SP,vAi組成。
發(fā)生訪問權(quán)限請求Requests=(s,o,OPS)時,最多進行n次屬性訪問權(quán)限檢查,且每次檢查都需切換至生效屬性安全規(guī)則集,引入了額外時間開銷,因此訪問決策時間開銷隨屬性數(shù)量增加而增大。為降低決策時間開銷,本節(jié)提出了基于屬性安全規(guī)則集融合的聯(lián)合決策優(yōu)化方法。將屬性訪問權(quán)限轉(zhuǎn)化為屬性訪問權(quán)限組合,進行屬性訪問權(quán)限檢查時,由屬性組合安全規(guī)則集進行一次決策,大幅降低了決策次數(shù),有效提升訪問控制決策性能。下面以2個屬性為例進行分析和介紹。
基于理論模型的決策過程,當訪問權(quán)限請求僅對應2個生效屬性安全規(guī)則集時,可將屬性安全規(guī)則集SP,vA1和SP,vA2融合為一個屬性組合安全規(guī)則集SP,vA1,vA2,其形式化定義如式(4)所示:
SP,vA1,vA2={(s,o,OPS)|(s,o,OPS)=
(4)
為使系統(tǒng)處于屬性A1和A2中任一個屬性取值組合時,都能僅用1次屬性檢查完成訪問決策,提出了屬性訪問權(quán)限組合概念,其形式化定義如式(5)所示:
exPA1×exPA2=
{(vA1,vA2,SP,vA1,vA2)|vA1∈VA1,vA2∈VA2}
(5)
其中,屬性訪問權(quán)限組合的屬性值域表示為VA1和VA22個屬性值域的笛卡爾積,其訪問權(quán)限集合SP,vA1,vA2是屬性取值為vA1時對應的訪問權(quán)限集合SP,vA1和屬性取值為vA2時對應的訪問權(quán)限集合SP,vA2融合得到的訪問權(quán)限集合。
屬性安全規(guī)則集融合算法1接收2個輸入,分別是需要融合的2類屬性訪問權(quán)限exPA1和exPA2,輸出結(jié)果是一組融合后的屬性訪問權(quán)限組合exPA1,A2={(vA1,vA2,SP,vA1,vA2)}。
算法1Merge算法
輸入:exPA1,exPA2。
輸出:merged_PA1,A2。
1.merged_exPA1,A2=[];
2.foriinrange(0,len(exPA1))do
3. (vA1,SP,vA1)=exPA1[i];
4.forjinrange(0,len(exPA2))do
5. (vA2,SP,vA2)=exPA2[j];
6.SP,set1,SP,set2,SP,set3=[],[],[];
7.for(s,o)∈SP,vA1do
8.if(s,o)?SP,vA2
9.SP,set1+=[(s,o,SP,vA1[s,o])];
10.else
11.SP,set3+=[(s,o,SP,vA1[s,o]∩SP,vA2[s,o])];
12.endif
13.endfor
14.for(s,o)∈SP,vA2do
15.if(s,o)?SP,vA1
16.SP,set2+=[(s,o,SP,vA2[s,o])];
17.endif
18.endfor
19.SP,vA1,vA2=SP,set1+SP,set2+SP,set3;
20.merged_exPA1,A2+=[(vA1,vA2,SP,vA1,vA2)];
21.endfor
22.endfor
23.returnmerged_exPA1,A2;
其融合過程主要分為4步。
第1步定義用于存放屬性訪問權(quán)限組合全集的空列表merged_exPA1,A2。
第2步從2類屬性A1和A2中選擇2個屬性取值vA1和vA2,其對應的安全規(guī)則集SP,vA1和SP,vA2為待融合對象,記融合后的結(jié)果為SP,vA1,vA2。同時定義3個列表SP,set1,SP,set2,SP,set3。
第4步將列表SP,set1,SP,set2,SP,set3的并集存到融合安全規(guī)則集SP,vA1,vA2中,并將屬性取值vA1和vA2及其對應的融合安全規(guī)則集SP,vA1,vA2添加到屬性訪問權(quán)限組合列表merged_exPA1,A2中。
隨著屬性及其屬性值數(shù)量的增加,屬性訪問權(quán)限組合呈指數(shù)增長,其對應安全規(guī)則集的規(guī)則數(shù)量也將呈指數(shù)增長。同時將所有安全規(guī)則集加載入內(nèi)核會導致極大的空間占用。內(nèi)存有限時,可以只加載部分安全規(guī)則集,但是一旦訪問權(quán)限匹配失敗,需重新加載其余安全規(guī)則集,這將會導致性能開銷大幅增加。
令函數(shù)f()表示屬性安全規(guī)則集大小,對于2個屬性A1和A2中的一個屬性取值組合(vA1,vA2),其屬性組合安全規(guī)則集SP,vA1,vA2與SP,vA1和SP,vA2有如式(6)所示的關(guān)系成立:
(6)
更一般地,對于n個屬性的某個屬性取值組合(vA1,vA2,…,vAn),其屬性組合安全規(guī)則集與各屬性安全規(guī)則集有如下關(guān)系成立:
(7)
最壞情況下各屬性安全規(guī)則集互不相交,即f(SP,vA1∩SP,vA2∩…∩SP,vAn)=0,屬性組合安全規(guī)則集達到最大,為各屬性安全規(guī)則集大小之和。
假設(shè)系統(tǒng)中有n個屬性A1,A2,…,An,各屬性Ai,i=1,2,…,n有m個屬性取值vAi,1,vAi,2,…,vAi,m,各屬性取值vAi,j,j=1,2,…,m對應屬性安全規(guī)則集SP,vAi,j的大小為k,且屬性安全規(guī)則集之間兩兩互不相交,則有如式(8)所示的等式成立:
(8)
當屬性取值數(shù)m和屬性安全規(guī)則集大小k不變時,屬性組合安全規(guī)則集大小隨屬性個數(shù)n的增長呈指數(shù)增長。
通過屬性特征分析,根據(jù)屬性取值是否可預測以及屬性取值是否被動觸發(fā),將屬性分為階段穩(wěn)定型屬性和瞬時動態(tài)型屬性,然后分別對階段穩(wěn)定型屬性和瞬時動態(tài)型屬性進行安全規(guī)則融合,之后將階段穩(wěn)定型屬性融合結(jié)果中的每個安全規(guī)則集與瞬時動態(tài)型屬性融合結(jié)果融合,此融合結(jié)果作為活躍安全規(guī)則集集合。
在實現(xiàn)上,將階段穩(wěn)定型屬性的捕獲、處理、判斷邏輯置于應用層,瞬時動態(tài)型屬性的相關(guān)邏輯置于內(nèi)核層,當階段穩(wěn)定型屬性的屬性值變化時,利用安全規(guī)則加載機制將階段穩(wěn)定型屬性新取值組合對應的一組安全規(guī)則集加載入內(nèi)核,從而實現(xiàn)分組加載安全規(guī)則集,大幅減少了單次需加載的安全規(guī)則數(shù)量,在提升訪問決策性能的同時,降低空間占用。
實驗平臺配置如表1所示,本文以Linux的AppArmor模塊為基礎(chǔ)進行了原型系統(tǒng)實現(xiàn)。由于其安全規(guī)則匹配與主客體安全標記綁定,本文設(shè)計了將屬性與主客體標記綁定的機制,并對安全規(guī)則匹配邏輯進行了擴展,根據(jù)屬性動態(tài)匹配安全規(guī)則集以實現(xiàn)基于屬性的動態(tài)強制訪問控制。
Table 1 Configuration of experimental platform
4.2.1 功能測試
在AppArmor原訪問控制基礎(chǔ)上增加了時間屬性。實驗設(shè)置如表2所示。
Table 2 Settings of functional experiment
圖4為時間屬性測試。系統(tǒng)狀態(tài)不變,15時56分程序成功讀文檔,57分不能讀文檔。說明時間屬性變化后生效屬性安全規(guī)則集發(fā)生變化。
Figure 4 Attribute-time test
4.2.2 性能測試
以文件操作為例,實驗設(shè)置如表3所示。
Table 3 Settings of access control performance experiment
令Torig、Tattr和Tswitch分別表示原系統(tǒng)、屬性處理后直接命中安全規(guī)則集系統(tǒng)和屬性處理后切換生效屬性安全規(guī)則集系統(tǒng)在不同安全規(guī)則集規(guī)模下的運行時間。圖5中Torig與Tattr用于計算某活躍安全規(guī)則集規(guī)模下屬性處理時間開銷。柱狀圖表示該時間開銷與原系統(tǒng)訪問控制時間開銷的比值。
Figure 5 Performance overhead of attributes processing
性能開銷W1的計算如式(9)所示:
W1=(Tattr-Torig)/Torig
(9)
計算后可知屬性處理的性能平均損耗約為2.8%。
圖6中Torig、Tattr與Tswitch用于計算某活躍安全規(guī)則集規(guī)模下切換生效屬性安全規(guī)則集時間開銷。柱狀圖表示該時間開銷與原系統(tǒng)訪問控制時間開銷的比值。
Figure 6 Performance overhead of switching valid attribute security rule set
切換性能開銷W2的計算如式(10)所示:
W2=(Tswitch-Tattr)/Torig
(10)
計算得平均性能開銷為13.5%,與屬性處理開銷合計約16.3%,就訪問控制系統(tǒng)而言影響不大。
從數(shù)據(jù)結(jié)果分析可知,切換開銷并不會隨安全規(guī)則集的數(shù)量增加而大幅增加,該系統(tǒng)能夠適應大規(guī)模安全規(guī)則集的使用場景。
安全規(guī)則集融合的聯(lián)合決策系統(tǒng)記為Imp,未融合的聯(lián)合決策系統(tǒng)記為Ori。本節(jié)測量2種系統(tǒng)實施訪問控制的時間開銷。實驗設(shè)置如表4所示。實驗結(jié)果如圖7所示。
Table 4 Settings of time optimization experiment
Figure 7 Time overhead of joint decision
從圖7可知,系統(tǒng)Ori決策時間在60 μs~300 μs上下波動,約分為5個層次。系統(tǒng)Imp的單次決策時間穩(wěn)定在60 μs左右。屬性安全規(guī)則集融合后,訪問控制性能有了大幅提升。
屬性總數(shù)一定時,研究系統(tǒng)Imp在階段穩(wěn)定型與瞬時動態(tài)型屬性不同組合下生效屬性組合安全規(guī)則集的大小,以驗證其空間優(yōu)化效果。實驗設(shè)置如表5所示。實驗結(jié)果如圖8所示。
Table 5 Settings of space optimization experiment
Figure 8 Space occupancy of combined attributes security rule set
從圖8可知,屬性數(shù)一定時,隨著瞬時動態(tài)型屬性數(shù)量增加,空間占用呈指數(shù)增長。當瞬時動態(tài)型屬性數(shù)量為2時,空間占用在100 KB以內(nèi);當其數(shù)量為5時,空間占用在2 MB以內(nèi);當其數(shù)量為10時,空間占用達到500 MB。
綜上,將屬性分為階段穩(wěn)定型和瞬時動態(tài)型屬性,可有效控制生效安全策略空間占用率。階段穩(wěn)定型屬性較多時空間優(yōu)化效果尤其顯著。
本文構(gòu)建了一種基于屬性的操作系統(tǒng)動態(tài)強制訪問控制模型,使經(jīng)典操作系統(tǒng)訪問控制機制適應動態(tài)細粒度訪問控制需要,并以Linux的AppArmor為基礎(chǔ)進行了原型系統(tǒng)實現(xiàn)。實驗結(jié)果表明,該系統(tǒng)訪問控制效率影響可控。通過引入屬性后對系統(tǒng)性能影響的分析,從時間和空間2個方面進行優(yōu)化研究。模擬實驗結(jié)果顯示,本文的優(yōu)化方法能夠有效解決隨著屬性擴展引起的訪問控制性能下降問題。未來,將在分析屬性爆炸對系統(tǒng)訪問控制決策性能影響的基礎(chǔ)之上,嘗試將該機制應用于分布式場景,并在容器平臺及物聯(lián)網(wǎng)設(shè)備等實際工程應用場景中進行進一步驗證。