基于角色的訪問控制模型的構成二
系統初始化時,PA和UA由安全管理員進行配置,配置PA意味著系統為每一個角色分配相應的操作權限,配置UA表示系統為每一個用戶指定相應的角色身份。如果系統安全需求發生變化,安全管理員可修改PA和UA的配置,以及U、R和P的值。
user:S_U表示每一個會話是由哪個用戶創建的,用戶創建一個會話,系統就會激活他所擁有的角色集的一個子集,即roles(si)。會話s;具有的權限集P。;是這個子集中所有角色的權限的集合。
RBAC1
RBAC1包含RBACO的所有元素,并加入了角色等級的概念。在一個機構中不同的職務或角色不但具有不同的的權力,這些權力之間存在包含關系,職務越高,權力越大。RBAC1 用偏序關系來描述角色之間的等級關系,高級別的角色包含低級別角色的權限。利用角色等級的概念,可以實現多級安全中的訪問控制。
在多級安全控制系統內,存取類的保密級別是線性排列的。例如: 公開<秘密<機密<絕密
其中,安全策略的一個要求就是:要想合法地獲得信息,提出存取請求的人員的存取類的級別要大于信息的存取類級別。RBAC1中支持的層次關系可以容易地實現多級安全系統所要求的保密級別的線性排列的要求。
多級安全系統的另一個要求就是要能夠支持范疇,為了獲得信息的存取權,提出存取
注腳}f高j急毒1,≥毒、l{一^臣到蜀訓l黲∞測(《I溉}/(登。0)
請求的人員必須具備一定的存取類,他的存取類的范疇的集合應該包括信息存取類的全部范疇。角色的層次結構RBAC1中的角色可以容易地實現所要求的保密存取類的范疇的要求。
RBAC2
RBAC2包含RBACO的所有元素,并加入了約束的概念。在絕大多數組織中,除了角色的層次關系而外,經常要考慮的問題是類似于下列情況:一個公司的采購員和出納員雖然都不算是高層次的角色,但是,任何一個公司都絕不會允許同時分配給某一個具體人員以這兩個角色的。因為很顯然,這種工作安排必然導致欺詐行為的發生。不論一個具體的系統中,
是否具備等級角色的機制,約束機制都是很重要的。它是制定高層安全策略的有效機制,特別是在分布式的系統中,安全管理員可將它作為強制要求。通常情形下,約束作用于PA和UA,也可以作用在會話的和函數上。
最常見的約束條件就是互斥約束,一個用戶在兩個互斥的角色集中,只能分配給其中一 個集合中的角色。與角色互斥相似的是權限的互斥機制。例如,簽字權,在任何實際的業務系統中都是非常重要的一個授權過程,而審計權一般都只授予角色一會計主任。簡言之,對PA的約束可以防止系統內的重要的特權被失控地分散,從而保證了強制控制的可靠實施。
有時可以對角色附加數量的約束,譬如某個崗位只允許安排2個用戶。這樣系統管理員在執行UA的時候就受到公司規定的有效的約束。
此外,可以對角色施加前提約束,即某個用戶被指派為角色A的前提條件是已經被指派為角色B。例如要扮演董事長的角色,必須先要被選人董事會;要成為項目的測試組成員, 必須要首先成為項圖的成員。實際情況中類似的約束條件一般都是對有一定業務聯系或關系的角色起作用。對用戶指派的約束機制有一個弱點,即對同一個用戶如果給予了兩個以上的用戶ID,系統是很難做出邏輯合理的判斷的,系統對用戶指派所做的約束安排就會失效。
RBAC3
RBAC3結合了RBAC1和RBAC2,同時具備角色等級和約束。但角色等級和約束之間存在一些矛盾。例如,測試工程師和程序員角色是互斥的,項目管理角色同時具有測試工程師和程序員角色的權限,違反了角色約束的互斥性。一般情況下,高級角色違反這種約束是可以接受的,而在其它情形下,則需要考慮這種排斥。在角色數量限制中也存在類似問題。 如,一個用戶只能指派到最多一個角色中,項目管理的用戶指派到他的下級角色就違反了這一約束。因此,在應用RBAC3時,需要根據系統的實際安全需求來制定合理的約束。
- 上一篇:基于角色的訪問控制模型的構成一
- 下一篇:基于角色的訪問控制模型分析