李蚌蚌
(西安工程大學(xué) 計算機(jī)科學(xué)學(xué)院,陜西 西安 710048)
基于RBAC擴(kuò)展的權(quán)限模型在用電信息采集系統(tǒng)中的應(yīng)用
李蚌蚌
(西安工程大學(xué) 計算機(jī)科學(xué)學(xué)院,陜西 西安 710048)
傳統(tǒng)的RBAC(Role-Based Access Control - 基于角色的訪問控制)模型在權(quán)限分配管理方面無法滿足用電信息采集系統(tǒng)區(qū)域限制要求。結(jié)合用電信息采集系統(tǒng)限制性因素,提出一種改進(jìn)擴(kuò)展的RBAC模型。該模型摒棄了傳統(tǒng)RBAC模型中以角色、用戶二元組作為唯一標(biāo)識權(quán)限的方式,調(diào)整為以區(qū)域、角色、用戶三元組作為權(quán)限唯一標(biāo)識,解決了區(qū)域限制問題;引入審計機(jī)制,記錄用戶操作,便于后期審計工作。實際應(yīng)用表明,改進(jìn)后的模型可以滿足用電信息采集系統(tǒng)權(quán)限管理要求。
用電信息采集系統(tǒng);擴(kuò)展RBAC模型;區(qū)域限制
用電信息采集系統(tǒng)是國家智能電網(wǎng)的重要組成部分,系統(tǒng)安全很重要[1-2]。必須設(shè)計一套高效、安全的訪問控制模型,以保障系統(tǒng)使用安全。訪問控制作為國際化標(biāo)準(zhǔn)組織定義的五項標(biāo)準(zhǔn)安全服務(wù)之一,是實現(xiàn)信息系統(tǒng)安全的重要機(jī)制。傳統(tǒng)的訪問控制有自主訪問控制(DAC)[3]、強(qiáng)制訪問控制(MAC)[4]、基于角色的訪問控制[5]。自主訪問控制、強(qiáng)制訪問控制雖然解決了一些問題,但都存在一些缺陷。如DAC在安全性能方面顯得力不從心,MAC在安全性能方面較好,但控制過于死板和嚴(yán)苛,不適用于通用大型系統(tǒng)。基于角色的訪問控制依據(jù)角色決定訪問權(quán)限,依據(jù)角色的權(quán)限來拒絕越權(quán)訪問,相比MAC、DAC更加靈活和易于擴(kuò)展,是大多數(shù)系統(tǒng)安全策略首選。但在用戶數(shù)量多、用戶變化頻繁的OA系統(tǒng)中,管理員職責(zé)重大。有學(xué)者在傳統(tǒng)RBAC模型基礎(chǔ)上引入了用戶組概念[6]。在某些需要協(xié)同工作的系統(tǒng)中,用戶的權(quán)限是動態(tài)變化的,為了解決更加細(xì)粒度的權(quán)限控制,有學(xué)者提出了基于角色和規(guī)則的訪問控制[7]和基于屬性證書的訪問控制[8],使權(quán)限控制更加靈活。然而,因為存在地域管理限制,用電信息采集系統(tǒng)中角色和地域直接關(guān)聯(lián),例如隸屬站點(diǎn)Z1的用戶不能管理站點(diǎn)Z2的設(shè)備。傳統(tǒng)的 RBAC模型只有角色、用戶二元組,無法確定某一用戶的具體權(quán)限,并且沒有審計功能,當(dāng)系統(tǒng)出現(xiàn)安全問題時無法追蹤定位用戶以及操作。針對上述問題,本文在RBAC基礎(chǔ)上結(jié)合用電信息采集系統(tǒng)實際需求,設(shè)計了一種改進(jìn)的RBAC模型。該模型引入了區(qū)域概念,使得區(qū)域、角色、用戶這個三元組可以唯一確定某一用戶的具體權(quán)限,并引入審計功能,以滿足系統(tǒng)的安全需求。
RBAC模型是一種把權(quán)限(Permission)與角色(Role)關(guān)聯(lián)在一起的控制模型,用戶根據(jù)其隸屬的角色而成為該角色成員,從而獲得該角色所擁有的權(quán)限。RBAC模型分為4種類型,見表1。

表1 RBAC類型
RBAC96是一個完全融合以上4種RBAC思想的模型,如圖1所示。RBAC模型共有用戶、角色、權(quán)限、會話、約束5大組成部分,其中用戶、角色、權(quán)限是核心,角色是用戶和權(quán)限之間建立關(guān)系的連接者,用戶通過角色關(guān)聯(lián)權(quán)限,使用戶實體具有某種許可才能執(zhí)行某些操作。約束依附于RBAC系統(tǒng)核心之上,用來表達(dá)許可被執(zhí)行的前提條件;會話是一個動態(tài)概念,用戶在身份認(rèn)證之后與系統(tǒng)建立會話。

圖1 RBAC96模型
用電信息采集系統(tǒng)通過對配電網(wǎng)中變壓器和終端用戶的用電數(shù)據(jù)進(jìn)行采集和分析,實現(xiàn)用電信息的自動采集、計量異常監(jiān)測、電能質(zhì)量監(jiān)測、用電分析和管理、智能電力計量設(shè)備狀態(tài)評價、用電信息發(fā)布等功能,增加用電系統(tǒng)的信息化、集約化以及管理方式的精細(xì)化。系統(tǒng)采用J2EE體系,使用JAVA+JSP+Struts2+Spring+Hibernate+MySQL經(jīng)典組合方式實現(xiàn),由基礎(chǔ)信息、故障告警、采集數(shù)據(jù)、在線監(jiān)測和狀態(tài)評價5大部分組成,權(quán)限管理歸屬于基礎(chǔ)信息管理模塊之下,系統(tǒng)功能架構(gòu)如圖2所示。

圖2 擴(kuò)展后RBAC模型架構(gòu)
用電信息采集系統(tǒng)模塊較多、各模塊具體操作權(quán)限分類也較復(fù)雜,系統(tǒng)角色分為站點(diǎn)級、市級、省級,站點(diǎn)級只能管理其轄屬的站點(diǎn)內(nèi)資源。
3.1 原RBAC模型缺陷
盡管RBAC模型有眾多優(yōu)點(diǎn),但是應(yīng)用到具有分布式管理的信息系統(tǒng)時,可能會出現(xiàn)以下缺陷:
(1) 角色、用戶二元組無法唯一,因為存在區(qū)域限制,沒有把區(qū)域考慮到權(quán)限管理中。
(2) 未對系統(tǒng)用戶和非法用戶行為進(jìn)行記錄和審查,導(dǎo)致發(fā)生系統(tǒng)安全事故時,無法快速定位責(zé)任。
針對傳統(tǒng)RBAC模型在用電信息采集系統(tǒng)應(yīng)用中的缺陷,本文對傳統(tǒng)RBAC模型進(jìn)行了改進(jìn)優(yōu)化,提出了改進(jìn)的RBAC模型,如圖3所示。

圖3 改進(jìn)的RBAC模型
3.2 區(qū)域限制
用電信息采集系統(tǒng)是分布式部署和分布式管理,同一層級的角色操作權(quán)限是一樣的,但可操作的資源對象不同,而資源對象具有地域位置信息,所以角色能操作的資源需要根據(jù)各自角色所歸屬的區(qū)域決定。據(jù)此,引入?yún)^(qū)域限制概念,在角色管理上增加區(qū)域字段,用以標(biāo)識不同角色所歸屬的地域。
3.3 審計功能
審計是獨(dú)立于用戶的常規(guī)業(yè)務(wù)操作,對系統(tǒng)用戶行為起監(jiān)督和評價職能,記錄用戶的業(yè)務(wù)訪問和業(yè)務(wù)操作流程,對用戶操作進(jìn)行追蹤。如果出現(xiàn)越限和嘗試越限操作,將詳細(xì)記錄軌跡,以便進(jìn)行審查時提供詳細(xì)資料。在改進(jìn)的RBAC模型中,審計功能作為一個獨(dú)立模塊由專人使用,常規(guī)用戶包括管理員是無權(quán)查看和操作該模塊的,這樣就增加了記錄的安全性和可靠性。有了審計模塊,入侵者雖然也可以獲得管理員權(quán)限,但他的操作會全程記錄下來,留下入侵證據(jù),為后續(xù)事故處理和責(zé)任追尋提供參考。
用電信息采集系統(tǒng)用戶及權(quán)限信息均保存在系統(tǒng)數(shù)據(jù)庫的8張表中,分別是用戶表、角色表、區(qū)域表、用戶與角色關(guān)聯(lián)表、權(quán)限表、菜單模塊組表、日常日志審計表、非法日志審計表,各表詳細(xì)設(shè)計及關(guān)系如圖4所示。
改進(jìn)的RBAC模型系統(tǒng)分為用戶管理、角色管理、區(qū)域管理、權(quán)限管理、審計管理及訪問控制菜單,本文從用戶登錄及角色職責(zé)兩方面對該結(jié)構(gòu)進(jìn)行說明:
(1) 用戶登陸:系統(tǒng)根據(jù)用戶輸入的用戶名登錄口令進(jìn)行身份驗證,如果通過身份認(rèn)證,則允許用戶進(jìn)入系統(tǒng)訪問,并為該用戶建立會話,保存用戶相關(guān)的上下文信息。主模塊會根據(jù)用戶的角色和區(qū)域調(diào)用權(quán)限獲取接口,從系統(tǒng)數(shù)據(jù)庫中獲取用戶權(quán)限,根據(jù)權(quán)限的不同進(jìn)行組合,并將組合后的權(quán)限加載到系統(tǒng)中,用戶可在權(quán)限范圍內(nèi)操作。可操作的資源對象會根據(jù)當(dāng)前用戶所擁有的角色轄屬區(qū)域進(jìn)行資源過濾,用戶只能管理自己對應(yīng)轄屬的資源。

圖4 權(quán)限管理模塊數(shù)據(jù)庫表實體關(guān)系
(2) 角色職責(zé):系統(tǒng)中的角色根據(jù)類別分為省級角色、市級角色、站點(diǎn)級角色,其中省級角色有一個初始默認(rèn)記錄為superadmin,市級角色默認(rèn)記錄為admin,各角色對應(yīng)的詳細(xì)功能如表2所示,各角色對應(yīng)的用戶權(quán)限如表3所示。

表2 角色類別及權(quán)限
本文針對傳統(tǒng)RBAC面對分布式部署和管理的不足,提出了改進(jìn)的RBAC模型,著重優(yōu)化了傳統(tǒng)模型中角色、用戶二元組無法作為用戶權(quán)限唯一標(biāo)識的缺陷,使得區(qū)域、角色、用戶三元組為權(quán)限管理提供唯一標(biāo)識,滿足了RBAC模型在用電信息采集系統(tǒng)中的功能和安全需求。通過審計日志模塊,對使用者的操作進(jìn)行詳細(xì)跟蹤和記錄。改進(jìn)的RBAC模型在增加審計模塊后,增強(qiáng)了系統(tǒng)安全性。

表3 角色分類權(quán)限
[1] 郜盼盼.智能電網(wǎng)系統(tǒng)中面向用電信息安全防護(hù)的認(rèn)證加密系統(tǒng)研究[D].北京:北京郵電大學(xué),2013.
[2] 陳飛.智能電網(wǎng)信息安全交互模型及關(guān)鍵技術(shù)研究[D].北京:華北電力大學(xué),2014.
[3] 沈海波,洪帆.訪問控制模型研究綜述[J].計算機(jī)應(yīng)用研究,2005(6):9-11.
[4] 郭瑋,茅兵,謝立.強(qiáng)制訪問控制MAC的設(shè)計及實現(xiàn)[J].計算機(jī)應(yīng)用與軟件,2004(3):1-2.
[5] 劉強(qiáng),王磊,何琳.RBAC模型研究歷程中的系列問題分析[J].計算機(jī)科學(xué),2012(11):13-18.
[6] 安沛,王春玲.企業(yè)OA系統(tǒng)安全機(jī)制的研究與應(yīng)用[J].西安工程大學(xué)學(xué)報, 2015(1):78-83.
[7] 芮國榮,邢桂芬.基于角色和規(guī)則的訪問控制[J].計算機(jī)應(yīng)用,2005(4):864-866.
[8] 張可翔,謝冬青,冷健.一種基于屬性證書和角色的訪問控制模型[J].微電子學(xué)與計算機(jī),2006(11):143-145.
[9] 唐金鵬,李玲琳,楊路明.面向用戶屬性的RBAC模型[J].計算機(jī)工程與設(shè)計,2010,31(31):2184-2186.
[10] 徐博,郭淑琴,陸敏飛.一種基于擴(kuò)展RBAC的訪問控制模型在SSL VPN系統(tǒng)中的應(yīng)用[J].浙江工業(yè)大學(xué)學(xué)報,2011,39(2):177-180.
[11] 張靖康,石宇良,王海豹.?dāng)U展的RBAC權(quán)限管理模型的設(shè)計與研究[J].電子設(shè)計工程,2013,2(13):50-53.
[12] 張偉.基于角色的訊問控制模型的研究與應(yīng)用[D].青島:青島理工大學(xué), 2012.
[13] 張曉群.基于Eclipse插件技術(shù)的RBAC模型的研究與實現(xiàn)[D].西安:西安建筑科技大學(xué),2007.
[14] 林琳.基于RBAC擴(kuò)展模型的權(quán)限管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2009.
(責(zé)任編輯:杜能鋼)
李蚌蚌(1991-),男,安徽亳州人,西安工程大學(xué)計算機(jī)科學(xué)學(xué)院碩士研究生,研究方向為信息安全、網(wǎng)絡(luò)信息處理。
10.11907/rjdk.162631
TP319
A
1672-7800(2017)003-0115-03