周 超,任志宇
(解放軍信息工程大學(xué),鄭州 450001) (數(shù)學(xué)工程與先進(jìn)計(jì)算國(guó)家重點(diǎn)實(shí)驗(yàn)室,鄭州 450001) E-mail :zacharyvic@163.com
訪問(wèn)控制是允許或拒絕主體對(duì)客體的訪問(wèn),或是限制主體訪問(wèn)能力及訪問(wèn)范圍的一種方法,是保護(hù)資源被正確使用的重要措施.通過(guò)對(duì)受保護(hù)資源進(jìn)行訪問(wèn)控制,可以防止非法用戶入侵,將合法用戶不慎操作所造成的破壞降到最低,從而保證受保護(hù)資源被合法地、受控地使用.訪問(wèn)控制模型則是一種描述安全系統(tǒng)并建立安全模型的方法,它從訪問(wèn)控制角度出發(fā)形式化地描述了主體、客體以及主體對(duì)客體的操作,決定了授權(quán)策略的表達(dá)能力和靈活性.
RBAC是目前廣泛采用的訪問(wèn)控制模型,已經(jīng)成為近二十年來(lái)的研究熱點(diǎn).RBAC96模型是最為經(jīng)典的基于角色的訪問(wèn)控制模型,模型的基本思想是引入角色的概念,將用戶與權(quán)限的直接關(guān)聯(lián)取消,先將權(quán)限綁定到角色上,再將角色分配給用戶,從而達(dá)到給用戶分配權(quán)限的目的[1].這種方法使得審計(jì)某個(gè)用戶擁有的權(quán)限更加簡(jiǎn)便,同時(shí)也使得策略管理的任務(wù)更加輕松,因?yàn)榻巧忻恳淮螜?quán)限的改變,與之相關(guān)聯(lián)的用戶所擁有的權(quán)限不必逐個(gè)去更改也會(huì)隨之發(fā)生改變.
基于角色的訪問(wèn)控制使得權(quán)限管理更加簡(jiǎn)便,降低了系統(tǒng)復(fù)雜度,在訪問(wèn)控制發(fā)展過(guò)程中取得了巨大進(jìn)步.然而,隨著云計(jì)算的出現(xiàn),物聯(lián)網(wǎng)時(shí)代的到來(lái),訪問(wèn)決策需要根據(jù)訪問(wèn)需求來(lái)進(jìn)行,這就使得授權(quán)與訪問(wèn)控制更加復(fù)雜.訪問(wèn)需求中的信息是一些可度量的信息,包含用戶、客體以及環(huán)境等相關(guān)的信息.RBAC已經(jīng)難以適應(yīng)這種需要根據(jù)訪問(wèn)需求才能判斷用戶是否能被賦予訪問(wèn)權(quán)限的場(chǎng)景.其次,RBAC按照客體標(biāo)識(shí)而非客體屬性進(jìn)行授權(quán),不適用于擁有成千上萬(wàn)客體的場(chǎng)景,極有可能產(chǎn)生角色-權(quán)限爆炸的問(wèn)題,此時(shí),基于屬性的訪問(wèn)控制應(yīng)運(yùn)而生.
2005年,Eric等人面向Web服務(wù)提出一個(gè)基于屬性的訪問(wèn)控制框架[2],該框架是ABAC模型中最為常用的訪問(wèn)控制框架.在ABAC中,主體請(qǐng)求策略執(zhí)行點(diǎn)(Policy Enforcement Point,PEP)對(duì)資源進(jìn)行訪問(wèn),PEP轉(zhuǎn)發(fā)請(qǐng)求給策略判定點(diǎn)(Policy Decision Point,PDP),PDP向主體屬性權(quán)威(Subject Attribute Authority)、資源屬性權(quán)威(Resource Attribute Authority)、環(huán)境屬性權(quán)威(Environment Attribute Authority)查詢主體屬性、客體屬性、環(huán)境屬性,并查詢策略權(quán)威(Policy Authority)判定訪問(wèn)的合法性,返回決策結(jié)果給PEP執(zhí)行控制.ABAC能夠克服RBAC存在的缺點(diǎn),而且ABAC更加靈活,因?yàn)樗軐傩宰鳛樵L問(wèn)控制參數(shù),將訪問(wèn)場(chǎng)景中的因素都考慮在內(nèi).然而,ABAC在策略審計(jì)方面相較于RBAC也更加復(fù)雜,因?yàn)榉治霾呗砸约安榭椿蚴歉淖冇脩魴?quán)限是十分繁重的任務(wù).同時(shí),ABAC模型仍處于研究階段,暫時(shí)還沒有成熟的可實(shí)施模型.
正如上面提到的,RBAC和ABAC都有它們各自獨(dú)特的優(yōu)點(diǎn)與缺點(diǎn),同時(shí)他們的特點(diǎn)還能互補(bǔ),因此整合RBAC與ABAC已經(jīng)成為了一個(gè)重要的研究領(lǐng)域.本文根據(jù)分布式大規(guī)模環(huán)境下用戶規(guī)模龐大以及動(dòng)態(tài)性強(qiáng)的特點(diǎn),將現(xiàn)有的結(jié)合屬性與角色的訪問(wèn)控制模型進(jìn)行總結(jié)、歸類、分析、比較,并展望其未來(lái)發(fā)展趨勢(shì),旨在為訪問(wèn)控制的發(fā)展做出貢獻(xiàn).
2010年,美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院Kuhn及美國(guó)科學(xué)應(yīng)用國(guó)際公司Coyne等人倡議將基于角色的訪問(wèn)控制和基于屬性的訪問(wèn)控制中最優(yōu)的特征融合起來(lái)[3],為分布式快速改變的應(yīng)用系統(tǒng)提供有效的訪問(wèn)控制.該方案通過(guò)枚舉定義了3種可能的將角色與屬性結(jié)合使用的方法,分別是動(dòng)態(tài)角色、以屬性為中心和以角色為中心,如表1所示.動(dòng)態(tài)角色的方法就是屬性決定了一個(gè)用戶應(yīng)該被激活哪些角色.以屬性為中心的方法就是角色不再和權(quán)限關(guān)聯(lián),而是將角色名稱作為屬性中的一員.以角色為中心的方法就是角色決定了一個(gè)用戶擁有的權(quán)限最大集合,屬性被用來(lái)限制權(quán)限.
隨后,Coyne等人在文獻(xiàn)[4]中將基于角色的訪問(wèn)控制和基于屬性的訪問(wèn)控制進(jìn)行了詳細(xì)地對(duì)比.Coyne等人認(rèn)為:RBAC已經(jīng)廣泛使用并具有管理方面和安全方面的優(yōu)勢(shì),但其不能適應(yīng)將實(shí)時(shí)環(huán)境狀態(tài)作為訪問(wèn)控制參數(shù)的場(chǎng)景;ABAC更加新穎,容易實(shí)現(xiàn),能夠適應(yīng)實(shí)時(shí)環(huán)境狀態(tài)作為訪問(wèn)控制參數(shù)的場(chǎng)景,但它難以審計(jì)一個(gè)給定的權(quán)限能被哪些用戶訪問(wèn)或者一個(gè)給定的用戶能夠訪問(wèn)哪些權(quán)限.因此,結(jié)合兩者的優(yōu)勢(shì)能夠提供一個(gè)靈活的、可擴(kuò)展的、可審計(jì)的、可理解的訪問(wèn)控制模型.
表1 結(jié)合屬性與角色的訪問(wèn)控制模型[3]Table 1 Access control models combined attribute with role [3]
表中U表示用戶,An表示屬性,R表示角色,perm表示權(quán)限
動(dòng)態(tài)角色的訪問(wèn)控制模型將屬性應(yīng)用到基于角色的訪問(wèn)控制模型中實(shí)現(xiàn)用戶-角色以及權(quán)限-角色的自動(dòng)分配,旨在解決傳統(tǒng)RBAC無(wú)法動(dòng)態(tài)授權(quán)的問(wèn)題.隨著系統(tǒng)規(guī)模的增長(zhǎng)、數(shù)據(jù)量的增加,系統(tǒng)中用戶和權(quán)限數(shù)量激增的同時(shí)有可能出現(xiàn)臨時(shí)的用戶和權(quán)限,靜態(tài)地為用戶和權(quán)限指派角色是十分困難的,動(dòng)態(tài)角色就是實(shí)現(xiàn)用戶-角色的動(dòng)態(tài)分配以及權(quán)限-角色的動(dòng)態(tài)分配,減輕安全管理員的負(fù)擔(dān).
早期,為了解決擁有大規(guī)模動(dòng)態(tài)用戶的企業(yè)手動(dòng)進(jìn)行用戶-角色分配困難的問(wèn)題,Al-Kahtani等人提出了一種基于規(guī)則自動(dòng)進(jìn)行用戶-角色分配的模型(RB-RBAC)[5],模型基于用戶擁有的屬性和企業(yè)預(yù)置的約束條件,使用規(guī)則有限集動(dòng)態(tài)地將角色分配給用戶.但是,模型只是考慮到了用戶屬性,沒有考慮到客體屬性和環(huán)境屬性,缺乏一定的靈活性;其次,屬性是由命題邏輯表達(dá),相較于使用一階謂詞邏輯表達(dá)力不足;另外,這種方法有可能產(chǎn)生大量的角色,造成角色爆炸問(wèn)題;更重要的是,角色是根據(jù)優(yōu)先級(jí)來(lái)構(gòu)建而不是基于特定的崗位職能,這就容易違背最小權(quán)限原則.和文獻(xiàn)[5]類似,唐金鵬等人提出了一種面向用戶屬性的 RBAC 模型[6],將屬性及屬性構(gòu)成的約束條件應(yīng)用到RBAC中,實(shí)現(xiàn)用戶與角色的動(dòng)態(tài)分配,并將模型中角色層次關(guān)系、用戶分配關(guān)系、權(quán)限分配關(guān)系及角色屬性約束一一進(jìn)行了討論.陳娟娟等人擴(kuò)展了RBAC96模型,將動(dòng)態(tài)角色切換的方法應(yīng)用到用戶-角色分配中[7],系統(tǒng)將角色切換條件和職責(zé)分離策略作為依據(jù),自動(dòng)處理用戶-角色分配關(guān)系變化,降低了授權(quán)操作工作量,提高了授權(quán)管理工作效率,增強(qiáng)了系統(tǒng)安全性.
當(dāng)權(quán)限規(guī)模也十分龐大時(shí),也會(huì)產(chǎn)生權(quán)限-角色分配困難的問(wèn)題,權(quán)限-角色自動(dòng)分配相較于用戶-角色自動(dòng)分配更加復(fù)雜.洪帆等人在文獻(xiàn)[5]的基礎(chǔ)上對(duì)RB-RBAC模型進(jìn)行了擴(kuò)展[8],增加了對(duì)基于屬性的權(quán)限-角色分配模型的描述,將基于屬性的用戶角色分配(URA)模型和基于屬性的權(quán)限角色分配(PRA)模型相結(jié)合應(yīng)用于分布式環(huán)境下的訪問(wèn)控制中,提出了多域環(huán)境下基于屬性的RBAC框架,減少了安全管理員的管理工作.Yong等人使用角色屬性這一概念對(duì)RBAC2004標(biāo)準(zhǔn)模型進(jìn)行了擴(kuò)展[9],通過(guò)在角色和權(quán)限之間引入屬性,增強(qiáng)了角色的概念,增加了角色的靈活性,可以實(shí)現(xiàn)角色的隱私保護(hù).文獻(xiàn)對(duì)屬性類型進(jìn)行了詳細(xì)地分類,對(duì)屬性操作進(jìn)行了詳細(xì)地描述,形式化描述了屬性和客體、用戶、權(quán)限以及角色之間的關(guān)系,并對(duì)照RBAC2004標(biāo)準(zhǔn)分別對(duì)核心RBAC模型、層次RBAC模型以及約束RBAC模型擴(kuò)展前后進(jìn)行了對(duì)比,擴(kuò)展了其中的操作和定義.
將用戶-角色自動(dòng)分配和角色-權(quán)限自動(dòng)分配結(jié)合起來(lái)能夠?qū)崿F(xiàn)RBAC的自動(dòng)化構(gòu)建.Huang等人提出了一種將屬性策略集成到基于角色的訪問(wèn)控制中的框架[10],該框架分為兩層,分別是上層(aboveground)和下層(underground).上層是傳統(tǒng)的引入環(huán)境屬性的RBAC模型,保留了RBAC模型的簡(jiǎn)易性,能夠支持RBAC模型的驗(yàn)證與審計(jì);下層憑借屬性策略來(lái)描繪安全知識(shí),從而自動(dòng)地完成用戶-角色的分配和角色-權(quán)限的分配.使用該框架能夠解決大規(guī)模應(yīng)用中權(quán)限分配困難的問(wèn)題,同時(shí),由于引入屬性,使得系統(tǒng)能容易地建立RBAC模型并且能靈活地適應(yīng)用戶和客體的改變.通過(guò)比較RBAC和ABAC的優(yōu)缺點(diǎn),Aftab等人提出結(jié)合屬性和角色優(yōu)點(diǎn)的訪問(wèn)控制模型[11].模型的實(shí)現(xiàn)以客體、權(quán)限、角色以及用戶的屬性為基礎(chǔ),通過(guò)引入客體容器(Object Containers)將屬性類型相同的客體進(jìn)行分類,引入行為等級(jí)(Action Levels)對(duì)該類客體可執(zhí)行的操作劃分等級(jí),實(shí)現(xiàn)了權(quán)限的自動(dòng)化構(gòu)建,并將客體的屬性轉(zhuǎn)嫁到自動(dòng)生成的權(quán)限中,然后使用屬性表達(dá)式,將權(quán)限自動(dòng)分配給角色,角色就擁有了客體的屬性,根據(jù)角色的屬性和用戶的屬性使用屬性表達(dá)式就能將角色自動(dòng)分配給用戶,從而實(shí)現(xiàn)了RBAC模型的自動(dòng)化構(gòu)建.
針對(duì)不同環(huán)境中的不同需求,學(xué)者們也做出了不少的工作.a)針對(duì)web資源多元化、動(dòng)態(tài)化的特點(diǎn),文獻(xiàn)[12]提出一種基于屬性和角色的訪問(wèn)控制模型(ACBAR).利用屬性描述用戶和資源,再將用戶屬性和資源屬性與角色相關(guān)聯(lián),實(shí)現(xiàn)用戶-權(quán)限分配.文獻(xiàn)提出“元權(quán)限”概念,制定了相應(yīng)的分配規(guī)則和合成規(guī)則并證明其正確性,以此達(dá)到細(xì)粒度授權(quán)和動(dòng)態(tài)授權(quán)的目的,滿足職責(zé)分離原則和最小特權(quán)原則.b)針對(duì)協(xié)同環(huán)境中用戶-角色分配不夠靈活的特點(diǎn),文獻(xiàn)[13]提出了一個(gè)基于屬性和約束的動(dòng)態(tài)角色分配安全框架.在該框架中用戶不是被預(yù)先標(biāo)識(shí)的,用戶的訪問(wèn)行為由用戶屬性值和資源屬性值動(dòng)態(tài)決定,用戶到角色的分配以及角色到權(quán)限的分配由具有一定偏序關(guān)系的約束條件決定.通過(guò)探索語(yǔ)義Web技術(shù),文章采用OWL本體語(yǔ)言實(shí)現(xiàn)了該框架.c)針對(duì)物聯(lián)網(wǎng)中實(shí)時(shí)、動(dòng)態(tài)以及擁有大規(guī)模用戶的特點(diǎn),文獻(xiàn)[14]提出了一種基于屬性和角色的混合訪問(wèn)控制模型(ARBHAC).該模型集成了RBAC和ABAC的優(yōu)點(diǎn),解決了RBAC不能適用于大規(guī)模用戶訪問(wèn)的問(wèn)題,簡(jiǎn)化了傳統(tǒng)ABAC權(quán)限分配和策略管理的復(fù)雜性.d)針對(duì)web服務(wù)中訪問(wèn)量大、資源類型不統(tǒng)一的問(wèn)題,文獻(xiàn)[15]提出了一種結(jié)合屬性和角色的訪問(wèn)控制模型(ARBAC).模型依據(jù)服務(wù)請(qǐng)求者向服務(wù)提供者提供的用戶屬性斷言,自動(dòng)生成角色集,進(jìn)而完成用戶-角色以及權(quán)限-角色的自動(dòng)分配,能夠支持環(huán)境條件約束及職責(zé)分離約束,降低了授權(quán)操作工作量,統(tǒng)一了Web服務(wù)及其數(shù)據(jù)資源的訪問(wèn)控制.e)針對(duì)面向服務(wù)的架構(gòu)中分布式開放的特點(diǎn),文獻(xiàn)[16]也提出了一種基于屬性和角色的訪問(wèn)控制模型,在該模型中服務(wù)作為客體,服務(wù)的請(qǐng)求者作為活動(dòng)主體代表著遠(yuǎn)程用戶,調(diào)用的服務(wù)方法被視為權(quán)限,基于屬性條件自動(dòng)為服務(wù)角色分配用戶,支持組合服務(wù)的訪問(wèn)控制,使用機(jī)制獨(dú)立的訪問(wèn)控制策略.f)針對(duì)云計(jì)算環(huán)境中大規(guī)模、分布式的特點(diǎn)及其對(duì)數(shù)據(jù)安全和隱私保護(hù)的需求,文獻(xiàn)[17]提出了一種分層的屬性驅(qū)動(dòng)的基于角色的訪問(wèn)控制模型,能使用屬性策略自動(dòng)地構(gòu)建用戶-角色分配關(guān)系,減輕了數(shù)據(jù)擁有者的負(fù)擔(dān),解決了云存儲(chǔ)系統(tǒng)中擁有大規(guī)模用戶的問(wèn)題.同時(shí),采用基于屬性的加密技術(shù)和角色的分層,解決了分布式環(huán)境下密鑰管理困難的難題.
動(dòng)態(tài)角色的訪問(wèn)控制模型解決了傳統(tǒng)的基于角色的訪問(wèn)控制模型不能動(dòng)態(tài)授權(quán)的問(wèn)題,但依然存在“角色爆炸”或是無(wú)法實(shí)現(xiàn)細(xì)粒度授權(quán)的問(wèn)題.
以屬性為中心的訪問(wèn)控制將角色名稱視作眾多屬性中的一員.與傳統(tǒng)RBAC相反,角色不再是權(quán)限的集合,只是一種名稱叫做“角色”的屬性.
Jin等人一直致力于對(duì)以屬性為中心的訪問(wèn)控制的研究.在文獻(xiàn)[18]中提出了一個(gè)采用RBAC來(lái)管理用戶屬性的框架,將ARBAC97模型中的用戶角色分配模型URA進(jìn)行推廣,得到GURA模型,該模型將角色作為用戶的一類屬性來(lái)對(duì)用戶屬性進(jìn)行管理.其主要方法就是首先為每個(gè)管理角色分配其所管理的用戶屬性范圍,然后將這些管理角色分配給各個(gè)管理用戶,從而達(dá)到屬性管理的目的.在文獻(xiàn)[19]中將身份、安全級(jí)別、敏感度、角色以及其它用戶、主體及客體的特性都當(dāng)作屬性,建立基于屬性的訪問(wèn)控制模型ABACα,并從策略角度形式化驗(yàn)證了ABACα對(duì)DAC、MAC和RBAC策略的支持.但其只支持核心RBAC模型,不支持RBAC模型的擴(kuò)展模型.其后,在文獻(xiàn)[20]中基于ABACα模型提出了ABACβ模型,該模型能夠覆蓋大部分的RBAC擴(kuò)展模型.考慮到角色層級(jí)和動(dòng)態(tài)職責(zé)分離,把角色當(dāng)作用戶和主體的一種屬性,屬性值的偏序關(guān)系能夠表達(dá)角色層級(jí),在一次會(huì)話中角色能否被同時(shí)激活的策略能夠表達(dá)動(dòng)態(tài)職責(zé)分離.文獻(xiàn)對(duì)RBAC擴(kuò)展需要的特征進(jìn)行了總結(jié),最終引入5種擴(kuò)展特征將RBAC模型及其擴(kuò)展模型用ABACβ來(lái)表示.
為解決如何為云存儲(chǔ)服務(wù)構(gòu)建一種兼容RBAC的基于屬性的訪問(wèn)控制的問(wèn)題,文獻(xiàn)[21]提供了一種用戶友好型的易于管理的安全的ABAC機(jī)制.通過(guò)比較RBAC與ABAC之間的異同,將角色映射為多個(gè)屬性的集合,將角色間的層次關(guān)系映射為屬性表達(dá)式間的偏序關(guān)系,將用戶-角色的分配映射為規(guī)則,從而實(shí)現(xiàn)了從RBAC到ABAC的遷移.
Fatima等人對(duì)以屬性為中心的訪問(wèn)控制進(jìn)行了論證[22],通過(guò)分析RBAC擴(kuò)展模型以及ABAC模型兩種模型克服問(wèn)題的效率,最終得出結(jié)論:基于屬性的方法是訪問(wèn)控制的未來(lái).但其僅僅考慮到了RBAC擴(kuò)展模型和單一的ABAC模型,沒有考慮到真正將兩者結(jié)合起來(lái)是否能產(chǎn)生更好的效果.
以屬性為中心的訪問(wèn)控制失去了RBAC易于管理的優(yōu)勢(shì),其本質(zhì)是一個(gè)ABAC模型,權(quán)限審計(jì)依然是一個(gè)難題.
以角色為中心的訪問(wèn)控制模型目的在于解決RBAC模型不能很好地支持細(xì)粒度授權(quán)和ABAC模型權(quán)限審計(jì)困難的問(wèn)題.擴(kuò)展的RBAC模型解決細(xì)粒度授權(quán)問(wèn)題往往是采用角色層次的方法不斷地細(xì)分角色,這樣就會(huì)帶來(lái)“角色爆炸”的問(wèn)題,增加模型的管理成本和復(fù)雜度.而ABAC模型能夠很好地支持細(xì)粒度授權(quán),但其權(quán)限審計(jì)過(guò)于困難,難以證明其安全性.以角色為中心的方法就是以RBAC為基本框架,通過(guò)引入屬性來(lái)實(shí)現(xiàn)細(xì)粒度授權(quán).
Jin等人第一次提出了以角色為中心的訪問(wèn)控制模型概念(RABAC)[23].文獻(xiàn)使用用戶屬性和客體屬性對(duì)RBAC進(jìn)行了擴(kuò)展,并且在會(huì)話處添加了一個(gè)叫做權(quán)限過(guò)濾策略(Permission Filtering Policy,PFP)的組件到RBAC2004標(biāo)準(zhǔn)模型中.該方法很好地解決了角色爆炸的問(wèn)題,從而也促進(jìn)了用戶角色分配,同時(shí)也保留了角色和權(quán)限之間的靜態(tài)關(guān)系,從而保留了RBAC授權(quán)操作簡(jiǎn)單、權(quán)限審計(jì)容易、策略管理簡(jiǎn)便的優(yōu)點(diǎn).然而,這種方法沒有引入環(huán)境屬性,不能適用于系統(tǒng)中頻繁發(fā)生改變的屬性,例如,位置和時(shí)間.Qasim等人提出了一個(gè)屬性增強(qiáng)的基于角色的訪問(wèn)控制模型(AERBAC)[24],綜合考慮到了用戶屬性、客體屬性以及環(huán)境屬性.AERBAC中的權(quán)限由客體屬性表達(dá)式和操作方式組成,權(quán)限不再是賦予單一的客體而是擁有相同屬性的一組客體,同時(shí),將由用戶屬性表達(dá)式和環(huán)境屬性表達(dá)式組成的約束直接與權(quán)限綁定.在用戶請(qǐng)求訪問(wèn)時(shí)會(huì)將用戶請(qǐng)求作為輸入,checkAccess函數(shù)對(duì)每個(gè)請(qǐng)求進(jìn)行處理并返回判決結(jié)果.為了更好地實(shí)現(xiàn)訪問(wèn)目的,該模型將訪問(wèn)分為基于身份的訪問(wèn)和基于屬性的訪問(wèn)兩種訪問(wèn)形式[25],分別對(duì)兩種訪問(wèn)形式進(jìn)行了說(shuō)明.模型依然是以RBAC為主要框架,因此繼承了RBAC的優(yōu)點(diǎn),同時(shí)由于引入屬性作為約束,能夠在不發(fā)生角色爆炸的情況下就實(shí)現(xiàn)細(xì)粒度的訪問(wèn)控制.熊厚仁等人將屬性與角色相結(jié)合,將角色作為核心,提出了兩者結(jié)合的混合擴(kuò)展訪問(wèn)控制模型(HARBAC)[26].模型通過(guò)引入用戶屬性、資源屬性及環(huán)境屬性實(shí)現(xiàn)用戶-角色及角色-權(quán)限動(dòng)態(tài)分配,通過(guò)引入屬性規(guī)則實(shí)現(xiàn)角色激活及權(quán)限繼承,通過(guò)引入權(quán)限過(guò)濾策略進(jìn)一步研究基于屬性的會(huì)話權(quán)限縮減方法,有效實(shí)現(xiàn)了最小特權(quán)原則,以角色為中心的訪問(wèn)控制方法進(jìn)一步得到了完善.
為解決不同環(huán)境下對(duì)于細(xì)粒度的要求,學(xué)者們提出了不同的以角色為中心的訪問(wèn)控制模型.a)由于Web Services具有很強(qiáng)的動(dòng)態(tài)性和分散性,文獻(xiàn)[27]提出了基于角色和屬性的訪問(wèn)控制模型(RABAC).該模型把角色和屬性看作同一層級(jí),在授權(quán)時(shí)先后對(duì)角色和屬性進(jìn)行訪問(wèn)控制,因此同時(shí)具有角色訪問(wèn)控制和屬性訪問(wèn)控制的雙重優(yōu)點(diǎn),能夠?qū)崿F(xiàn)細(xì)粒度訪問(wèn)控制,準(zhǔn)確性更高,安全性更強(qiáng).b)文獻(xiàn)[28]仔細(xì)研究RBAC2004標(biāo)準(zhǔn)模型,提出了一種適用于云服務(wù)帶屬性策略的RBAC模型(A-RBAC).與傳統(tǒng)RBAC模型相比,通過(guò)加入屬性策略,實(shí)現(xiàn)了細(xì)粒度訪問(wèn)控制,使得訪問(wèn)控制更加靈活、簡(jiǎn)便.c)為解決Web應(yīng)用具有不同粒度等級(jí)的元素的訪問(wèn)控制需求,文獻(xiàn)[29]提出了一種細(xì)粒度基于角色和屬性的訪問(wèn)控制模型,并對(duì)模型進(jìn)行了驗(yàn)證.d)為保證多租戶云環(huán)境下數(shù)據(jù)的完整性及數(shù)據(jù)訪問(wèn)的安全性,文獻(xiàn)[30]提出了一種結(jié)合屬性和角色的訪問(wèn)控制機(jī)制,使用角色屬性減少了系統(tǒng)的匹配規(guī)則,加速系統(tǒng)的響應(yīng)時(shí)間.
以角色為中心的方法實(shí)現(xiàn)了細(xì)粒度授權(quán),解決了RBAC中容易存在的“角色爆炸”問(wèn)題,但原始RBAC模型的構(gòu)建依然是一個(gè)難題.
到目前為止,結(jié)合屬性與角色的訪問(wèn)控制方法往往只考慮了單一的屬性與角色相結(jié)合的方式,沒有實(shí)現(xiàn)二者的全面結(jié)合.如表2所示,目前屬性與角色結(jié)合的3種方式在大規(guī)模環(huán)境下依然各自存在一定的問(wèn)題:
1)動(dòng)態(tài)角色的訪問(wèn)控制
動(dòng)態(tài)角色的訪問(wèn)控制保留了RBAC模型設(shè)計(jì)簡(jiǎn)單、易于審計(jì)、易于管理的優(yōu)點(diǎn),同時(shí)增強(qiáng)了模型的動(dòng)態(tài)性,但在粒度控制與最小特權(quán)原則的支持上還存在問(wèn)題.
2)以屬性為中心的訪問(wèn)控制
以屬性為中心的訪問(wèn)控制實(shí)現(xiàn)了RBAC到ABAC的遷移,其核心是ABAC,引入細(xì)粒度控制的同時(shí)也帶來(lái)了難于審計(jì)的劣勢(shì).
3)以角色為中心的訪問(wèn)控制
以角色為中心的訪問(wèn)控制使用屬性作為約束限制權(quán)限范圍,能夠很好地支持最小特權(quán)原則,也能支持細(xì)粒度授權(quán),但是在動(dòng)態(tài)性方面還是存在不足.
因此,可以考慮結(jié)合現(xiàn)有的三種方式,實(shí)現(xiàn)兩種模型的完全融合:
1)將屬性應(yīng)用到RBAC中,以改善RBAC動(dòng)態(tài)授權(quán)以及細(xì)粒度授權(quán)困難的問(wèn)題;
2)將角色應(yīng)用到ABAC中,以解決ABAC權(quán)限審計(jì)復(fù)雜的問(wèn)題;
3)將兩者有機(jī)結(jié)合起來(lái),角色和屬性交叉使用,形成一個(gè)能夠完全結(jié)合兩者優(yōu)點(diǎn)的新型訪問(wèn)控制模型,在未來(lái)越來(lái)越復(fù)雜的網(wǎng)絡(luò)環(huán)境中更好地實(shí)施訪問(wèn)控制.
特別地,屬性還能應(yīng)用到角色挖掘中,用來(lái)挖掘具有語(yǔ)義
表2 大規(guī)模環(huán)境下屬性與角色結(jié)合特征比較Table 2 Comparison of attribute and role combination in large-scale environment
信息的角色;角色也能應(yīng)用到屬性策略中,用來(lái)優(yōu)化屬性策略,提高策略執(zhí)行的效率.
自1996年以來(lái),對(duì)于RBAC的基本研究已經(jīng)趨于完善并在對(duì)其擴(kuò)展模型的研究上取得了長(zhǎng)足的進(jìn)展,對(duì)于ABAC的研究也有所突破.但兩種模型都有各自的特點(diǎn)及應(yīng)用場(chǎng)景,計(jì)算機(jī)應(yīng)用的普及、云計(jì)算網(wǎng)絡(luò)的出現(xiàn)、物聯(lián)網(wǎng)時(shí)代的到來(lái)給訪問(wèn)控制研究帶來(lái)了新的挑戰(zhàn),傳統(tǒng)單一的訪問(wèn)控制模型已經(jīng)不能滿足大規(guī)模環(huán)境下的現(xiàn)實(shí)需求.未來(lái)一段時(shí)間的研究主要是對(duì)現(xiàn)有ABAC與RBAC的擴(kuò)展、完善、改進(jìn)和應(yīng)用以及對(duì)ABAC與RBAC多個(gè)方面特征互補(bǔ)的探索、融合及應(yīng)用.本文以RBAC及ABAC的發(fā)展為線索,總結(jié)了屬性與角色在某幾個(gè)方面結(jié)合的模型,同時(shí)對(duì)屬性與角色結(jié)合的未來(lái)研究趨勢(shì)進(jìn)行了展望,為未來(lái)大規(guī)模環(huán)境下的訪問(wèn)控制提供新的研究思路.
[1] Sandhu R S,Coynek E J,F(xiàn)einsteink H L,et al.Role-based access control models [J].IEEE Computer,1996,29(2):38-47.
[2] Yuan E,Tong J.Attributed based access control (ABAC) for web services[C].IEEE International Conference on Web Services (ICWS'05),2005.
[3] Kuhn D R,Coyne E J,Weil T R.Adding attributes to role-based access control[J].IEEE Computer,2010,43(6):79-81.
[4] Coyne E,Weil T R.ABAC and RBAC:scalable,flexible,and auditable access management[J].IT Professional,2013,15(3):14-16.
[5] Al-Kahtani M A,Sandhu R.A model for attribute-based user-role assignment[C].Computer Security Applications Conference,18th Annual.IEEE,2002:353-362.
[6] Tang Jin-peng,Li Ling-lin,Yang Lu-ming.User attributes oriented RBAC model [J].Computer Engineering and Design,2010,10:2184-2186.
[7] Chen Juan-juan,Cheng Xi-jun.Extended RBAC model supporting dynamic role switching [J].Journal of Computer Application,2008,28(4):924-926.
[8] Hong Fan,Rao Shuang-yi,Duan Su-juan.A model for attribute-based permission-role assignment [J].Journal of Computer Application,2004,24(B12):153-155.
[9] Yong J,Bertino E,Roberts M T D.Extended RBAC with role attributes[J].PACIS 2006 Proceedings,2006.
[10] Huang J,Nicol D M,Bobba R,et al.A framework integrating attribute-based policies into role-based access control[C].Proceedings of the 17th ACM Symposium on Access Control Models and Technologies,2012:187-196.
[11] Aftab M U,Habib M A,Mehmood N,et al.Attributed role based access control model[C].2015 Conference on Information Assurance and Cyber Security (CIACS),IEEE,2015:83-89.
[12] Zhang Bin,Zhang Yu.Access control model based on attribute and role [J].Computer Engineering and Design,2012,33(10):3807-3811.
[13] Cruz I F,Gjomemo R,Lin B,et al.A constraint and attribute based security framework for dynamic role assignment in collaborative environments[C].International Conference on Collaborative Computing:Networking,Applications and Worksharing,Springer Berlin Heidelberg,2008:322-339.
[14] Kaiwen S,Lihua Y.Attribute-role-based hybrid access control in the Internet of things[C].Asia-Pacific Web Conference,Springer International Publishing,2014:333-343.
[15] Liu Miao,Li Peng,Tang Mao-bin,et al.Access control for web services combining attributes with roles[J].Computer Engineering & Design,2012,33(2):484-487.
[16] Wei Y,Shi C,Shao W.An attribute and role based access control model for service-oriented environment[C].Control and Decision Conference (CCDC),IEEE,2010:4451-4455.
[17] Abo-Alian A,Badr N L,Tolba M F.Hierarchical attribute-role based access control for cloud computing[C].The 1st International Conference on Advanced Intelligent System and Informatics (AISI2015),November 28-30,2015,Beni Suef,Egypt.Springer International Publishing,2016:381-389.
[18] Jin X,Krishnan R,Sandhu R.A role-based administration model for attributes[C].Proceedings of the First International Workshop on Secure and Resilient Architectures and Systems,ACM,2012:7-12.
[19] Jin X,Krishnan R,Sandhu R.A unified attribute-based access control model covering DAC,MAC and RBAC[C].IFIP Annual Conference on Data and Applications Security and Privacy,Springer Berlin Heidelberg,2012:41-55.
[20] Jin X.Attribute-based access control models and implementation in cloud infrastructure as a service[M].The University of Texas at Santonio,2014.
[21] Zhu Y,Huang D,Hu C J,et al.From RBAC to ABAC:constructing flexible data access control for cloud storage services[J].IEEE Transactions on Services Computing,2015,8(4):601-616.
[22] Fatima A,Ghazi Y,Shibli M A,et al.Towards attribute-centric access control:an ABAC versus RBAC argument[J].Security and Communication Networks,2016,9(16):3152-3166.
[23] Jin X,Sandhu R,Krishnan R.RABAC:role-centric attribute-based access control[C].International Conference on Mathematical Methods,Models,and Architectures for Computer Network Security,Springer Berlin Heidelberg,2012:84-96.
[24] Rajpoot Q M,Jensen C D,Krishnan R.Integrating attributes into role-based access control[C].IFIP Annual Conference on Data and Applications Security and Privacy,Springer International Publishing,2015:242-249.
[25] Rajpoot Q M,Jensen C D,Krishnan R.Attributes enhanced role-based access control model[C].International Conference on Trust and Privacy in Digital Business,Springer International Publishing,2015:3-17.
[26] Xiong Hou-ren,Chen Xing-yuan,F(xiàn)ei Xiao-fei,et al.Attribute and RBAC-based hybrid access control model[J].Application Research of Computers,2016,33(7):2162-2169.
[27] Sun Cui-cui,Zhang Yong-sheng.Research of role-and-attribute based security model of the web services[J].Microcomputer Information,2011,27(2):148-150.
[28] Li Wei-guan,Zhao Feng-yu.RABC permission access control model with attribute policy[J].Journal of Chinese Computer Systems,2013,34(2):328-331.
[29] Ghotbi S H,F(xiàn)ischer B.Fine-grained role-and attribute-based access control for web applications[C].International Conference on Software and Data Technologies,Springer Berlin Heidelberg,2012:171-187.
[30] Lo N W,Yang T C,Guo M H.An attribute-role based access control mechanism for multi-tenancy cloud environment[J].Wireless Personal Communications,2015,84(3):2119-2134.
附中文參考文獻(xiàn):
[6] 唐金鵬,李玲琳,楊路明.面向用戶屬性的 RBAC 模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,(10):2184-2186.
[7] 陳娟娟,程西軍.支持動(dòng)態(tài)角色切換的 RBAC 模型[J].計(jì)算機(jī)應(yīng)用,2008,28(4):924-926.
[8] 洪 帆,饒雙宜,段素娟.基于屬性的權(quán)限-角色分配模型[J].計(jì)算機(jī)應(yīng)用,2004,24(B12):153-155.
[12] 張 斌,張 宇.基于屬性和角色的訪問(wèn)控制模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2012,33(10):3807-3811.
[15] 劉 淼,李 鵬,湯茂斌,等.結(jié)合屬性和角色的 Web 服務(wù)訪問(wèn)控制[J].計(jì)算機(jī)工程與設(shè)計(jì),2012,33(2):484-487.
[26] 熊厚仁,陳性元,費(fèi)曉飛,等.基于屬性和 RBAC 的混合擴(kuò)展訪問(wèn)控制模型[J].計(jì)算機(jī)應(yīng)用研究,2016,33(7):2162-2169.
[27] 孫翠翠,張永勝.基于角色和屬性的 Web Services 安全模型研究[J].微計(jì)算機(jī)信息,2011,27(2):148-150.
[28] 李唯冠,趙逢禹.帶屬性策略的 RBAC 權(quán)限訪問(wèn)控制模型[J].小型微型計(jì)算機(jī)系統(tǒng),2013,34(2):328-331.