張斌,商錚
1.解放軍信息工程大學(xué),鄭州 450004
2.解放軍軍事經(jīng)濟(jì)學(xué)院,武漢 430000
基于屬性約束的權(quán)限委托機(jī)制及沖突檢測(cè)方法
張斌1,商錚2
1.解放軍信息工程大學(xué),鄭州 450004
2.解放軍軍事經(jīng)濟(jì)學(xué)院,武漢 430000
針對(duì)現(xiàn)有的委托方法中委托約束局限于用戶角色的問題,提出了一種基于屬性約束的權(quán)限委托機(jī)制ARPDM,使用先決條件、受托條件和撤銷條件等對(duì)委托者和受托者的能力進(jìn)行約束,能夠增加權(quán)限委托的約束能力,從多個(gè)方面對(duì)委托者和受托者的委托行為進(jìn)行控制。分析了委托過程中可能發(fā)生的委托約束沖突、冗余委托沖突和環(huán)狀委托沖突等,設(shè)計(jì)了一種基于委托樹的沖突檢測(cè)算法,將沖突問題映射為樹中結(jié)點(diǎn)的關(guān)系問題,能夠通過一次遍歷檢測(cè)多種沖突,避免了傳統(tǒng)方法需要多次檢測(cè)的問題,具有較高的效率。
屬性;委托;沖突;一致性
權(quán)限委托是指在訪問控制系統(tǒng)中,權(quán)限所有者將自己權(quán)限的全部或一部分委托給另外一個(gè)實(shí)體,由后者代其完成相應(yīng)的工作。采用委托機(jī)制能使集中式的管理工作分布化,權(quán)限管理更加靈活方便。
在權(quán)限委托機(jī)制中,若委托者的決定權(quán)過大,系統(tǒng)中權(quán)限的傳播將難以控制,需要對(duì)委托過程中的參與者進(jìn)行約束,進(jìn)而保證委托過程的安全性。為了解決這個(gè)問題,現(xiàn)有的權(quán)限委托方法主要采用以下兩種方式:(1)劃分權(quán)限,在PBDM模型[1]中定義可委托角色集合,限制允許委托的權(quán)限;(2)控制受托范圍,例如基于映射機(jī)制的細(xì)粒度RBAC委托授權(quán)模型[2]中定義先決角色,檢查受托者的資格,并限制委托的深度。這些方法在一定程度上解決了委托約束問題,但依然存在不足。首先,現(xiàn)有的委托方法大多針對(duì)RBAC模型,約束條件一般都是用戶所具有的角色,而角色只是用戶的一個(gè)屬性,需要使用更多的屬性表達(dá)約束條件;其次,由于委托是用戶的自主行為,不同用戶之間的委托可能會(huì)產(chǎn)生沖突,需要消除委托沖突,保證委托的可控性[3-6]。文獻(xiàn)[7]提出一種基于參數(shù)的委托方法,能夠檢測(cè)出委托約束沖突和冗余委托沖突,但是需要在每次委托中加入衰減參數(shù),且沖突的檢測(cè)需要遍歷所有存在的委托鏈。文獻(xiàn)[8]提出一種基于圖的委托沖突檢測(cè)方法,能夠檢測(cè)出委托約束沖突和環(huán)狀委托沖突,但是檢測(cè)環(huán)狀委托需要以每個(gè)用戶結(jié)點(diǎn)為起點(diǎn),重復(fù)進(jìn)行檢測(cè)。文獻(xiàn)[9]所提出的委托方法支持多屬性約束,但是只定義了受托者獲得權(quán)限所需要的條件,不能控制權(quán)限委托的范圍。
針對(duì)現(xiàn)有權(quán)限委托機(jī)制中權(quán)限傳播難以控制、沖突檢測(cè)效率較低的問題,本文提出了一種基于屬性約束的權(quán)限委托機(jī)制(A ttribute Restricted Perm ission Delegation M echanism,ARPDM),定義了先決條件、受托條件和撤銷條件等委托約束條件,采用多種屬性對(duì)委托參與者的權(quán)力進(jìn)行約束,有效解決了委托過程可控問題;針對(duì)委托過程中可能出現(xiàn)的三類沖突,提出了一種基于委托樹的沖突檢測(cè)方法,能夠更加有效地檢測(cè)多種沖突,滿足一致性需求。
ARPDM機(jī)制如圖1所示。ARPDM機(jī)制中,權(quán)限的擁有者(委托者)將自己權(quán)限的全部或一部分委托給其他用戶(受托者),使后者能夠利用前者的權(quán)限執(zhí)行相關(guān)的活動(dòng)。為了保證委托過程的可控性,委托者和受托者都需要滿足一定的約束條件。
圖1 基于屬性約束的權(quán)限委托機(jī)制
2.1 ARPDM中主要元素及關(guān)系
ARPDM中的主要元素為DOR,DEE,P,DC,ATT(DOR),ATT(DEE),RDC,D,它們分別表示委托者集,受托者集,權(quán)限集,委托條件集,委托者屬性集,受托者屬性集,再委托條件集和委托深度集。
委托條件包括三種:(1)先決條件(Prerequisite Condition),規(guī)定委托行為的發(fā)起者需要滿足的條件,是對(duì)委托者是否具備委托能力的約束;(2)受托條件(Delegatee Condition),規(guī)定受托者要獲得權(quán)限需要滿足的條件,是對(duì)受托者能否獲得委托權(quán)限的約束;(3)撤銷條件(Revoke Condition),規(guī)定撤銷委托權(quán)限需要滿足的條件。它們的集合分別表示為PRC、DEC和REC且DC=PRC∪DEC∪REC。再委托條件用于描述受托者獲得權(quán)限后,繼續(xù)委托需要滿足的條件,由權(quán)限的委托者在委托權(quán)限時(shí)定義。
ARPDM中主要的元素關(guān)系有:
(1)屬性分配關(guān)系
DORAA?DOR×ATT(DOR)為委托者-屬性指派關(guān)系。
DEEAA?DEE×ATT(DEE)為受托者-屬性指派關(guān)系。
(2)用戶與權(quán)限的映射關(guān)系
DOR_P(dor)返回委托者dor所具備的權(quán)限集。
DOR_DelP(dor)返回委托者dor可以委托的權(quán)限集。
DOR_DelEdP(dor)返回委托者dor已經(jīng)實(shí)施委托的權(quán)限集。
DEE_P(dee)返回受托者dee所具備的權(quán)限集。
DEE_DelP(dee)返回受托者dee通過委托獲得的權(quán)限集。
DelP(dor,dee)返回受托者dee從委托者dor處獲得的委托權(quán)限集。
(3)屬性與委托條件的關(guān)系
FulfilPRC(att(dor),prc)∈{true,false}表示委托者dor的屬性與先決條件prc的關(guān)系,該值為true時(shí),表示委托者的屬性滿足先決條件。
FulfilDEC(att(dee),dec)∈{true,false}表示受托者dee的屬性與受托條件dec的關(guān)系,該值為true時(shí),表示委托者的屬性滿足受托條件。
FulfilREC(att(dor),att(dee),rec)∈{true,false}表示委托者dor的屬性、受托者dee的屬性與撤銷條件rec的關(guān)系,該值為true時(shí),表示委托者和受托者的屬性滿足撤銷條件。
(4)權(quán)限委托關(guān)系
DR?DOR×DEE×P×D×DEC×REC為權(quán)限委托關(guān)系,(dor,dee,p,d,dec,rec)∈dr表示委托者dor將權(quán)限p委托給受托者dee,委托深度為d,受托條件為dec,撤銷條件為rec。
2.2 委托實(shí)施過程
ARPDM權(quán)限委托實(shí)施過程分為請(qǐng)求階段、判定階段和執(zhí)行階段三個(gè)階段,它們的主要作用如下:
(1)請(qǐng)求階段
在請(qǐng)求階段,委托者必須向系統(tǒng)提供的信息有:委托權(quán)限、委托深度、撤銷條件、再委托限制、受托者和受托條件等??梢员硎緸椋?/p>
式中request.p、request.d、request.rec、request.rdc、request.dor、request.dec分別表示委托請(qǐng)求中的權(quán)限、委托深度、撤銷條件、再委托限制、受托者和受托條件。當(dāng)Check(request)=true表示委托者的請(qǐng)求合法,能夠被系統(tǒng)響應(yīng)。
(2)判定階段
在判定階段,系統(tǒng)根據(jù)委托請(qǐng)求者提供的信息,判斷請(qǐng)求的合法性,判斷的依據(jù)主要包括以下幾個(gè)方面:
①是否滿足先決條件
先決條件由權(quán)限的授予者定義,利用FulfilPRC函數(shù)判斷委托者的屬性能否滿足權(quán)限委托的先決條件。當(dāng)FulfilPRC(att(dor),p.prc)=true時(shí),表明在當(dāng)前環(huán)境下委托請(qǐng)求者dor的屬性滿足權(quán)限p的先決條件p.prc,可以進(jìn)行委托。
②是否違背系統(tǒng)安全約束
在受托者獲得委托權(quán)限前,需要判斷其是否因?yàn)楂@得委托權(quán)限而違背系統(tǒng)的安全約束,如職責(zé)分離等。如果違背了安全約束,那么委托將無法執(zhí)行。定義用于檢查受托者是否因?yàn)楂@得委托權(quán)限而違背安全約束的函數(shù):
obey(P)=true表示某用戶的權(quán)限集P違背了系統(tǒng)的安全約束,當(dāng)Con(request)=true時(shí),表明受托者dee在獲得權(quán)限后不能滿足安全約束,這種情況下,系統(tǒng)不允許委托者進(jìn)行委托。
③是否滿足委托深度限制
委托深度表示受托者能夠繼續(xù)委托的次數(shù),用以控制權(quán)限傳播的范圍。權(quán)限每次委托后,其深度限制減1,即p.d=pre_p.d-1,其中pre_p表示委托前委托者擁有的權(quán)限。當(dāng)p.d=0時(shí),權(quán)限無法委托給其他用戶。定義用于檢查委托權(quán)限是否滿足委托限制的函數(shù):
Depth(request)=true表示請(qǐng)求委托的權(quán)限滿足委托深度限制,能夠繼續(xù)委托。
(3)執(zhí)行階段
在執(zhí)行階段,在滿足受托條件request.dec的情況下,受托者request.dee獲得權(quán)限r(nóng)equest.p,并且委托的深度限制d減1。如果request.dee繼續(xù)委托,必須保證當(dāng)前委托深度大于0,且request.dee和環(huán)境屬性滿足再委托限制request.rdc;當(dāng)受托者屬性和委托者屬性滿足撤銷條件,即Fulfil(att(dor),att(dee),rec)=true時(shí),權(quán)限委托結(jié)束,撤銷受托者獲得的權(quán)限。
在訪問控制系統(tǒng)中,權(quán)限委托是一種用戶的自主行為,出于靈活性的考慮,權(quán)限委托采用分布式的管理方式,每個(gè)具備權(quán)限的用戶都有可能成為權(quán)限的委托者。不同的用戶按照各自的權(quán)限管理需求進(jìn)行委托很有可能帶來委托沖突,造成權(quán)限委托的不一致。雖然ARPDM中定義了先決條件、受托條件、撤銷條件等約束,但是無法避免委托沖突的發(fā)生。本節(jié)對(duì)權(quán)限委托可能引起的沖突進(jìn)行定義,分析委托沖突產(chǎn)生的原因,提出對(duì)沖突進(jìn)行檢測(cè)的方法。
3.1 委托沖突定義
用戶在進(jìn)行權(quán)限委托時(shí),可能出現(xiàn)如下幾類委托沖突的情況,分別稱為委托約束沖突、冗余委托沖突和環(huán)狀委托沖突。
(1)委托約束沖突
委托約束沖突是指兩個(gè)委托者將相同的權(quán)限委托給同一用戶,并且委托約束條件不相同的情況。如圖2所示,委托約束沖突可分為三類,委托深度沖突、受托條件沖突和撤銷條件沖突,它們分別表示如下:
圖2 委托約束沖突
圖3 冗余委托沖突
(2)冗余委托沖突
在定義冗余委托沖突前,首先定義委托鏈。
委托鏈:關(guān)于權(quán)限p的委托鏈?zhǔn)且粋€(gè)由參與委托的用戶組成的序列<u0,u1,…,un>。在委托鏈中,每個(gè)用戶都與其后序用戶存在委托關(guān)系,即?ui∈{u|uin <u0,u1,…,un>}(0≤i<n,i∈Z),?d,dec,rec使(ui,ui+1,p,d,dec,rec)∈dr。
冗余委托沖突可分為兩種,一類是與原始權(quán)限相關(guān)的冗余,如圖3左部,某用戶u1已經(jīng)由授權(quán)管理員授予了某權(quán)限p1,而其他用戶又將權(quán)限p1委托給u1,即(u2,u1,p1,d1,dec1,rec1)∈dr,(M,u1,p1)∈A(表示管理員M為u1分配權(quán)限p1);另一類是與委托權(quán)限相關(guān)的冗余,如圖3右部,某用戶u3將權(quán)限p2委托給u4和u5,u4將權(quán)限委托給其他人后,又將權(quán)限委托給u5,即(u3,u5,p2,d4,dec4,rec4)∈dr,并且存在一個(gè)關(guān)于權(quán)限p2的委托鏈<u3,u4,…,u5>。
(3)環(huán)狀委托沖突
環(huán)狀委托沖突是指某用戶將權(quán)限委托后,經(jīng)過若干次委托,又成為權(quán)限的受托者,如圖4所示。用戶u1將權(quán)限p1委托給其他用戶,其他用戶又將權(quán)限委托給了u1。環(huán)狀委托使得權(quán)限的委托者成為權(quán)限的受托者,可能造成委托的無限循環(huán),無法確定最終的受托者。對(duì)于權(quán)限p,如果存在委托鏈<ui,uj,…,ui>(0<i,j≤n,i,j∈Z),則稱存在環(huán)狀委托。
圖4 環(huán)狀委托沖突
3.2 委托沖突檢測(cè)
根據(jù)ARPDM的特點(diǎn),提出一種基于帶參數(shù)委托樹的委托沖突檢測(cè)方法,將系統(tǒng)中的委托沖突狀態(tài)映射為對(duì)應(yīng)的委托樹結(jié)構(gòu),從而將委托沖突問題映射為樹中結(jié)點(diǎn)的關(guān)系問題,并提出一種高效的沖突檢測(cè)算法。
委托樹:關(guān)于用戶u的委托結(jié)構(gòu)是一個(gè)樹Tree(u)= (v,F(xiàn)),其中v是樹的根結(jié)點(diǎn),F(xiàn)是m≥1棵樹的森林,F(xiàn)=(T1,T2,…,Tm),其中Tk(1≤k≤m)稱為根結(jié)點(diǎn)v的第k棵子樹。在委托樹中,每個(gè)節(jié)點(diǎn)都對(duì)應(yīng)一個(gè)用戶,父結(jié)點(diǎn)與子結(jié)點(diǎn)的連線代表用戶與用戶之間的權(quán)限分派關(guān)系,如圖5所示。
圖5 委托樹示例
假定委托機(jī)制中委托權(quán)限最初都由系統(tǒng)管理員授予,如果將管理員看做委托樹的根結(jié)點(diǎn),將它的子結(jié)點(diǎn)看做是得到授權(quán)的用戶,將深度大于1的結(jié)點(diǎn)看做是得到委托權(quán)限的用戶,形成的樹形結(jié)構(gòu)可以映射為系統(tǒng)的委托狀態(tài)。在該樹中,只要用戶委托成功,就在其對(duì)應(yīng)的結(jié)點(diǎn)下建立孩子結(jié)點(diǎn);當(dāng)需要進(jìn)行委托撤銷時(shí),就刪除委托者對(duì)應(yīng)的子結(jié)點(diǎn)。
在委托樹中,每個(gè)結(jié)點(diǎn)都對(duì)應(yīng)一個(gè)用戶和一個(gè)權(quán)限集,即任取樹中結(jié)點(diǎn)vi,存在ui和Pi使得ui=user(vi),Pi=pers(vi),分別映射為結(jié)點(diǎn)vi所對(duì)應(yīng)的用戶和權(quán)限集。委托樹生成過程如下:
(1)生成委托樹的根結(jié)點(diǎn)v,其對(duì)應(yīng)的用戶為授權(quán)管理員,其對(duì)應(yīng)的權(quán)限集為所有已經(jīng)分配出去的權(quán)限。
(2)若授權(quán)管理員為用戶ui分配了權(quán)限集Pi,則新建根結(jié)點(diǎn)的子結(jié)點(diǎn)vi,且ui=user(vi),Pi=pers(vi)。管理員為幾個(gè)用戶分配權(quán)限,則根結(jié)點(diǎn)就有幾個(gè)孩子結(jié)點(diǎn)。
(3)對(duì)于委托樹中的每一個(gè)非根結(jié)點(diǎn)vx,其對(duì)應(yīng)的用戶uy為其他用戶uj委托了權(quán)限集Pj,則新建結(jié)點(diǎn)vx的子結(jié)點(diǎn)vj,且uj=user(vj),Pj=pers(vj)。
(4)重復(fù)步驟(3),直到所有權(quán)限委托完畢。
在委托樹中,樹中結(jié)點(diǎn)主要有兩種關(guān)系:父子關(guān)系和祖先子孫關(guān)系。父子關(guān)系代表直接的委托關(guān)系,如果兩個(gè)結(jié)點(diǎn)滿足關(guān)系vi=parent(vj),則稱結(jié)點(diǎn)vi是結(jié)點(diǎn)vj的父結(jié)點(diǎn)。滿足父子關(guān)系的結(jié)點(diǎn),其對(duì)應(yīng)的用戶具有委托關(guān)系,即?p,d,dec,rec,使得(user(vi),user(vj),p,d,dec,rec)∈dr,由于結(jié)點(diǎn)vj所代表用戶的全部權(quán)限都是由結(jié)點(diǎn)vi委托的,因此兩個(gè)結(jié)點(diǎn)權(quán)限集滿足關(guān)系pers(vj)?pers(vi)。祖先子孫關(guān)系代表間接的委托關(guān)系,若兩個(gè)結(jié)點(diǎn)滿足關(guān)系vi=ancestor(vj),則稱vi是vj的祖先結(jié)點(diǎn),它們之間必然存在一條委托鏈<user(vi),…,user(vj)>,并且pers(vj)?pers(vi)。
通過對(duì)委托樹的分析,將委托沖突的檢測(cè)問題映射為樹中結(jié)點(diǎn)的關(guān)系問題,并給出如下定理:
定理1委托機(jī)制中不出現(xiàn)委托約束沖突的條件是委托樹上的相同用戶的結(jié)點(diǎn),其對(duì)應(yīng)權(quán)限集的交集為空,或它們的父結(jié)點(diǎn)相同,或相同權(quán)限的委托深度、受托條件和撤銷條件相同。
通過反證法證明,假設(shè)委托樹上存在相同用戶的結(jié)點(diǎn),這兩個(gè)結(jié)點(diǎn)權(quán)限集的交集不為空、它們的父結(jié)點(diǎn)不同且相同權(quán)限的委托深度、受托條件或撤銷條件是不同的,證明存在委托約束沖突。
結(jié)論:存在委托約束沖突。
證明:由于(user(v3),user(v1),px,d1,dec1,rec1)∈dr且(user(v4),user(v2),px,d2,dec2,rec2)∈dr,并且user(v1)=user(v2),user(v3)≠user(v4),當(dāng)d1≠d2時(shí),不同用戶為相同用戶委托相同的權(quán)限,且深度不同,存在深度沖突;
當(dāng)dec1≠dec2時(shí),不同用戶為相同用戶委托相同的權(quán)限,且受托條件不同,存在受托條件沖突;
當(dāng)rec1≠rec2時(shí),不同用戶為相同用戶委托相同的權(quán)限,且撤銷條件不同,存在撤銷條件沖突。得證。
定理2委托機(jī)制中不出現(xiàn)冗余委托沖突的條件是委托樹上的相同用戶的結(jié)點(diǎn),其對(duì)應(yīng)權(quán)限集的交集為空或它們父結(jié)點(diǎn)不是祖先子孫關(guān)系。
用反證法證明,假設(shè)委托樹上存在相同用戶的結(jié)點(diǎn),這兩個(gè)結(jié)點(diǎn)權(quán)限集的交集不為空且它們的父結(jié)點(diǎn)是祖先子孫關(guān)系,那么一定存在冗余委托沖突。
條件:v1,v2∈Nodes(T),user(v1)=user(v2),pers(v1)∩pers(v2)≠φ,v3=parent(v1),v4=parent(v2),v3=ancestor(v4)
結(jié)論:存在冗余委托沖突
證明:由pers(v1)∩pers(v2)≠φ可知?p,使p∈pers(v1)∩pers(v2)。
如果v3是根結(jié)點(diǎn),則?d1,dec1,rec1,使(M,user(v1),p)∈A且(user(v4),user(v2),d1,dec1,rec1)∈dr,又因?yàn)閡ser(v1)=user(v2),滿足第一類冗余委托的條件,存在冗余委托。
如果v3不是根結(jié)點(diǎn),則?d2,dec2,rec2,d3,dec3,rec3使 (user(v3),user(v1),p,d1,dec1,rec1)∈dr并且(user(v4),user(v2),p,d2,dec2,rec2)∈dr,由于v3=ancestor(v4),v4=parent(v2)可知,v3=ancestor(v2),因此存在關(guān)于權(quán)限p的委托鏈<user(v3),…,user(v4),user(v2)>,因?yàn)関1和v2所指示的用戶相同,即user(v1)=user(v2),因此存在關(guān)于權(quán)限p的委托鏈<user(v3),…,user(v4),user(v1)>。
又因 (user(v3),user(v1),p,d1,dec1,rec1)∈dr成立,滿足第二類冗余委托的條件,存在冗余委托。得證。
定理3委托機(jī)制中不出現(xiàn)環(huán)狀委托沖突的條件是委托樹上所有結(jié)點(diǎn)所代表的用戶都與其祖先結(jié)點(diǎn)代表的用戶不相同。
通過反證法證明,假設(shè)委托樹上存在相同的用戶,且它們之間存在祖先子孫關(guān)系,則存在環(huán)狀委托沖突。
條件:v1,v2∈Nodes(T),user(v1)=user(v2),v1=ancestor(v2)
結(jié)論:存在環(huán)狀委托沖突
證明:?p∈pers(v2),由于v1是v2的祖先結(jié)點(diǎn),所以p∈pers(v1)成立,且存在關(guān)于權(quán)限p的委托鏈<user(v1),…,user(vx),user(v2)>,因?yàn)関1和v2所指示的用戶相同,即user(v1)=user(v2),得到關(guān)于權(quán)限p的委托鏈<user(v1),…,user(vx),user(v1)>,因此環(huán)狀委托沖突存在。得證。
本文所提出的方法需要在委托樹中查找相同用戶的結(jié)點(diǎn),對(duì)樹中結(jié)點(diǎn)進(jìn)行遍歷并進(jìn)行對(duì)比,其時(shí)間復(fù)雜度為O(n2),其中n表示委托樹中結(jié)點(diǎn)的數(shù)量。文獻(xiàn)[1]、[2]、[10]中所提出的委托方法通過受托者的角色和委托次數(shù)等對(duì)委托進(jìn)行約束,在ARPDM中都可通過定制約束條件中的屬性來實(shí)現(xiàn)(如將受托條件設(shè)為用戶屬性、把再委托條件定義為剩余委托次數(shù)必須大于0)。文獻(xiàn)[7]的權(quán)限檢查方法是基于委托鏈的,每次檢測(cè)都需要遍歷所有的委托鏈,與該方法相比,本文的方法能夠檢測(cè)出更多的沖突類型,并且以可視化的方式進(jìn)行檢測(cè)。文獻(xiàn)[8]中基于圖論的環(huán)狀委托查找算法的時(shí)間復(fù)雜度為O(m3),其中m表示委托圖中結(jié)點(diǎn)的數(shù)量,與該方法相比,本文的方法在n<m3時(shí)具有更好的時(shí)間性能,且能夠通過一次檢測(cè)判定三種不同的沖突。
本文提出了一種支持多屬性約束的權(quán)限委托機(jī)制ARPDM,采用多種約束條件對(duì)委托參與者進(jìn)行約束,能夠提高委托的可控性,防止隨意委托的情況。為了避免不同用戶按照各自的需求實(shí)施委托可能會(huì)造成委托沖突的問題,本文分析了三類委托沖突,提出了一種基于委托樹的沖突檢測(cè)方法,將委托沖突的問題映射為委托樹中結(jié)點(diǎn)的關(guān)系問題,能夠通過一次遍歷檢測(cè)多種沖突,提高沖突檢測(cè)的效率。
[1]Zhang Xinw en,Oh S,Sandhu R.PBDM:a flexible delegation model in RBAC[C]//Proceedings of the SACMAT’03.Como,Italy:ACM Press,2003.
[2]蔡偉鴻,韋崗,肖水.基于映射機(jī)制的細(xì)粒度RBAC委托授權(quán)模型[J].電子學(xué)報(bào),2010,38(8).
[3]孫偉,鄔長(zhǎng)安,王瑞民.角色轉(zhuǎn)授權(quán)模型中授權(quán)沖突問題的解決方案[J].計(jì)算機(jī)工程與應(yīng)用,2008,44(36):244-248.
[4]Ruan Chun,Varadharajan V.Resolving conflicts in authorization delegations[C]//The Australian Conference ACISP2002,July 3-5,2002.
[5]周麗麗,王鳳英.協(xié)同環(huán)境下的委托授權(quán)模型架構(gòu)及實(shí)現(xiàn)[J].山東理工大學(xué)學(xué)報(bào):自然科學(xué)版,2010,24(5):11-14.
[6]陳旭日,徐煒民,沈文楓,等.基于最小生成樹的委托授權(quán)模型[J].計(jì)算機(jī)應(yīng)用與軟件,2007,24(11):47-49.
[7]Ruan Chun,Varadharajan V.A weighted graph approach to authorization delegation and conflict resolutions[J]. LNCS 3108:ACISP,2004:402-413.
[8]洪帆,段素娟,黎成兵.基于圖的委托授權(quán)模型[J].北京郵電大學(xué)學(xué)報(bào),2005,28(6):5-7.
[9]葉春曉,吳中福,符云清,等.基于屬性的擴(kuò)展委托模型[J].計(jì)算機(jī)研究與發(fā)展,2006,43(6):1050-1057.
[10]翟征德.基于量化角色的可控委托模型[J].計(jì)算機(jī)學(xué)報(bào),2006,29(8):1401-1407.
ZHANG Bin1,SHANG Zheng2
1.PLA Information Engineering University,Zhengzhou 450004,China
2.PLA Military Economic Academy,Wuhan 430000,China
To solve the constraints of user role in permission delegation methods,the paper proposes an attribute restricted permission delegation mechanism to strengthen the delegation constraints,in which the capability of delegators and delegatees is constrained by prerequisite condition,delegatee condition and revoke condition.By analyzing conflicts existing in the process of delegation,such as delegation constraint conflicts,redundant delegation conflicts,circle delegation conflicts and so on,this paper designs a conflict detection algorithm based on delegation tree.In this algorithm,permission conflicts can be expressed the relationship of nodes in delegation tree,and multiple delegation conflicts can be detected efficiently through one traversing of delegation tree.
attribute;delegation;conflict;consistency
A
TP393
10.3778/j.issn.1002-8331.1209-0256
ZHANG Bin,SHANG Zheng.Attribute restricted permission delegation mechanism and delegation conflict detecting method.Computer Engineering and Applications,2014,50(16):95-99.
國(guó)家重點(diǎn)基礎(chǔ)研究發(fā)展規(guī)劃(973)(No.2011CB311801)。
張斌(1969—),教授,碩士生導(dǎo)師,主研方向:網(wǎng)絡(luò)與信息安全;商錚,男,碩士研究生。E-mail:zhangyym@xinhuanet.com
2012-09-23
2012-12-17
1002-8331(2014)16-0095-05
CNKI網(wǎng)絡(luò)優(yōu)先出版:2012-12-20,http://www.cnki.net/kcms/detail/11.2127.TP.20121220.1652.004.htm l