徐珊珊
【摘 要】基于角色的訪問控制(RBAC)是一種可以解決統(tǒng)一資源訪問控制的方法,能夠更好地適應(yīng)不同信息系統(tǒng)特定的安全策略,簡化對信息系統(tǒng)訪問控制的授權(quán)與管理。本文通過對RBAC模型構(gòu)件分析,對其特點及應(yīng)用優(yōu)勢進(jìn)行了總結(jié)和研究。
【關(guān)鍵詞】RBAC;角色;授權(quán);信息系統(tǒng);用戶權(quán)限;訪問控制
在一般管理信息系統(tǒng)中,訪問控制方法一般有三種形式:一、自主型,這種訪問控制方法主要借助于訪問控制列表實現(xiàn)訪問控制;二、強(qiáng)制型,這種訪問控制方法用于軍事應(yīng)用等對安全級別要求較高的系統(tǒng);三、基于角色的訪問控制方法(Role-Based Access Control),下文主要對這種方法進(jìn)行介紹和研究。
作為目前公認(rèn)的可以解決統(tǒng)一資源訪問控制的方法,RBAC的設(shè)計理念是:權(quán)限與角色相關(guān)聯(lián),用戶通過成為適當(dāng)角色的成員而得到這些角色的權(quán)限。這就極大地簡化了信息系統(tǒng)權(quán)限的管理。這里所說的角色與現(xiàn)實生活中角色的概念有所不同,它是一組操作的集合,不同的角色具有不同的操作集,這些操作由系統(tǒng)管理員分配給角色。用戶的授權(quán)是指系統(tǒng)管理員賦予用戶一個角色,只要用戶屬于某個角色那么他就具備這個角色的所有操作許可,即該角色所擁有的權(quán)限。系統(tǒng)中的某一個用戶可以被賦予不同的角色,也就是說用戶與角色是多對多的關(guān)系,即一個用戶可以有多個角色,一個角色可以被賦予多個用戶。應(yīng)用RBAC機(jī)制的信息系統(tǒng)中授權(quán)管理的靈活性得到很好的體現(xiàn):1)減少授權(quán)管理的復(fù)雜操作,降低系統(tǒng)管理開銷;2)可以靈活地適應(yīng)信息系統(tǒng)特定安全策略的制定與修改。
1 RBAC模型構(gòu)件分析
我們對該模型定義如下:
U,R,P,S:用戶,角色,權(quán)限,會話;
PA?哿P*R:權(quán)限分配,多對多的關(guān)系;
UA?哿U*R:用戶分配,多對多關(guān)系;
User:S->U,每一個會話S對應(yīng)單一用戶user(s)的映射;
Roles:會話S到角色集合role(s)?哿{r|(user(s),r)∈PA}
易見:該模型由三個實體組成,分別是:用戶(U)、角色(R)、權(quán)限(P)。其中用戶指自然人,角色就是組織內(nèi)部一件工作的功能或工作的頭銜,表示該角色成員所授予的職責(zé)的許可,系統(tǒng)中擁有權(quán)限的用戶可以執(zhí)行相應(yīng)的操作。
角色權(quán)限分配 PA和用戶角色分配 UA是多對多的關(guān)系,即一個用戶可以擁有多個角色,一個角色也可被多個用戶所擁有。同樣的,一個角色擁有多個權(quán)限,一個權(quán)限能被多個角色所擁有。用戶建立會話從而對資源進(jìn)行存取,每個會話 S 將一個用戶與他所對應(yīng)的角色集中的一部分建立映射關(guān)系,這個角色會話子集稱為會話激活的角色集。于是,在這次會話中,用戶可以執(zhí)行的操作就是該會話激活的角色集對應(yīng)的權(quán)限所允許的操作。
2 RBAC特點
2.1 信息系統(tǒng)訪問權(quán)限與角色相關(guān)聯(lián),不同的角色有不同的權(quán)限
用戶以什么樣的角色對信息系統(tǒng)進(jìn)行訪問,決定了用戶擁有的權(quán)限以及可執(zhí)行何種操作。在RBAC中,用戶就是一個可以獨立訪問信息系統(tǒng)資源的主體。角色是指信息系統(tǒng)中的任務(wù)或者位置,它代表了一種權(quán)利、資格和責(zé)任。許可(特權(quán))就是允許對一個或多個客體執(zhí)行的操作。一個用戶可經(jīng)授權(quán)而擁有多個角色,一個角色可由多個用戶構(gòu)成;每個角色可擁有多種許可,每個許可也可授權(quán)給多個不同的角色。每個操作可施加于多個客體(受控對象),每個客體也可以接受多個操作。系統(tǒng)中主要設(shè)計如下表格記錄相關(guān)信息:
用戶表(USERS)包括用戶標(biāo)識、用戶姓名、用戶登錄密碼。用戶表是系統(tǒng)中的個體用戶集,隨用戶的添加與刪除動態(tài)變化。
角色表(ROLES)包括角色標(biāo)識、角色名稱、角色基數(shù)、角色可用標(biāo)識。角色表是系統(tǒng)角色集,由系統(tǒng)管理員定義角色。
客體表(OBJECTS)包括對象標(biāo)識、對象名稱??腕w表是系統(tǒng)中所有受控對象的集合。
操作算子表(OPERATIONS)包括操作標(biāo)識、操作算子名稱。系統(tǒng)中所有受控對象的操作算子構(gòu)成操作算子表。
許可表(PERMISSIONS)包括許可標(biāo)識、許可名稱、受控對象、操作標(biāo)識。許可表給出了受控對象與操作算子的對應(yīng)關(guān)系。
角色/許可授權(quán)表包括角色標(biāo)識、許可標(biāo)識。系統(tǒng)管理員通過為角色分配或取消許可管理角色/許可授權(quán)表。
用戶/角色分配表包括用戶標(biāo)識、角色標(biāo)識。系統(tǒng)管理員通過為用戶分配角色、取消用戶的某個角色等操作管理用戶/角色分配表。
用戶/角色授權(quán)表包括用戶標(biāo)識、角色標(biāo)識、可用性。
2.2 角色與角色之間存在繼承關(guān)系
為了提高系統(tǒng)工作效率,避免相同權(quán)限的重復(fù)設(shè)置,RBAC采用了“角色繼承”的概念。角色繼承把角色組織起來,能夠很自然地反映系統(tǒng)內(nèi)部人員之間的職權(quán)、責(zé)任關(guān)系。角色之間可能有互相重疊的職責(zé)和權(quán)力,屬于不同角色的用戶可能需要執(zhí)行一些相同的操作。
2.3 角色限制
角色限制包括角色互斥與角色基數(shù)限制。對于某些特定的操作集,某一個用戶不可能同時獨立地完成所有這些操作。角色互斥可以有靜態(tài)和動態(tài)兩種實現(xiàn)方式。靜態(tài)角色互斥:只有當(dāng)一個角色與用戶所屬的其他角色彼此不互斥時,這個角色才能授權(quán)給該用戶。動態(tài)角色互斥:只有當(dāng)一個角色與一主體的任何一個當(dāng)前活躍角色都不互斥時,該角色才能成為該主體的另一個活躍角色。角色基數(shù)限制是指在創(chuàng)建角色時,要指定角色的基數(shù)。在一個特定的時間段內(nèi),有一些角色只能由一定人數(shù)的用戶占用。
2.4 最小權(quán)限原則
即指用戶所擁有的權(quán)力不能超過他執(zhí)行工作時所需的權(quán)限。實現(xiàn)最小特權(quán)原則,需要分清用戶的工作職責(zé),確定完成該工作的最小權(quán)限集,然后把用戶限制在這個權(quán)限結(jié)合的范圍之內(nèi)。一定的角色就確定了其工作職責(zé),而角色所能完成的事物蘊(yùn)涵了其完成工作所需的最小權(quán)限。用戶要訪問信息首先必須具有相應(yīng)的角色,用戶無法饒過角色直接訪問信息。
2.5 角色容量
在一個特定的時間段內(nèi),有一些角色只能有一定人數(shù)的用戶占用。在創(chuàng)建新的角色時應(yīng)該指定角色的容量。用戶是一個靜態(tài)的概念,會話則是一個動態(tài)的概念。一次會話是用戶的一個活躍進(jìn)程,它代表用戶與系統(tǒng)交互。用戶與會話是一對多關(guān)系,一個用戶可同時打開多個會話。一個會話構(gòu)成一個用戶到多個角色的映射,即會話激活了用戶授權(quán)角色集的某個子集,這個子集稱為活躍角色集?;钴S角色集決定了本次會話的許可集。會話表包括會話標(biāo)識、用戶標(biāo)識。會話的活躍角色表包括會話標(biāo)識、角色標(biāo)識。
3 RBAC應(yīng)用優(yōu)勢
RBAC最突出的優(yōu)點是信息系統(tǒng)中的系統(tǒng)管理員能夠按照安全策略劃分不同的角色,執(zhí)行特定的任務(wù)。一個系統(tǒng)建立起來后主要的管理工作即為授權(quán)或取消用戶的角色。用戶的職責(zé)變化時只需要改變角色即可改變其權(quán)限。當(dāng)組織功能變化或演進(jìn)時,則只需刪除角色的舊功能,增加新功能,或定義新角色,而不必更新每一個用戶的權(quán)限設(shè)置。
總之,基于角色的訪問控制方法可以為應(yīng)用系統(tǒng)建立一個高安全強(qiáng)度,更易維護(hù)管理,擴(kuò)展能力極強(qiáng)的訪問控制環(huán)境,并能夠有效的控制管理的復(fù)雜性,提供標(biāo)準(zhǔn)化和可以不斷延伸授權(quán)平臺,保證了用戶能按照應(yīng)用規(guī)模和數(shù)量快速地建立訪問控制體系。它能使用戶已建立的訪問控制體系不斷滿足演化的應(yīng)用權(quán)限需求,如支持新應(yīng)用、支持新的權(quán)限、增加用戶數(shù)量、增加用戶類型、增加策略數(shù)量等。這種理念能夠更好地適應(yīng)不同信息系統(tǒng)特定的安全策略,簡化對信息系統(tǒng)訪問控制的授權(quán)與管理。
[責(zé)任編輯:楊玉潔]