王紅玉
摘 要:權限管理是信息系統的重要環節,一個好的權限管理系統是成功的信息系統的重要因素。基于角色的權限控制提供了較高的靈活性和較低的管理負擔,是目前研究的重點。本文對RBAC的基本工作原理進行了研究,利用角色訪問控制技術可以有效地實現用戶訪問權限的動態管理,降低授權管理的復雜度。
關鍵詞:角色;訪問;權限;控制
RBAC是一種可擴展的訪問控制模型,通過引入角色來對用戶和權限進行解耦,簡化了授權操作和安全管理,它是目前公認的解決大型企業的統一資源訪問控制的有效訪問方法,其兩個特征是:(1)由于角色/權限之間的變化比角色/用戶關系之間的變化相對要慢得多,從而減小授權管理的復雜性,降低管理開銷;(2)靈活地支持企業的安全策略,并對企業變化有很大的伸縮性。
1 RBAC的基本原理
目前的權限管理可分為兩類:①系統級的安全管理,如操作系統級的安全管理、數據庫級的安全管理等;②應用級的安全管理,該部分權限的控制主要取決于具體的系統。
基于角色的權限控制(Role Based Access Control,RBAC)的概念由Ferraiolo和Kuhn于1922年提出。它將用戶和它的具體權限分離開來,管理員可以將用戶的授權和權限的劃分分別進行處理,給用戶授予角色來實現對用戶的授權操作。他們提出角色的概念是:分配給每一個用戶一個合適的角色,每一個角色都具有其對應的權限;一個用戶可以有多個角色,一個角色也可以有多個用戶。一個角色可以有多個權限,相同的權限也可以賦予多個角色。因此,角色是安全控制策略的核心,這極大地簡化了安全管理,特別適用于大規模的企業應用。無論是系統級還是應用級的安全管理,都可以應用RBAC進行權限控制,如目前的Windows XP操作系統和SQL Server2000的用戶權限管理就體現了RBAC的思想。
2 RBAC基本模型
標準RBAC模型由4個部件模型組成,分別是基本模型RBAC0(Core RBAC)、角色分級模型RBAC1(Hierarchal RBAC)、角色限制模型RBAC2(Constraint RBAC)和統一模型RBAC3(Combines RBAC)。RBAC 基本模型(RBAC0)包含了RBAC 標準最基本的內容,該模型的定義如圖1所示。
RBAC基本模型包括5個基本數據元素:用戶,角色,資源,控制,授權。
用戶:是指一個可以獨立訪問計算機系統中的數據或其他可用資源的主體。一般來說,用戶指的是使用計算機的人,也可指具有自主行為的機器人或智能自動化代理等。這里的用戶表示一個集合,可以為不同用戶指定某種或某些角色。
角色:是RBAC的核心元素,指執行特定任務的能力或在組織中已被授予一定責任的工作頭銜。它可以看作是一組操作的集合,在一個組織機構中往往與工作崗位相對應。在許多訪問控制系統中,是以用戶組作為訪問控制的單位。用戶組和角色的最主要的區別在于,用戶組是作為用戶的一個集合來對待的,并不涉及它的授權許可;而角色則既是一個用戶的集合,又是一個授權許可的集合。用戶可以與一個或多個角色相聯系。通常情況下,用戶關聯的角色可能會經常變化,但角色關聯的權限卻是相對穩定的。因此,可以事先將角色與權限關聯好,再對用戶進行授權。
它們之間的關系如下:用戶被分配一定角色,角色被分配一定許可權,會話是用戶與激活的角色集合之間的映射,用戶與角色間的關系定義和角色與權限間的關系定義無關。
控制對象(Resource):系統的管理功能,如欄目管理、方案管理、新聞管理等;
操作(Operation):對管理功能的操作,主要是增加、刪除、修改、查找。
3 訪問控制模塊
采用RBAC模型最大的好處是分離了用戶和權限,使管理員可以分別處理用戶的授權和權限的劃分。這種面向對象的權限分離思想使開發出來的訪問控制模塊的通用性和可復用性更強,最大限度地避免了開發人員的重復性工作。在開發系統時,可以將訪問控制作為一個獨立的模塊進行開發。
上面的分析表明RBAC基本模型能滿足可擴展的動態自定制信息系統中的訪問控制,由此可將訪問控制模塊分為以下兩個模塊:(1)系統管理模塊:包括用戶管理模塊和角色及權限管理模塊兩個部分,主要完成用戶增減、角色增減及其權限分配。(2)身份認證模塊:通過用戶名、密碼確認用戶身份并對其訪問某一資源的某一功能進行認證。
[參考文獻]
[1]夏啟壽,張小東.基于角色的訪問控制的研究[J].池州示范學報,2007年6月.
[2]郭煦.基于角色訪問控制的應用研究[J].上海電機學院學報,2007年12月.
[3]高燕.基于角色的訪問控制的設計與實現[J].中國高新技術企業,2008年8月.
[4]陸國際.基于角色的訪問控制策略的集成研究[D].大連理工大學,2010年10月.
[5]匡博.基于角色的訪問控制系統的研究與應用[D].河北科技大學,2010年3月.