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