何瑞娟
[摘 要] 本文主要采用NIST建議的靜態職責分離的有限層次的RBAC模型做參考,設計企業管理信息系統訪問控制機制。既在信息系統安全上能夠滿足用戶要求,又能夠適應MIS系統易變的特性。
[關鍵詞] RBAC;管理信息系統;角色
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2017. 17. 036
[中圖分類號] TP393.07;TP389 [文獻標識碼] A [文章編號] 1673 - 0194(2017)17- 0072- 03
1 前 言
隨著計算機的普及和網絡信息技術的應用,尤其是互聯網技術及其開發工具的成熟,各種基于互聯網的應用蓬勃發展,電子貿易、電子政務、數字城市等新型的應用都在不同行業展現出了強大的生命力。基于公共網絡的信息系統由于其開放性和資源的共享性極大地方便了使用者,從而大大提高了企業和政府機關的工作效率及工作質量。信息系統本身具備多用戶性、廣泛的適用性,以及數據存取的網絡運行,這些特點都對系統的安全性提出了更高的要求。
為此,除了采用相應的加密技術外,人們也設計出了多種安全模型,其中基于角色的數據訪問權限控制(RBAC)應用最為廣泛。采用RBAC模型設計的信息系統通過對不同角色的用戶訪問權限的控制,更能有效地保證一些重要和敏感數據的安全性。
中國五礦集團公司信息化工作在公司戰略的指導下堅持“統一規劃、分步實施、統一部署、分級管理”的總體原則,建設了包括戰略、人力、財務、投資、風險、審計等在內的管理決策平臺,建成了集團集中部署的財務業務一體化的運營管控平臺,搭建了包括門戶、協同辦公、知識管理、數據管控等在內的基礎應用支撐平臺。三大平臺的應用體系建設涵蓋了集團經營管理的方方面面,用戶上至集團公司領導,下至普通一線員工。一套既嚴謹又靈活、既先進又實用并且便于維護的用戶權限管理體系的建立對于集團公司信息化建設工作的推進至關重要。
2 背景知識
2.1 訪問控制簡介
訪問控制模型是一種從訪問控制的角度出發,描述安全系統,建立安全模型的方法。常用的有:自主訪問控制模型,強制訪問控制模型,基于角色的訪問控制模型。
自主訪問控制模型。自主訪問控制模型(DAC Model:Discretionary Access Control Model)是根據自主訪問控制策略建立的一種模型,允許合法用戶以用戶或用戶組的身份訪問策略規定的客體,同時阻止非授權用戶訪問客體,某些用戶還可以自主地把自己所擁有的客體的訪問權限授予其他用戶。
自主訪問控制對用戶提供的這種靈活的數據訪問方式,使得DAC廣泛應用在商業和工業環境中。由于用戶可以任意傳遞權限,DAC模型提供的安全防護還是相對比較低的,不能給系統提供充分的數據保護。
強制訪問控制模型。強制訪問控制模型(MAC Model:Mandatory Access Control Model)最開始為了實現比DAC更為嚴格的訪問控制策略,美國政府和軍方開發了各種各樣的控制模型,這些方案或模型都有比較完善和詳盡的定義。隨后,逐漸形成強制訪問的模型,并得到廣泛的商業關注和應用。在MAC訪問控制中,用戶和客體資源都被賦予一定的安全級別,用戶不能改變自身和客體的安全級別,只有管理員才能夠確定用戶和組的訪問權限。和DAC模型不同的是,MAC是一種多級訪問控制策略,它的主要特點是系統對訪問主體和受控對象實行強制訪問控制,系統事先給訪問主體和受控對象分配不同的安全級別屬性,在實施訪問控制時,系統先是對訪問主體和受控對象的安全級別屬性進行比較,再決定訪問主體能否訪問該受控對象。
基于角色的訪問控制模型。基于角色的訪問控制模型(RBAC Model:Role-Based Access Control Model):RBAC模型的基本思想是將訪問許可權分配給一定的角色,用戶通過擔任不同的角色獲得角色所擁有的訪問許可權。這是因為在很多實際應用中,用戶并不是可以訪問的信息資源的所有者(這些信息屬于企業),因此,訪問控制應該基于員工的職務而不是基于員工在哪個組或者誰是信息的所有者,即訪問控制是由各個用戶在部門中所擔任的角色來確定的,例如,一個公司可以有總經理、部門經理、業務員等角色。
RBAC從控制主體的角度出發,根據管理中相對穩定的職權和責任來劃分角色,將訪問權限與角色相聯系,這點與傳統的MAC和DAC將權限直接授予用戶的方式不同;通過給用戶分配合適的角色,讓用戶與訪問權限相聯系。角色成為訪問控制中訪問主體和受控對象之間的一座橋梁。
角色可以看作是一組操作的集合,不同的角色具有不同的操作集,這些操作集由系統管理員分配給角色。在下面的實例中,我們假設A是部門經理,B是業務員。那么部門經理的權限為:查看業務數據、審批業務數據、審批費用數據;業務員的權限為:錄入業務數據、錄入費用數據、查看審批數據。那么,依據角色的不同,每個主體只能執行自己所指定的訪問功能。用戶在一定的部門中具有一定的角色,其所執行的操作與其所扮演的角色的職能相匹配,這正是基于角色的訪問控制(RBAC)的根本特征。
系統管理員負責授予或撤銷用戶角色。同一個用戶可以是多個角色的成員,即同一個用戶可以扮演多種角色,比如一個用戶可以是部門經理,同時也可以作為公文文書。同樣,一個角色可以擁有多個用戶成員,這與現實是一致的,一個人可以在同一部門中擔任多種職務,而且擔任相同職務的可能不止一人。因此RBAC提供了一種描述用戶和權限之間的多對多關系。RBAC中引進了角色的概念,用角色表示用戶在系統中具有的操作權限,靈活地表達和實現了企業的安全策略,從而簡化了權限設置的管理,從這個角度看,RBAC很好地解決了企業管理信息系統中用戶數量多、變動頻繁的問題。endprint
相比較而言, RBAC是實施面向企業的安全策略的一種有效的訪問控制方式,其具有靈活性、方便性和安全性的特點,目前在大型數據庫系統的權限管理中得到普遍應用。
2.2 RBAC架構
NIST的RBAC參考模型包括核心RBAC、層次RBAC、靜態職責分離和動態職責分離四個模型構件,分別描述了RBAC系統某一個方面的特征。在構造實際RBAC系統時,除核心RBAC構件是必選的,其他構件都是可選的。核心RBAC構件是任何RBAC系統都必須具備的基本需求:包括五個基本要素集:用戶(USERS)、角色(ROLES)、對象(OBS)、操作(OPS)和訪問權限(PRMS)。
在RBAC2001建議標準中訪問權限僅限于對數據和資源對象的訪問,不包括對系統要素自身的訪問控制。對系統要素的訪問被認為是系統管理員的權限(如修改系統的用戶、角色、訪問權限的形式、UA關系、PA關系等)。
3 系統分析與設計
中國五礦集團公司基于RBAC的理論搭建了用戶及權限管理系統。各系統的用戶及權限由系統管理員統一管理,在用戶及權限管理系統中完成各應用系統用戶的建立及權限分配,實現了用戶統一管理、統一認證,為應用系統建設和推廣奠定了堅實的基礎。下面以五礦集團某業務系統的權限管理設計方案為例闡述。
3.1 訪問控制模型的選擇
比較幾種訪問控制模型,并結合企業管理信息系統的特點進行分析,我們決定采用當前管理信息系統中比較常用的RBAC模型,通過在用戶和權限間引入角色的概念,可以大大降低權限分配時的工作量,同時可以在人員流動時方便地更改用戶對系統的操作權限,使系統具備更強的適應型。
相比較RBAC模型,DAC模型不能滿足安全性的要求,而MAC模型又給授權工作帶來了巨大的工作量,將給用戶使用系統造成不必要的障礙。
3.2 用戶角色分析
首先根據系統的用戶特點,設計用戶角色,例如,系統管理員:負責公司系統參數的設置、人員操作模塊設置等系統管理功能;代碼管理員:負責維護系統中的代碼表;總部總經理:管理公司總部及下屬各分公司的業務、財務及人員;分公司總經理:管理本公司的業務、財務、人員;副總經理:分管公司內部分部門的業務、財務、人員;財務經理:財務部門經理,參與費用的審批;財務人員:負責財務數據的處理;業務經理:管理本部門的業務,參與業務及費用數據的審批;業務人員:處理日常業務;核算員:負責本部門的費用核算工作。
3.3 數據結構設計
RBAC核心表如下,用戶表:保存系統中的所有用戶;操作角色定義表:保存系統中的所有角色;功能對象表:保存系統中的操作對象;功能操作表:保存對象的操作動作;角色權限分配表:保存每個角色所擁有的權限;用戶角色分配表:保存所有用戶所飾演的角色。
4 結 語
隨著計算機技術的不斷發展,管理信息系統(MIS)作為提高生產力的主要手段被廣泛采用。為保證系統的數據安全,制定實施一套行之有效的訪問控制機制,是管理信息系統建設成敗的重要因素。基于角色的訪問控制,利用了用戶—角色—權限的對應方式,比傳統的DAC,MAC,能夠顯著地提高管理效率,降低管理成本,具有更強的適應性。
主要參考文獻
[1]劉宏月,馬健峰,范九倫.一種RBAC建議標準的分析與應用[J].信息安全與通信保密,2002(4):36-39.
[2]崔鵬,李麗亞.RBAC在企業管理信息系統中的應用[J].機電產品開發與創新,2004,17(1):17-19.
[3]夏志雄,張曙光.RBAC在基于Web管理信息系統中的應用[J].計算機應用研究,2004,21(7):198-199.
[4]喬穎,須德,戴國忠.一種基于角色訪問控制(RBAC)的新模型及其實現機制[J].計算機研究與發展,2000,37(1):37-44.
[5]許春根,嚴悍,劉鳳玉.基于角色訪問控制技術的UML表示[J].計算機工程與應用,2001,37(8):9-12.endprint