基于RBAC改進(jìn)模型的電力系統(tǒng)數(shù)據(jù)安全設(shè)計(jì)
(1.中國水電顧問集團(tuán)北京勘測設(shè)計(jì)院 100024 2.華北電力大學(xué)電氣工程學(xué)院 102206) 摘 要 根據(jù)電力企業(yè)的特點(diǎn),系統(tǒng)分析信息共享與數(shù)據(jù)安全的重要性,在解決以往權(quán)限模型存在的缺陷和不足的同時(shí),提出基于RBAC(Role Based Access Control)改進(jìn)模型的權(quán)限管理系統(tǒng)設(shè)計(jì)方案。該方案提出了靜態(tài)責(zé)任區(qū)控制、動(dòng)態(tài)責(zé)任區(qū)控制和運(yùn)行參數(shù)的概念,對于保證模塊級(jí)數(shù)據(jù)安全性、記錄級(jí)數(shù)據(jù)安全性和變電站級(jí)數(shù)據(jù)辨識(shí)提供可行、可靠、高效的技術(shù)支撐,并從實(shí)用性角度詳細(xì)分析該方案在三層C/S結(jié)構(gòu)下的實(shí)現(xiàn)方法。 關(guān)鍵詞 數(shù)據(jù)安全 RBAC 責(zé)任區(qū) 1 引言 隨著經(jīng)濟(jì)的不斷發(fā)展和Internet技術(shù)的進(jìn)步,基于Internet的跨地區(qū)、全行業(yè)、電力內(nèi)部網(wǎng)開始逐步完善。網(wǎng)上應(yīng)用著各種業(yè)務(wù)、生產(chǎn)及辦公系統(tǒng),大量的重要數(shù)據(jù)開始通過網(wǎng)絡(luò)實(shí)現(xiàn)共享與整合。數(shù)據(jù)是整個(gè)信息系統(tǒng)的支柱,也是電力企業(yè)最寶貴的資源與財(cái)富,其安全性具有極為重要的意義。 2 需求分析 基于角色的訪問控制是近年來安全訪問控制領(lǐng)域的研究熱點(diǎn)。以往的權(quán)限模型中私有角色概念具有局限性,影響了其在大型角色-權(quán)限關(guān)系中的應(yīng)用。RBAC最顯著的特點(diǎn)之一就是由于用戶相對變化較多,角色相對變化較少的實(shí)際情況,使角色關(guān)系具有相對穩(wěn)定性和易維護(hù)性。然而私有角色的處理手法卻損害了該特點(diǎn)的體現(xiàn),在以下幾個(gè)方面表現(xiàn)得尤為明顯: (1)私有權(quán)限問題 有些權(quán)限僅僅屬于某角色自身,而不能被其他角色所執(zhí)行。按照以往RBAC模型,處理私有權(quán)限問題的方法是為當(dāng)前角色增設(shè)一個(gè)私有角色,這幾乎使角色數(shù)量增加一倍。 (2) 部門權(quán)限問題 部門內(nèi)部權(quán)限是不應(yīng)被上級(jí)部門所執(zhí)行的。如果用以往RBAC私有角色的方法解決該問題將使角色層次關(guān)系變得異常復(fù)雜。 (3)權(quán)限屬性變化問題權(quán)限屬性不是一成不變的,用RBAC私有角色的方法,只有對角色層次關(guān)系進(jìn)行結(jié)構(gòu)上的調(diào)整才能完成該類變化,這就使問題變得更復(fù)雜。 作者針對RBAC模型的不足,放棄私有角色思路,提出了責(zé)任區(qū)控制和運(yùn)行參數(shù)控制的概念,利用責(zé)任區(qū)控制和運(yùn)行參數(shù)的設(shè)置來滿足某用戶的私有權(quán)限問題,以達(dá)到為此用戶設(shè)置唯有他可執(zhí)行的權(quán)限,而不必再為他設(shè)置私有角色。 鑒于電力企業(yè)多學(xué)科、多任務(wù)、多角色、多環(huán)節(jié)的復(fù)雜管理模式,對一些重要的數(shù)據(jù)和涉及生產(chǎn)事故、設(shè)備故障等需要定位責(zé)任和找出問題原因的信息要做到落實(shí)到具體人、具體時(shí)間和具體的操作步驟,以保證整個(gè)工作流程可觀、可控、在控。具體要求如下:①管理方式靈活有效。②權(quán)限管理性質(zhì)細(xì)分。③數(shù)據(jù)范圍明確。④數(shù)據(jù)責(zé)任認(rèn)定清晰。⑤嚴(yán)謹(jǐn)完善的權(quán)限轉(zhuǎn)移體制。 3 模型分析 假設(shè)用U表示用戶集合,R表示角色集合,P表示權(quán)限集合,u表示某個(gè)用戶,r表示某個(gè)角色,p表示某個(gè)權(quán)限。角色的權(quán)限分為三類:私有權(quán)限、公有權(quán)限和特征權(quán)限。 ![]() 角色繼承方式一般有四種:一般繼承、私有化繼承、公有化繼承和無特征繼承。 ![]() 4 解決方案 4.1 采用三層C/S結(jié)構(gòu)實(shí)現(xiàn) 三層C/S結(jié)構(gòu)將表示層、應(yīng)用邏輯層、數(shù)據(jù)服務(wù)層明確地進(jìn)行分割,使其在邏輯上各自獨(dú)立,并且單獨(dú)加以實(shí)現(xiàn)。與兩層C/S結(jié)構(gòu)相比,其應(yīng)用邏輯層被明確地劃分出來。 (1)客戶端負(fù)責(zé)與用戶交互,并把用戶請求通過調(diào)用中間層組件傳遞給應(yīng)用邏輯層。 (2)應(yīng)用服務(wù)器執(zhí)行具體的事務(wù)邏輯,并負(fù)責(zé)數(shù)據(jù)訪問驗(yàn)證、數(shù)據(jù)范圍驗(yàn)證以及維護(hù)數(shù)據(jù)完整性和一致性。 (3)數(shù)據(jù)庫服務(wù)器負(fù)責(zé)數(shù)據(jù)的存取和管理。 4.2 核心模型設(shè)計(jì) 本系統(tǒng)采用對用戶功能授權(quán)+靜態(tài)責(zé)任區(qū)控制+動(dòng)態(tài)責(zé)任區(qū)控制的實(shí)現(xiàn)方案??杀WC每一用戶的數(shù)據(jù)安全。 PRMS(Permission):許可。代表某種不可再細(xì)化的權(quán)限,表示對客體資源的操作許可。 Source、Operate、Domain(Permission Element):許可元素。定義許可的內(nèi)容和性質(zhì)等。Source是指角色可用資源;Operate完成資源類別和訪問策略之間的綁定;Domain控制角色可執(zhí)行的資源(數(shù)據(jù))范圍。 Role:角色。權(quán)限分配的單位與載體,代表某類業(yè)務(wù)的范疇。通過繼承關(guān)系支持分級(jí)權(quán)限實(shí)現(xiàn)。 PA(Permission Assignment):許可分配。即將若干許可分配給某個(gè)角色的過程。 User:用戶。是權(quán)限的擁有者或主體。用戶和權(quán)限分離,通過授權(quán)管理進(jìn)行綁定。 UA(User Assignment):用戶授權(quán)。即將若干個(gè)角色分配給某個(gè)用戶的過程。 Session:會(huì)話。對應(yīng)于一個(gè)用戶和一組激活的角色,表征用戶進(jìn)行角色激活的過程。一個(gè)用戶可以進(jìn)行幾次會(huì)話,在每次會(huì)話中激活不同的角色,這樣用戶也將具有不同的訪問權(quán)限。用戶必須通過會(huì)話才能激活角色。 SCDE(Static Control of Duty Extent):靜態(tài)責(zé)任區(qū)控制。SCDE是指將約束定義在用戶指派階段,與會(huì)話及角色激活無關(guān)。比如在電力生產(chǎn)管理信息系統(tǒng)中,用戶和角色對于功能模塊的可執(zhí)行權(quán)限和可管理權(quán)限屬于靜態(tài)責(zé)任區(qū)控制的范圍,即用戶對沒有賦予他權(quán)限的功能模塊相關(guān)數(shù)據(jù)的安全性不負(fù)有責(zé)任。 DCDE(Dynamic Control of Duty Extent):動(dòng)態(tài)責(zé)任區(qū)控制。DCDE是指將約束定義在角色激活階段,作用域在會(huì)話內(nèi)部。在本系統(tǒng)中的所有功能模塊和數(shù)據(jù)記錄都應(yīng)用了DCDE的概念,即某特定登錄用戶對賦予他權(quán)限的功能模塊中的所有數(shù)據(jù)記錄都要負(fù)起責(zé)任,包塊數(shù)據(jù)的編輯、審核、上報(bào)和回退等功能的實(shí)施。 PH(PRMS Hierarchy):許可組合。即具有某類相同性質(zhì)的PRMS的組合。該組合一般代表一定的功能。組成PH時(shí)必須實(shí)現(xiàn)SCDE。 RH(Role Hierarchy):角色組合。一般代表某幾項(xiàng)業(yè)務(wù)的權(quán)限。 UH(User Hierarchy):用戶組合。一般和應(yīng)用程序用戶的崗位有關(guān)。 UAgt(User Agent):用戶代理。即在一定的策略下,用戶A授權(quán)給用戶B,讓B代替A行使A的權(quán)限,該過程必須實(shí)現(xiàn)DCDE。 RP(Run Parameter):運(yùn)行參數(shù)。針對電力系統(tǒng)的特點(diǎn),在實(shí)現(xiàn)SCDE保證模塊級(jí)數(shù)據(jù)安全和實(shí)現(xiàn)DCDE保證記錄級(jí)數(shù)據(jù)安全性的同時(shí),引入運(yùn)行參數(shù)的概念來控制被授權(quán)用戶所能控制的具體變電站的相關(guān)數(shù)據(jù)信息。 RPA(Run Parameter Assignment):運(yùn)行參數(shù)分配。通過授權(quán)過程可以為具體用戶提供個(gè)性化運(yùn)行參數(shù)配置服務(wù),以進(jìn)一步控制用戶所訪問的數(shù)據(jù)范圍。 4.3 資源控制機(jī)制 資源(被訪問的對象)有一定歸屬問題。比如A變電站值班員a添加的設(shè)備臺(tái)賬信息只可由a修改,A站的值班長aa審核之后,A站的人員以及上級(jí)領(lǐng)導(dǎo)可以查看,但B變電站的人員并不具備查看的權(quán)限。 在資源控制的實(shí)現(xiàn)過程中,SCDE、DCDE和運(yùn)行參數(shù)的聯(lián)合應(yīng)用,提高了具體變電站相關(guān)信息的安全性,避免了具有相同性質(zhì)、相同屬性、甚至是完全相同的數(shù)據(jù)在變電站之間產(chǎn)生混淆。為管理信息系統(tǒng)在電力生產(chǎn)中的應(yīng)用提供了良好的技術(shù)支撐。 4.4 數(shù)據(jù)訪問機(jī)制 權(quán)限管理系統(tǒng)提供集中管理權(quán)限的服務(wù),負(fù)責(zé)用戶、角色、權(quán)限信息的鑒別,以及運(yùn)行參數(shù)的判定。 系統(tǒng)根據(jù)用戶,角色、訪問策略、運(yùn)行參數(shù)和控制對象之間的關(guān)聯(lián)關(guān)系,同時(shí)考慮權(quán)限的正負(fù)向授予,計(jì)算出用戶的最小權(quán)限。并返回權(quán)限關(guān)系表,即二元組{Object,Operator}。 5 實(shí)現(xiàn)方法 5.1 角色功能 (1)部門隔離級(jí)別和創(chuàng)建者ID。記錄角色創(chuàng)建人的用戶ID和設(shè)置的部門隔離級(jí)別。 ![]() (3)功能模塊的可管理權(quán)限和可執(zhí)行權(quán)限完全分離。電力企業(yè)中很多角色不僅是生產(chǎn)部門的骨干而且具有管理員的權(quán)限,如不分開,將難以實(shí)現(xiàn)對系統(tǒng)的嚴(yán)格管理。 (4)具有管理類角色的用戶可以創(chuàng)建用戶和角色,但僅限于添加當(dāng)前用戶所在部門及下一級(jí)部門的人員。 (5)設(shè)置模塊運(yùn)行參數(shù)(僅管理類角色有此權(quán)限)以限定可訪問的功能或數(shù)據(jù)范圍。 5.2 用戶功能 (1)多重繼承角色屬性,所有屬性取合集。 (2)具有被特殊分配的權(quán)限和參數(shù),與繼承自角色的權(quán)限和參數(shù)合并使用。 5.3 模塊功能 除完成本身的功能外,還要根據(jù)當(dāng)前用戶和用戶所屬角色的各種運(yùn)行參數(shù),進(jìn)行運(yùn)行狀態(tài)自動(dòng)設(shè)置和訪問數(shù)據(jù)自動(dòng)過濾。 5.4 運(yùn)行參數(shù) (1)默認(rèn)值。運(yùn)行參數(shù)全部采用默認(rèn)值取值規(guī)則,一般默認(rèn)為上級(jí)角色同類參數(shù)值。 (2)設(shè)定值。在角色可管理功能配置中設(shè)定其運(yùn)行參數(shù)值。比如可用單位部門、可用變電站等。 5.5 相關(guān)庫表 為實(shí)現(xiàn)上述功能,需建立以下數(shù)據(jù)庫表: (1)單位部門表Org _ Dept (2)單位級(jí)別編碼表Org _ Level (3)部門職工表Org _ Staff (4)用戶表User (5)角色表Role (6)用戶角色分配表User _ Role (7)功能表Function (8)角色(用戶)可管理功能表Mge _ Func (9)角色(用戶)可執(zhí)行功能表Exe _ Func (10)功能運(yùn)行參數(shù)表Func _ Param (11)運(yùn)行參數(shù)分配表Para _ Assign (12)功能運(yùn)行參數(shù)值表Param _ Value 注:針對同一功能、同一運(yùn)行參數(shù),應(yīng)用者為用戶則具備優(yōu)先權(quán),即為用戶特殊設(shè)置的運(yùn)行參數(shù)覆蓋為角色設(shè)置的運(yùn)行參數(shù)。 6 結(jié)束語 本文提出的這種支持責(zé)任區(qū)控制、數(shù)據(jù)訪問可精確到記錄級(jí)的權(quán)限管理系統(tǒng)設(shè)計(jì)思路及其具體實(shí)現(xiàn)方案已經(jīng)應(yīng)用于某省電力公司變電設(shè)備標(biāo)準(zhǔn)庫的建設(shè)及其以此為依托的變電運(yùn)行管理系統(tǒng)和智能操作票系統(tǒng),從現(xiàn)場的運(yùn)行情況來看,該方案具有擴(kuò)展性好、安全性高,支持崗位、權(quán)限多變需求等優(yōu)點(diǎn),非常適用于電力企業(yè)的生產(chǎn)管理實(shí)際。 |