傅龍天
(閩江學院,福建 福州 350011)
基于RBAC的改進模型及其應用
傅龍天
(閩江學院,福建 福州 350011)
訪問控制在企業網絡信息化建設中得到了普遍應用,其中上個世紀提出的基于角色控制的模型發揮了關鍵作用,但分析RBAC模型仍存在不足之處.本文在基于角色的訪問控制模型的基礎上引入時間約束,提出了一個新的基于角色訪問控制的改進模型,在一定程度上有效地解決了時效性、角色和權限轉授和角色之間的層級問題.實際應用系統給出了有效的驗證.
訪問控制;基于角色的訪問控制;時效性
RBAC模型是上個世紀后期提出的,隨著計算機技術的迅速發展它的缺陷主要表現在如下方面.首先時效性問題,RBAC模型定義某種角色具備某些權限后,將長期有效.在現實生活中需要短期授予特定權限,過了一定的時效期后,該授權失效.原模型與實際情況不符,難于實現該功能.
其次角色、權限轉授問題,RBAC模型并沒有定義該功能.例如:在人事管理系統中,某局長出差在外,在出差期間正好需要審批某項目,由于出差在外而無法執行審批動作,因此希望能把審批的權限轉授予副局長,并且轉授予時間為5分鐘,由副局長來執行審批行為.RBAC模型無法實現該功能,將陷入困境.
另外,RBAC模型定義的角色過于簡單,沒有定義角色的管理者,這與實際情況不符.在實際生活中,存在某種角色管理另外一種角色的可能性,即角色之間除了平行關系外,還可能是管理與被管理關系.
針對RBAC原有模型的缺陷,筆者提出一個改進模型E-RBAC,能解決RBAC模型的部分問題,其形式化描述如下:
2.1 基本結構定義
用戶E U={U1,U2,…Un}
角色E R={R0,R1,R2,…Rn}角色R0表示超級管理員角色
權限E P={P1,P2,…Pn}
時間周期E C={C1,C2,…Cn}
U R?U X R U R表示用戶到角色的多對多關系
P R?P X R P R表示權限到角色的多對多關系
2.2 基本操作定義
設Uj,Up,Uq表示用戶,Cj表示時間周期,Rj表示角色,Pj表示權限.
(1)用戶時效函數
設X U R={(Uj,Pj)|(?Uj∈E U)∩(?Pj∈E P),j=1,2,3,4…n},
則定義戶時效函數為:
F D Ai(Uj,Cj)={(Uj,Cj)|(?Uj∈U R)∩(?Uj∈X U R)∩(?Cj∈E C),j=1,2,3,4…n}
函數F D Ai(Uj,Cj)表示用戶Uj在Cj時間區間內,其對應的角色所具備的權限有效,即用戶Uj在Cj時間區間內權限有效,本函數只需要Uj參數而不需要角色和權限參數(因為根據用戶可以在U R集合中搜索獲得其對應的角色,再根據該角色在P R集合中搜索獲得其權限).
(2)角色時效函數
F D Bi(Rj,Cj)={(Rj,Cj)|(?Rj∈(U R X E C))∩(?Cj∈E C),j=1,2,3,4…n}
函數F D Bi(Rj,Ck)表示角色Rj在Cj時間區間內,該角色Rj對應的權限有效,同時由此函數可以獲得一個推論:即在某段時間區間內特定角色的權限有效,則具有該角色的用戶的權限也有效,反之亦然.
(3)用戶權限時效函數
F D Ci(Uj,Pj,Cj)={(Rj,Pj,Cj)|(?j∈U R)∩(?j∈(P R X E C))∩(?j∈E C),j=1,2,3,4…n}
函數F D Ci(Uj,Pj,Ck)表示在Cj)時間區間內用戶Uj的Pj權限有效,由于所有的用戶都對應的一個或多個角色,每個角色都有一個或多個權限,所以F D Bi(Rj,Cj))無法直接實現該功能,必須需要定義F D Ci(Uj,Pj,Cj))來獨立完成.
(4)角色轉授函數
設T R A(Um)={Rm|?Um∈U R},則定義F T Ai(Um,Un,Rj,Cj)函數如下:
F T Ai(Up,Uq,Rj,Cj)={(Up,Uq,Rj,Cj)|(?Up∈U R)∩(?Uq∈U R)∩(?Rj∈(T R A(Up)-T R(Uq)))∩?Cj∈E C,(p,q,j=1,2,3,4…n,p≠q)}
函數F T Ai(Up,Uq,Rj,Cj)表示在Cj時間區間內用戶Up把角色Rj轉授給Uq,并且只有用戶Up才具有角色Rj,用戶Uq沒有.
(5)權限轉授函數
設T R B(Um)={Pm|(?Um∈(U R X P R))},則定義F T Ai(Um,Un,Rj,Cj)函數如下:
F T Bi(Up,Uq,Pj,Cj)={(Up,Uq,Pj,Cj)|(?Up∈U R)∩(?Uq∈U R)∩(?Rj∈(T R B(Up)-T R B(Uq)))∩?Cj∈E C,(p,q,j=1,2,3,4…n,p≠q)}
函數F T Bi(Up,Uq,Pj,Cj)表示Cj時間區間內用戶Up把Pj權限轉授給Uq,也就是用戶Up具有一個或多個角色,這些角色中某個或多個角色具有權限Pj,而Uq所對應的角色不具有權限Pj.
(6)角色管理函數
F R(Rp,Rq,Cj)={(Rp,Rq,Cj)|(?Rp∈E R)∩(?Rq∈E R)(?Cj∈E C),j=1,2,3,4…n}
函數F R(Rp,Rq,Cj)表示在Cj時間區間內角色Rp能夠管理角色Rq,角色Rp對角色Rq的管理能力體現為角色Ri可以為角色Rj配置權限,讓角色Rj擁有什么權限.
2.3 模型說明
E-RBAC的核心是時間區間,利用時間區間來充分管理角色和權限,只有確定了特定時間區間才能確定用戶是否有權限,其結構圖如圖1所示.

圖1 E-RBAC模型結構圖
在RBAC模型中引入時間約束,一般可以采用兩種辦法,第一種是在RBAC模型中直接加上時間維度,把連續的時間序列用離散時間點來模擬;第二種引入時間周期概念,通過檢測時間周期來判斷角色、權限是否有效.第一種方法在實際應用中并不理想,例如:當時間粒度很細的時候,將占用極大的系統資源來處理時間狀態.因此E-RBAC模型選擇第二種.通過F D Ai(Uj,Cj)、F D Bi(Rj,Cj)、F D Ci(Uj,Pj,Cj)函數來實現權限、角色的時間區間控制;通過F T Ai(Up,Uq,Rj,Cj)、F T Bi(Up,Uq,Pj,Cj)函數來實現角色、權限的轉移,并且都增加時間區間Cj參數,加強了角色、權限的轉移的能力,使之具備時效性;E-RBAC模型定義R0充當者角色的管理,用于管理其他所有角色,同時各種角之間本身存在管理與被管理的層級關系.
2.4 E-RBAC模型的特點
E-RBAC模型的核心是引入了時間約束,把時間約束分成離散的序列區間,用戶的角色權限隨著時間區間的變化而變化,在不同的時間區間內具備的角色權限不同.這就改變了RBAC模型的授權持久性特征,而用離散時間區間來替換,更符合實際.E-RBAC模型在引入時間約束的基礎上,定義了角色、權限轉授操作,并使之具有時效性,也就是用戶在某個特定的時間區間內把自身具備的角色、權限轉授給其他用戶,超出該特定時間區間后所專授的角色、權限自動消失,不再有效.E-RBAC模型還補充定義了角色之間的關系,特別定義了R0為超級管理員角色,可以管理一切角色,同時定義了角色之間的層級管理,某些角色之間存在上下級的隸屬管理管理,很好地適應客觀現實.
絕大多數的企業都有人事管理系統,都有權限控制模塊.在實際應用中存在權限角色轉授、角色之間的管理、時效性問題.根據E-RBAC模型的思想設計一套權限管理模塊并將該模塊應用于企業的人事管理系統中.
具備角色R0的管理員通過配置用戶表E U,把企業所有用戶添加到E U表中;同理可以配置角色表E R和權限表E P;配置用戶角色表U R,在U R表中配置不同用戶具備多種角色,允許同一用戶在不同的時間區間內或者相同時間區間內具有一種或多種角色;同理配置角色權限表P R,允許同一角色在不同的時間區間內或者相同時間區間內具有一種或多種權限.配置F T A表,允許U s e rm在不同的時間區間內或者相同時間區間內把一個或多個角色授予U s e rn,被授予的角色必須是U s e rm本身所具備的,不允許把自己不具備的角色授予他人;配置F T B表,允許U s e rm在不同的時間區間內或者相同時間區間內把一個或多個權限授予U s e rn,不允許把自己不具備的權限授予他人;配置F R表,允許在特定的時間區間內角色Ri可以管理角色Rj,即角色Ri可以為角色Rj配置權限,這樣角色Rj就根據角色Ri所賦予的權限行使職權.
本文在RBAC模型的基礎上提出新的E-RBAC模型,解決了RBAC模型的時效性問題、權限和角色轉授問題、角色和角色之間的管理與被管理的層次問題.通過人事管理系統的實際應用,證明該模型有很高的可靠性,有良好的性能,具備很好的操作性.
〔1〕陸偉鋒.基于組織機構圖的改進RBAC模型.高等教育出版社,2006.
〔2〕龐春江,龐會靜.信息安全管理平臺理論與實踐.電子工業出版社,2007.
〔3〕J.Singh,Stearns,Designing Enterprise Applications with the J2EE.Addison-Wesley,2006.4.
〔4〕Ferraiolo DF,Sandhu R,Gavrila S.Proposed NIST standard for role-based access control.ACM Transactions on Information and System Security,2001.
〔5〕張振川,張琳琳.基于CEBus的家庭局域網網絡物理層研究.計算機工程與設計,2006.8.
〔6〕Dieter Gollmann,Computer Security,John Wiley & Sons,2004.
〔7〕IEEE Standard 802.11.W ireless I N M edium Access Co ntrol (MAC)and Physical Layer(PHY)Specifications [S3.1999.
TP273+5
A
1673-260X(2010)08-0032-02