国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于角色和顆粒操作的自定義通用權(quán)限管理模型研究

2017-01-21 14:41:17趙君熊燕妮
軟件導(dǎo)刊 2016年12期

趙君+熊燕妮

摘 要:權(quán)限管理系統(tǒng)是軟件系統(tǒng)的核心部分,涉及到數(shù)據(jù)的安全和保密性。針對(duì)傳統(tǒng)基于角色的訪問(wèn)控制RBAC(Role-Based Access Control)模型中角色管理不靈活、與其它系統(tǒng)耦合性高且通用性低的缺點(diǎn),提出一種基于角色和顆粒操作RPO(Role-Particle-Operation)的自定義通用權(quán)限管理模型。該模型耦合性低,角色和顆粒操作完全可以由用戶自定義,支持無(wú)限級(jí)權(quán)限,并獨(dú)立于其它軟件系統(tǒng),具有高通用性,可以為幾乎所有軟件系統(tǒng)提供權(quán)限管理接口。

關(guān)鍵詞:權(quán)限管理;RPO;無(wú)限級(jí)權(quán)限;高通用性

DOIDOI:10.11907/rjdk.162122

中圖分類號(hào):TP301

文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-7800(2016)012-0014-02

0 引言

隨著軟件系統(tǒng)功能越來(lái)越多、規(guī)模越來(lái)越大以及模塊化要求越來(lái)越高,管理信息系統(tǒng)對(duì)各類信息資源的訪問(wèn)與控制以及對(duì)各類用戶群體的管理也越來(lái)越復(fù)雜。因此最初基于用戶的權(quán)限管理被基于角色的訪問(wèn)控制RBAC(Role-Based Access Control)模型所替代,用角色代替用戶是此模型的一大創(chuàng)新,減少了管理員在大量用戶系統(tǒng)中要為每個(gè)用戶分配權(quán)限的繁冗操作[1],但是此模型的缺陷是對(duì)角色權(quán)限的劃分比較模糊和僵化,粒度較粗。最為重要的是,當(dāng)系統(tǒng)升級(jí)或者權(quán)限發(fā)生改變時(shí),仍然需要修改系統(tǒng)的源代碼,這與“高內(nèi)聚低耦合”的軟件設(shè)計(jì)理念相矛盾,會(huì)給軟件升級(jí)和軟件維護(hù)帶來(lái)巨大的額外開銷。因此提出一個(gè)通用的、可以為幾乎所有軟件系統(tǒng)提供權(quán)限管理接口的模型尤為必要[2]。

1 通用權(quán)限管理模型總體思路

1.1 傳統(tǒng)模型的缺陷

權(quán)限管理的實(shí)質(zhì)是系統(tǒng)根據(jù)用戶U的權(quán)限來(lái)限定其能訪問(wèn)的資源R和進(jìn)行的操作O,這里的U、R和O均為集合,其中U={u1,u2…ui},R={r1,r2…rj},O={o1,o2…ok},權(quán)限集合P可以定義為P=O*R,P中有j*k個(gè)元素,那么系統(tǒng)中可能出現(xiàn)的權(quán)限子集的最大數(shù)為2*j*k,包括空集(無(wú)任何權(quán)限)和P本身(具有所有權(quán)限)[3]。如果U集合中有i個(gè)用戶,那么在基于用戶的訪問(wèn)控制模型中,系統(tǒng)開發(fā)者要為i個(gè)用戶設(shè)計(jì)和分配權(quán)限的最大工作量為W=2*i*j*k,這是一個(gè)艱巨的任務(wù)。最關(guān)鍵的是,在實(shí)際的用戶訪問(wèn)控制中,i,j,k經(jīng)常發(fā)生變化,系統(tǒng)開發(fā)者需要修改代碼,給后期維護(hù)帶來(lái)不便[4]。

RBAC是基于用戶權(quán)限控制模型的升級(jí)版,在RBAC中,多個(gè)具有相同權(quán)限的用戶被歸并為同一個(gè)角色,這樣由用戶集合U延伸出角色集合R′,R′={r′1, r′2…r′m}[5],m≤i,改進(jìn)之后的工作量雖然有所減輕,但是因?yàn)闄?quán)限的定義固化在程序里,所以仍不能從根本上解決問(wèn)題。

1.2 RPO模型的特點(diǎn)

如果要從根本上解決問(wèn)題,則需要將權(quán)限設(shè)置交給客戶,將權(quán)限管理模塊從軟件系統(tǒng)中剝離出來(lái)[6]。但是一個(gè)成熟的系統(tǒng)在使用上不能包含太多技術(shù)細(xì)節(jié),所以這種設(shè)計(jì)的難點(diǎn)在于如何將以前只能由代碼完成的復(fù)雜功能變成可以由鼠標(biāo)點(diǎn)擊完成的圖形界面操作[7]。RPO模型即為完成這種轉(zhuǎn)換設(shè)計(jì)的新型模型。

在RPO中,要想實(shí)現(xiàn)自定義權(quán)限的通用管理,必須首先將角色、資源和操作完全獨(dú)立,并且充分顆?;痆8],然后設(shè)定R′對(duì)O與R笛卡爾積的訪問(wèn)控制即可實(shí)現(xiàn)RPO模型,如圖1所示。

RPO模型中,R′、O和R均為用戶自定義,不由系統(tǒng)開發(fā)者設(shè)計(jì),這樣才符合“自定義”的要求;但要做到“通用”,必須使O和R充分地顆?;床豢稍偌?xì)分[9]。

2 RPO設(shè)計(jì)

2.1 角色集合R′的定義

3個(gè)集合中,R′的定義最簡(jiǎn)單,因?yàn)榭蛻魧?duì)業(yè)務(wù)邏輯中的角色最清晰[10]。角色的定義如表1所示。

2.2 操作集合O的定義

操作即為用戶在系統(tǒng)中可以執(zhí)行的動(dòng)作,在RPO中,操作必須是不可再分[11]或者是在本系統(tǒng)中不可再分的顆粒,比如“物理教師編輯學(xué)生成績(jī)”中的動(dòng)詞“編輯”則不滿足要求,因?yàn)椤熬庉嫛边€可以細(xì)分為增加、修改和刪除。所以O(shè)在定義上較R′要復(fù)雜一些[12]。操作集合O的定義如表2所示。

2.3 資源集合R的定義

相對(duì)于R′和O,R的定義最為復(fù)雜,因?yàn)镽′和O中的元素彼此之間沒(méi)有關(guān)系,且都是顆粒性質(zhì)不可細(xì)分的,用表1和表2中的二維表即可定義[13]。而R中的資源可能有多層包含關(guān)系,例如年級(jí)包含班級(jí),班級(jí)包含學(xué)生,所以用二維表定義可讀性差、維護(hù)困難[14]。本模型中設(shè)計(jì)的定義方式是目錄樹。在目錄樹中,所有資源,無(wú)論是集合還是元素都被定義為目錄,這里充分應(yīng)用了軟件中抽象的思想[15]。目錄的可多層包含性實(shí)現(xiàn)了權(quán)限的無(wú)限極特性,為本模型提供了良好的實(shí)用性和靈活性[16]。

3 RPO通用權(quán)限管理模型調(diào)用

本模型總共包括5個(gè)功能模塊:用戶管理、角色管理、目錄管理、顆粒操作管理[17]和角色權(quán)限管理。模型功能結(jié)構(gòu)如圖2所示。

因?yàn)樗泄δ芫鶠樽远x,且具有低耦合性,所以本模型可以獨(dú)立于其它軟件系統(tǒng)運(yùn)行,并提供權(quán)限管理接口供其它系統(tǒng)調(diào)用。其它系統(tǒng)將加密后的信息通過(guò)網(wǎng)絡(luò)發(fā)給本模型[18],本模型處理后將結(jié)果加密后返回給其它系統(tǒng),調(diào)用流程如圖3所示。

本模型支持多系統(tǒng)調(diào)用,每個(gè)系統(tǒng)的角色、目錄和操作均獨(dú)立,管理員可以在自己的業(yè)務(wù)范圍內(nèi)管理角色、目錄和操作,系統(tǒng)之間互不干擾,真正實(shí)現(xiàn)了調(diào)用的通用性。

4 結(jié)語(yǔ)

傳統(tǒng)的權(quán)限管理模型將用戶、資源和操作集成或者捆綁在代碼中,雖然能夠解決權(quán)限分配和系統(tǒng)安全的問(wèn)題,但是在可維護(hù)和可擴(kuò)展方面存在巨大弊端,改進(jìn)后的RBAC模型將角色取代用戶,降低了工作量,可是仍不能從根本上解決系統(tǒng)維護(hù)和擴(kuò)展問(wèn)題。本文提出了RPO自定義通用權(quán)限管理模型,該模型將角色、資源和操作從代碼中獨(dú)立出來(lái),由之前的代碼定義變?yōu)橛脩糇远x,極大地提高了可維護(hù)性和可擴(kuò)展性。并且該模型獨(dú)立于軟件系統(tǒng),可以被其它系統(tǒng)方便地調(diào)用,真正實(shí)現(xiàn)了通用性。

參考文獻(xiàn):

[1] 李昕昕,嚴(yán)張凌,王賽蘭.改進(jìn)的基于角色的通用權(quán)限管理模型及其實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展, 2012,22(3):240-244.

[2] 鮑可進(jìn),彭刨.一種擴(kuò)展的Android應(yīng)用權(quán)限管理模型[J].計(jì)算機(jī)工程, 2012,38(18):57-64.

[3] 李東,施懿聞,郝艷妮,毛基業(yè).科學(xué)基金管理系統(tǒng)的用戶權(quán)限管理模式研究[J].計(jì)算機(jī)技術(shù)與發(fā)展, 2012,22(2):159-164.

[4] 王少輝,王超,孫國(guó)梓.DroidDefence:細(xì)粒度的Android 應(yīng)用權(quán)限管理系統(tǒng)[J].四川大學(xué)學(xué)報(bào):工程科學(xué)版, 2014,46(6):14-18.

[5] 王非,李凝,侯平路,等.基于角色權(quán)限管理的B/S與C/S模式相結(jié)合的教務(wù)管理系統(tǒng)安全體系的研究與設(shè)計(jì)[J].遼寧師范大學(xué)學(xué)報(bào):自然科學(xué)版, 2012,35(4):488-492.

[6] 王居柱,侯彤璞,孫明柱.基于Struts-Hibernate架構(gòu)的權(quán)限管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)與數(shù)字工程, 2011,39(4):101-105.

[7] 張偉.基于邏輯程序的RBAC模型研究[D].北京:北京大學(xué),2013.

[8] 劉強(qiáng),王磊,何琳.RBAC模型研究歷程中的系列問(wèn)題分析[J].計(jì)算機(jī)科學(xué), 2012,39(11):13-18.

[9] 曾錫山,陳振洲.基于對(duì)象屬性約束權(quán)限控制研究與實(shí)現(xiàn)[J].華南師范大學(xué)學(xué)報(bào):自然科學(xué)版, 2016,48(2):111-115.

[10] 羅求,丁滟,陳松政.一種基于管理員分權(quán)的用戶特權(quán)提升機(jī)制[J].計(jì)算機(jī)工程, 2016,42(4):27-36.

[11] 李天鳴,何月順.基于ExtJS技術(shù)與SSH框架的權(quán)限管理研究[J].計(jì)算機(jī)應(yīng)用與軟件, 2011,28(5):165-205.

[12] 范明虎,樊紅,伍孝金.ASP.net中基于RBAC的通用權(quán)限管理系統(tǒng)[J].計(jì)算機(jī)工程, 2010,36(1):143-145.

[13] 吳波,王晶.基于基本RBAC模型的權(quán)限管理框架的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用, 2011,20(4):50-54.

[14] 高麗麗,王瓊.基于角色的訪問(wèn)控制在OA系統(tǒng)中的應(yīng)用[J].軟件導(dǎo)刊,2016,15(3):157-158.

[15] 趙明斌,姚志強(qiáng).基于RBAC的云計(jì)算訪問(wèn)控制模型[J].計(jì)算機(jī)應(yīng)用, 2012,32(S2):267-270.

[16] 張磊,張宏莉,韓道軍等.基于概念格的RBAC模型中角色最小化問(wèn)題的理論與算法[J].電子學(xué)報(bào), 2014,42(12):2371-2378.

[17] 蔣輝,李敬輝,魏巧玲.基于RBAC模型的通用權(quán)限管理系統(tǒng)分析與設(shè)計(jì)[J].軟件導(dǎo)刊,2016,15(3):120-123.

[18] CHE TIANWEI,MA JIANFENG,LI NA,et al.Security analysis of access control model in hybrid cloud based on security entropy[J].High technology letters,2015,21(2):200-204.

(責(zé)任編輯:陳福時(shí))

缙云县| 绥中县| 湖北省| 环江| 余干县| 清新县| 灌南县| 马山县| 屏南县| 射洪县| 余庆县| 凭祥市| 滦平县| 威海市| 日喀则市| 青田县| 海盐县| 大方县| 达尔| 万荣县| 塔河县| 阜平县| 台南市| 南城县| 吉安县| 监利县| 安吉县| 永胜县| 济源市| 浦东新区| 灵寿县| 资中县| 吐鲁番市| 江孜县| 济宁市| 台中市| 塘沽区| 海伦市| 德兴市| 黄浦区| 东光县|