版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 基于RBAC模型的通用權(quán)限管理系統(tǒng)的分析與設(shè)計</p><p> 【摘要】本文依據(jù)RBAC權(quán)限管理模型理論,主要介紹了權(quán)限管理系統(tǒng)的研究與設(shè)計?;诮巧臋?quán)限控制模型(RBAC)是目前主流的權(quán)限控制模型,它比傳統(tǒng)的自主訪問控制(DAC)和強(qiáng)制訪問控制(MAC)更優(yōu)越,同時也提供了更高的靈活性和擴(kuò)展性。本文通過對現(xiàn)有的權(quán)限管理模型進(jìn)行分析與改進(jìn),從內(nèi)部實(shí)現(xiàn)與外部接口調(diào)用兩方面來分析權(quán)限和設(shè)計
2、權(quán)限管理系統(tǒng),并從授權(quán)方式的易用性與高效性考慮,對權(quán)限管理系統(tǒng)予以實(shí)現(xiàn)。 </p><p> 【關(guān)鍵詞】權(quán)限控制;RBAC;權(quán)限管理系統(tǒng) </p><p><b> 1 引言 </b></p><p> 軟件開發(fā)企業(yè)競爭激烈,如何降低成本,特別是勞動力成本,避免重復(fù)工作量都在各企業(yè)發(fā)展策略考慮的內(nèi)容之內(nèi)。要避免重復(fù)勞動力,相同模塊重復(fù)開發(fā)
3、,構(gòu)建一個能在不同業(yè)務(wù)系統(tǒng)中復(fù)用的權(quán)限管理系統(tǒng)可以大大減少軟件重復(fù)開發(fā),降低軟件成本,提高軟件產(chǎn)品競爭力,是企業(yè)資源中的重要一部分。 </p><p> 長久以來,做為企業(yè)級框架最為重要的環(huán)節(jié)之一,權(quán)限的設(shè)計一直是架構(gòu)師和開發(fā)設(shè)計人員最頭疼的問題,如今,這已經(jīng)遠(yuǎn)遠(yuǎn)大于對于ORM數(shù)據(jù)訪問持久層的重視程度。權(quán)限框架的重要性主要體現(xiàn)在: </p><p> ?。?)它是其他業(yè)務(wù)模塊的基礎(chǔ)。任何
4、有多成員參與的應(yīng)用系統(tǒng),必須涉及到成員之間的資源分享問題,這就需要一個靈活的權(quán)限系統(tǒng)為其做好資源授權(quán)。好的授權(quán)模型能大大減化業(yè)務(wù)設(shè)計的復(fù)雜程序。企業(yè)應(yīng)用中的工作流管理,報表管理都是建立在它的基礎(chǔ)上的。 </p><p> ?。?)它是系統(tǒng)性能的關(guān)鍵。應(yīng)用系統(tǒng)中最耗資源的不是業(yè)務(wù)邏輯本身,而是業(yè)務(wù)邏輯中所涉及的各種資源的調(diào)配機(jī)制,有一個好的權(quán)限系統(tǒng)來合理分配資源的使用,能大大減輕業(yè)務(wù)邏輯運(yùn)行的系統(tǒng)消耗。 </
5、p><p> ?。?)它的復(fù)用性,可配置性,減少在各系統(tǒng)中重復(fù)開發(fā),能大大減輕系統(tǒng)開發(fā)成本。 </p><p> 所以,權(quán)限管理系統(tǒng)是企業(yè)開發(fā)框架的內(nèi)核,也是各種個性化的應(yīng)用系統(tǒng)開發(fā)的奠基石。要想開發(fā)一個高效穩(wěn)定的應(yīng)用系統(tǒng),必須有一個高效穩(wěn)定的權(quán)限管理系統(tǒng)作為前提。 </p><p> 2 RBAC模型分析 </p><p> 權(quán)限控制模型
6、,又稱訪問控制模型(Access Control Model)或者說授權(quán)模型(Authorization Model),簡單來說就是關(guān)注“who can do what” 。目前,應(yīng)用系統(tǒng)中主流發(fā)展的權(quán)限模型是基于角色控制的訪問控制模型,即RBAC模型。 </p><p> 角色訪問控制(RBAC)引入了Role的概念,其目的是為了隔離User(即動作主體,Subject)與Privilege(權(quán)限,表示對Re
7、source的一個操作,即Operation+Resource)。Role作為一個用戶(User)與權(quán)限(Privilege)的代理層,解耦了權(quán)限和用戶的關(guān)系,所有的授權(quán)應(yīng)該給予Role而不是直接給User或Group。Privilege是權(quán)限顆粒,由Operation和Resource組成,表示對Resource的一個Operation。 </p><p> 根據(jù)RBAC模型的權(quán)限設(shè)計思想,建立權(quán)限管理系統(tǒng)的
8、核心對象模型。對象模型中包含的基本元素主要有:用戶(Users)、用戶組(Group)、角色(Role)、目標(biāo)(Objects)、訪問模式(Access Mode)、操作(Operator)。主要的關(guān)系有:分配角色權(quán)限PA(Permission Assignment)、分配用戶角色UA(Users Assignmen描述如下: </p><p> ?。?)控制對象:是系統(tǒng)所要保護(hù)的資源(Resource),可以被
9、訪問的對象。資源的定義需要注意兩個問題:①資源具有層次關(guān)系和包含關(guān)系。例如,網(wǎng)頁是資源,網(wǎng)頁上的按鈕、文本框等對象也是資源,是網(wǎng)頁節(jié)點(diǎn)的子節(jié)點(diǎn),如可以訪問按鈕,則必須能夠訪問頁面。 ②這里提及的資源概念是指資源的類別(Resource Class),不是某個特定資源的實(shí)例(Resource Instance)。 </p><p> ?。?)權(quán)限:對受保護(hù)的資源操作的訪問許可(Access Permission),
10、是綁定在特定的資源實(shí)例上的。對應(yīng)地,訪問策略(Access Strategy)和資源類別相關(guān),不同的資源類別可能采用不同的訪問模式(Access Mode)。例如,頁面具有能打開、不能打開的訪問模式,按鈕具有可用、不可用的訪問模式,文本編輯框具有可編輯、不可編輯的訪問模式。同一資源的訪問策略可能存在排斥和包含關(guān)系。例如,某個數(shù)據(jù)集的可修改訪問模式就包含了可查詢訪問模式。 </p><p> ?。?)用戶:是權(quán)限的
11、擁有者或主體。用戶和權(quán)限實(shí)現(xiàn)分離,通過授權(quán)管理進(jìn)行綁定。 </p><p> (4)用戶組:一組用戶的集合。在業(yè)務(wù)邏輯的判斷中,可以實(shí)現(xiàn)基于個人身份或組的身份進(jìn)行判斷。系統(tǒng)弱化了用戶組的概念,主要實(shí)現(xiàn)用戶(個人的身份)的方式。 </p><p> ?。?)角色:權(quán)限分配的單位與載體。角色通過繼承關(guān)系支持分級的權(quán)限實(shí)現(xiàn)。例如,科長角色同時具有科長角色、科內(nèi)不同業(yè)務(wù)人員角色。 </p&
12、gt;<p> ?。?)操作:完成資源的類別和訪問策略之間的綁定。 </p><p> ?。?)角色權(quán)限PA:實(shí)現(xiàn)操作和角色之間的關(guān)聯(lián)關(guān)系映射。 </p><p> ?。?)用戶角色UA:實(shí)現(xiàn)用戶和角色之間的關(guān)聯(lián)關(guān)系映射。 </p><p> 3 通用權(quán)限管理系統(tǒng)的設(shè)計 </p><p><b> 3.1需求分析
13、</b></p><p> 權(quán)限管理系統(tǒng)的功能主要是基于RBAC模型,建立對用戶、角色、權(quán)限的維護(hù)管理,主要包括組織管理、角色管理、權(quán)限管理、對外接口、日志管理五大功能模塊,下面將對各功能模塊的用例進(jìn)行分析: </p><p> 組織管理功能將權(quán)限管理系統(tǒng)中的用戶之間關(guān)系,以組織機(jī)構(gòu)形式予以體現(xiàn),主要包括機(jī)構(gòu)、部門、崗位、機(jī)構(gòu)崗位、人員、用戶、工作組七大實(shí)體對象,組織機(jī)構(gòu)管
14、理就是對這七大實(shí)體對象進(jìn)行關(guān)系的維護(hù)。 </p><p> 角色管理功能模塊主要進(jìn)行角色的維護(hù),角色與組織的關(guān)系維護(hù)以及角色授權(quán),其主要系統(tǒng)用例分析如下:①維護(hù)角色,維護(hù)角色的增加、刪除、修改、角色權(quán)限查詢等。②角色授權(quán),把角色授予給組織。③微調(diào)人員角色,調(diào)整人員擁有的角色信息。④角色權(quán)限分配,對角色進(jìn)行權(quán)限分配管理。 權(quán)限管理功能模塊主要就操作權(quán)限和數(shù)據(jù)權(quán)限兩部分進(jìn)行維護(hù)與管理,具體系統(tǒng)用例分析如下:1
15、.維護(hù)功能的訪問權(quán)限,維將對功能的操作權(quán)限進(jìn)行授權(quán)。2.設(shè)置對數(shù)據(jù)集的訪問權(quán)限,控制對數(shù)據(jù)的查詢。 </p><p> 另外,對外接口主要包括功能接口和數(shù)據(jù)接口兩大類,功能接口主要用于外部系統(tǒng)對權(quán)限的查詢調(diào)用,數(shù)據(jù)接口主要用于外部系統(tǒng)對組織、人員等數(shù)據(jù)集的查詢導(dǎo)出。而日志管理主要用于記錄系統(tǒng)操作記錄與異常記錄。 </p><p><b> 3.2分層架構(gòu) </b>
16、</p><p> 系統(tǒng)采用普通的分層架構(gòu),為了考慮到服務(wù)層針對Winform類型表示層項目的遠(yuǎn)程調(diào)用支持,表示層和服務(wù)邏輯層中間加了服務(wù)工廠對象層,用于不同類型的(主要是本地調(diào)用,遠(yuǎn)程Remoting,遠(yuǎn)程調(diào)用)服務(wù)對象實(shí)例的創(chuàng)建。 </p><p> 表示層:人機(jī)用戶界面設(shè)計層。 </p><p> 服務(wù)對象工廠層:用于創(chuàng)建服務(wù)邏輯對象實(shí)例,和服務(wù)邏輯層統(tǒng)
17、簡稱為服務(wù)層。支持本地模式,遠(yuǎn)程對象調(diào)用模式。 </p><p> 服務(wù)邏輯層:業(yè)務(wù)邏輯的接口和邏輯的實(shí)現(xiàn),供界面層調(diào)用。 </p><p> 數(shù)據(jù)持久層:業(yè)務(wù)對象持久化到數(shù)據(jù)庫的操作層。 </p><p> 數(shù)據(jù)實(shí)體層:數(shù)據(jù)實(shí)體對象層,供以上各個層次間傳遞使用。 </p><p><b> 3.3技術(shù)架構(gòu) </b&g
18、t;</p><p> 考慮到平臺的穩(wěn)定性,兼容性,項目風(fēng)險管理,企業(yè)信息化桌面應(yīng)用軟件的普及程度等因素,平臺采用.NET 4.0 的winform(桌面應(yīng)用開發(fā))和webform(ASP.NET)開發(fā)技術(shù)實(shí)現(xiàn),其中表示層和業(yè)務(wù)邏輯層之間的通訊采用Remoting遠(yuǎn)程對象調(diào)用技術(shù)實(shí)現(xiàn)而不是本地對象的引用。 </p><p> 需要詳細(xì)說明的有以下幾點(diǎn): </p><
19、p> ASP.NET WebForm不直接調(diào)用服務(wù)層業(yè)務(wù)邏輯組件,采用遠(yuǎn)程對象調(diào)用的統(tǒng)一和客戶端Winform一樣調(diào)用遠(yuǎn)程對象。主要是為了便于搭建統(tǒng)一服務(wù)邏輯中心,方便客戶端(WebForm 和 Winform)進(jìn)行服務(wù)邏輯統(tǒng)一調(diào)用。 </p><p> ASP.NET WebForm采用CodeBehind方式進(jìn)行頁面開發(fā)。主要是方便頁面間模塊化和界面邏輯間的解耦,并利用ASP.NET本身特性方便實(shí)現(xiàn)
20、web頁面插件化(熱插拔)。遠(yuǎn)程對象服務(wù)中心是個插件化的容器,將服務(wù)組件以插件的方式進(jìn)行部署。 </p><p><b> 4 總結(jié) </b></p><p> 在競爭激烈的社會環(huán)境中,一個軟件企業(yè)要更好的生存發(fā)展必須讓自己的產(chǎn)品具有社會競爭力,這其中節(jié)約成品是其中關(guān)鍵一環(huán),而有一個通用的框架積累能大大節(jié)省開發(fā)的重復(fù)量,而權(quán)限系統(tǒng)又是這個通用框架的關(guān)鍵一環(huán),這就促
21、使本文的產(chǎn)生,即分析設(shè)計一個可復(fù)用,可擴(kuò)展的企業(yè)通用權(quán)限系統(tǒng)。 </p><p> 本文在此目標(biāo)下,著重分析了通用權(quán)限系統(tǒng)一開始就面臨的兩大問題,對數(shù)據(jù)權(quán)限的支持和與具體業(yè)務(wù)代碼的關(guān)注點(diǎn)分離,并提出基于RBAC模型的權(quán)限模型實(shí)現(xiàn)權(quán)限系統(tǒng)與具體業(yè)務(wù)系統(tǒng)的解耦,并給出設(shè)計方案,為企業(yè)通用權(quán)限系統(tǒng)的搭建提供了理論和實(shí)際設(shè)計上的支持。 </p><p><b> 基金項目: <
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于RBAC模型的通用權(quán)限管理組件的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC擴(kuò)展模型的權(quán)限管理系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC模式權(quán)限管理系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC的雙層權(quán)限管理系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC權(quán)限管理系統(tǒng)的研究與實(shí)現(xiàn).pdf
- 基于擴(kuò)展RBAC模型的錢塘權(quán)限管理系統(tǒng)研究與實(shí)現(xiàn).pdf
- 基于RBAC的權(quán)限管理控制系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC的Java通用權(quán)限控制框架研究與設(shè)計.pdf
- 基于RBAC的權(quán)限管理組件的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC的用戶權(quán)限管理系統(tǒng)的設(shè)計和實(shí)現(xiàn).pdf
- 基于對稱RBAC模型的配置委托權(quán)限管理研究.pdf
- 基于rbac的java通用權(quán)限控制框架研究與設(shè)計-碩士論文
- 基于RBAC的企業(yè)工作流權(quán)限管理系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC的權(quán)限管理系統(tǒng)應(yīng)用研究.pdf
- 基于web的通用權(quán)限管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)
- 基于LSM通用框架的RBAC模型的設(shè)計與實(shí)現(xiàn).pdf
- 基于輕量級JavaEE技術(shù)的RBAC權(quán)限管理系統(tǒng).pdf
- 基于改進(jìn)RBAC模型的銀行權(quán)限中間件的設(shè)計與實(shí)現(xiàn).pdf
- 基于Struts的通用權(quán)限管理系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
- 基于RBAC智能水表遠(yuǎn)程抄表系統(tǒng)權(quán)限管理的設(shè)計與實(shí)現(xiàn).pdf
評論
0/150
提交評論