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

?

基于RBAC的權(quán)限管理軟件的開(kāi)發(fā)及應(yīng)用

2012-12-31 00:00:00李莉許廣輝
電腦知識(shí)與技術(shù) 2012年31期

摘要:基于角色的訪問(wèn)控制(Role-Based Access Control,簡(jiǎn)稱(chēng)RBAC)設(shè)計(jì)模型,以.Net平臺(tái)為開(kāi)發(fā)環(huán)境,開(kāi)發(fā)設(shè)計(jì)了權(quán)限管理軟件。該軟件具備用戶(hù)管理、角色管理、頁(yè)面管理和菜單管理等功能,實(shí)現(xiàn)了對(duì)系統(tǒng)內(nèi)用戶(hù)權(quán)限的分配與管理,取得了良好的應(yīng)用效果,具備廣泛的應(yīng)用前景。

關(guān)鍵詞:權(quán)限管理;角色的訪問(wèn)控制;角色

中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2012)31-7483-02

現(xiàn)在幾乎每臺(tái)個(gè)人電腦上都安裝了瀏覽器,這導(dǎo)致了只要在一個(gè)局域網(wǎng)的范圍內(nèi),如果不做權(quán)限限制,每臺(tái)計(jì)算機(jī)都能輕易的訪問(wèn)Web項(xiàng)目,所以權(quán)限管理是Web應(yīng)用項(xiàng)目中關(guān)鍵環(huán)節(jié)之一。如果不建立權(quán)限管理系統(tǒng),任何“非法用戶(hù)”都可以輕而易舉通過(guò)瀏覽器訪問(wèn)到Web應(yīng)用項(xiàng)目中的所有功能,這將對(duì)信息系統(tǒng)的安全造成威脅。因此,應(yīng)用系統(tǒng)均需要相關(guān)的權(quán)限管理軟件進(jìn)行權(quán)限檢測(cè)與管理,確保只有經(jīng)過(guò)授權(quán)的用戶(hù)才能正常合法的使用已授權(quán)的功能,同時(shí)禁止那些未經(jīng)過(guò)授權(quán)的非法用戶(hù)進(jìn)入系統(tǒng)。

因此,開(kāi)發(fā)一套具有通用性并能克服上述不足的權(quán)限管理軟件來(lái)確保信息系統(tǒng)的信息安全是十分必要作。本文基于B/S架構(gòu),設(shè)計(jì)開(kāi)發(fā)了一套權(quán)限管理軟件。該軟件用戶(hù)體驗(yàn)性強(qiáng),客戶(hù)端無(wú)需下載控件,能同時(shí)支持多種數(shù)據(jù)庫(kù);實(shí)現(xiàn)了按一定的組織結(jié)構(gòu)訪問(wèn)網(wǎng)頁(yè),確保信息系統(tǒng)安全。

1 軟件設(shè)計(jì)

1.1軟件整體設(shè)計(jì)

權(quán)限管理軟件設(shè)計(jì)是基于角色的訪問(wèn)控制(Role-Based Access Control,簡(jiǎn)稱(chēng)RBAC)設(shè)計(jì)模型。RBAC是美國(guó)NIST于20世紀(jì)90年代初提出了一種基于角色的訪問(wèn)控制模型。其核心思想是:不是直接將用戶(hù)和權(quán)限進(jìn)行關(guān)聯(lián),而是引入“角色”概念,將代表行為的權(quán)限和角色相互關(guān)聯(lián),角色與用戶(hù)相互關(guān)聯(lián),用戶(hù)和權(quán)限通過(guò)角色而間接關(guān)聯(lián)。

在軟件具體設(shè)計(jì)中,首先通過(guò)系統(tǒng)的域驗(yàn)證來(lái)保證用戶(hù)合法性;域驗(yàn)證通過(guò)后,從數(shù)據(jù)庫(kù)中讀取該用戶(hù)具備哪種角色,然后根據(jù)用戶(hù)的角色,來(lái)確定該用戶(hù)可以訪問(wèn)的頁(yè)面;最后將這些頁(yè)面生成菜單,從而實(shí)現(xiàn)權(quán)限管理的功能。

1.2軟件體系架構(gòu)的設(shè)計(jì)

在軟件體系架構(gòu)設(shè)計(jì)中,采用分層式結(jié)構(gòu),添加了Model層,并將數(shù)據(jù)訪問(wèn)層做了一定程度上的擴(kuò)展,具體軟件體系架構(gòu)圖1所示。

表示層:是系統(tǒng)的展示部分,負(fù)責(zé)用戶(hù)與整個(gè)系統(tǒng)的交互。表示層僅僅包含頁(yè)面上控件的邏輯代碼,只與界面上的元素有關(guān),而與系統(tǒng)的業(yè)務(wù)邏輯無(wú)關(guān)。

業(yè)務(wù)邏輯層:是整個(gè)系統(tǒng)的核心。它與這個(gè)系統(tǒng)的業(yè)務(wù)邏輯相關(guān)。在權(quán)限管理軟件中,業(yè)務(wù)邏輯層的相關(guān)設(shè)計(jì)主要涉及到頁(yè)面、角色和菜單處理的業(yè)務(wù)邏輯。如果涉及到數(shù)據(jù)庫(kù)的訪問(wèn),則調(diào)用數(shù)據(jù)訪問(wèn)層。

數(shù)據(jù)訪問(wèn)層:其功能主要是負(fù)責(zé)數(shù)據(jù)庫(kù)操作。該層包括DAL接口、DAL工廠、Oracle Dal、SqlServer Dal以及最后產(chǎn)生的Model層。該數(shù)據(jù)訪問(wèn)層中完全采用了“面向接口編程”的思想。抽象出來(lái)的IDAL模塊,脫離了與具體數(shù)據(jù)庫(kù)的依賴(lài),從而使得整個(gè)數(shù)據(jù)訪問(wèn)層更加有利于數(shù)據(jù)庫(kù)遷移。只需添加一個(gè)相應(yīng)數(shù)據(jù)庫(kù)版本的DAL并且實(shí)現(xiàn)IDAL接口即可連接到各種數(shù)據(jù)庫(kù)。業(yè)務(wù)邏輯層和表現(xiàn)層不需要任何的改動(dòng),從而提高了代碼的復(fù)用率。

實(shí)體層:該層主要將數(shù)據(jù)庫(kù)中定義的表映射成程序可以訪問(wèn)的業(yè)務(wù)實(shí)體,并且只定義實(shí)體的屬性,并無(wú)實(shí)體的行為。該層由數(shù)據(jù)訪問(wèn)層產(chǎn)生,貫串了業(yè)務(wù)管理層和表示層。權(quán)限管理系統(tǒng)主要涉及的實(shí)體有:用戶(hù)類(lèi)、頁(yè)面類(lèi)和角色類(lèi)等。

1.3系統(tǒng)功能設(shè)計(jì)

權(quán)限管理軟件主要包括四個(gè)模塊:用戶(hù)管理、頁(yè)面管理、角色管理和菜單管理。具體功能架構(gòu)圖如圖2所示。

圖2 權(quán)限管理軟件功能架構(gòu)圖

1.4系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)

數(shù)據(jù)庫(kù)設(shè)計(jì)是軟件開(kāi)發(fā)過(guò)程中的基礎(chǔ)環(huán)節(jié)。良好的數(shù)據(jù)庫(kù)設(shè)計(jì)不但有利于提高系統(tǒng)的整體性能,而且也方便將來(lái)使用過(guò)程中的數(shù)據(jù)維護(hù)。權(quán)限管理軟件數(shù)據(jù)庫(kù)設(shè)計(jì)達(dá)到了第三范式(3NF),這種設(shè)計(jì)能夠有效保證數(shù)據(jù)的完整性和參照完整性,同時(shí)降低數(shù)據(jù)的冗余度。

2 軟件實(shí)現(xiàn)

該軟件實(shí)現(xiàn)了與域無(wú)縫集成。用戶(hù)登錄后首先通過(guò)域驗(yàn)證來(lái)確保登錄用戶(hù)的合法性。這樣既方便了用戶(hù),避免用戶(hù)記住多個(gè)用戶(hù)名和密碼也保證了系統(tǒng)的安全性。

在權(quán)限管理系統(tǒng)中,利用了C#中DLLImport直接調(diào)用Windows已經(jīng)存在的域驗(yàn)證功能。DllImport所在的名字空間是 using System.Runtime.InteropServices。

MSDN中對(duì)DllImportAttribute的解釋是這樣的:可將該屬性應(yīng)用于方法。DllImportAttribute 屬性提供對(duì)從非托管 DLL 導(dǎo)出的函數(shù)進(jìn)行調(diào)用所必需的信息。作為最低要求,必須提供包含入口點(diǎn)的 DLL 的名稱(chēng)。

3 軟件應(yīng)用

權(quán)限管理軟件已應(yīng)用在多個(gè)系統(tǒng)中,系統(tǒng)運(yùn)行穩(wěn)定,響應(yīng)速度快,操作簡(jiǎn)單,功能健全,滿(mǎn)足了用戶(hù)的需求。權(quán)限管理軟件的直接使用,在很大程度上節(jié)省了開(kāi)發(fā)人員的時(shí)間和精力,提高了軟件開(kāi)發(fā)效率。隨著信息化建設(shè)的步伐越來(lái)越大,B/S架構(gòu)的系統(tǒng)的投用越來(lái)越多的投用,該軟件的應(yīng)用范圍將越來(lái)越廣闊。

參考文獻(xiàn):

[1] Karl Swedberg, Jonathan Chaffer. jQuery 基礎(chǔ)教程[M].李松峰,譯.北京:人民郵電出版社,2009.

[2] 沃森,內(nèi)格爾,齊立波.C#入門(mén)經(jīng)典 [M]. 5版.北京:清華大學(xué)出版社,2010.

湟中县| 高阳县| 安庆市| 固始县| 福州市| 札达县| 莒南县| 会宁县| 龙岩市| 石景山区| 筠连县| 佳木斯市| 革吉县| 同江市| 田阳县| 志丹县| 辽宁省| 潜江市| 濮阳市| 兰考县| 确山县| 永清县| 岗巴县| 青川县| 福贡县| 咸丰县| 五大连池市| 南阳市| 任丘市| 龙川县| 巴林左旗| 韩城市| 嵊泗县| 田阳县| 台南市| 五常市| 长宁县| 绥阳县| 剑川县| 岳池县| 古丈县|