專利名稱:一種權(quán)限管理驗(yàn)證應(yīng)用方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種權(quán)限管理-險(xiǎn)i正應(yīng)用方法,運(yùn)用于任何asp.net應(yīng)用程序系統(tǒng)權(quán)限管理框架,對(duì)WEB應(yīng)用程序進(jìn)行模塊顯示及模塊功能操作的權(quán)限控制。
背景技術(shù):
在我們開發(fā)Web程序過程中,經(jīng)常會(huì)需要開發(fā)一個(gè)后臺(tái)管理程序,通過權(quán)限來管理我們開發(fā)的前臺(tái)程序;當(dāng)你開發(fā)的程序越來越多的時(shí)候,不同版本的管理后臺(tái)也會(huì)越來越多,這時(shí)如果沒有一個(gè)統(tǒng)一的權(quán)限后臺(tái)框架規(guī)范來進(jìn)來管理,對(duì)維護(hù)人員維護(hù)造成不便,也使得權(quán)限與業(yè)務(wù)松散耦合難以維護(hù)。
傳統(tǒng)權(quán)限驗(yàn)證機(jī)制為在每個(gè)具體界面類的Page—Load事件里加入權(quán)限驗(yàn)證代碼,查詢數(shù)據(jù)庫進(jìn)行權(quán)限驗(yàn)證,判斷用戶是否能訪問該模塊或者該模塊的某些功能,傳統(tǒng)的驗(yàn)證機(jī)制需要在每個(gè)需要驗(yàn)證的具體頁面類Load事件加入代碼或是方法參數(shù),維護(hù)繁瑣,開發(fā)也不便利,而且頻繁調(diào)用數(shù)據(jù)庫會(huì)增加系統(tǒng)負(fù)擔(dān), 一旦代碼或方法參數(shù)發(fā)生改變則需要更改之前調(diào)用的代碼或方法參數(shù)的頁面,給使用帶來諸多不便。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的是提供一種減少代碼量、提高開發(fā)速度及降低開發(fā)成本的權(quán)限管理驗(yàn)證應(yīng)用方法。
為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案為 一種權(quán)限管理驗(yàn)證應(yīng)用方法,包括以下步驟
a. 通過權(quán)限管理驗(yàn)證設(shè)備設(shè)定權(quán)限驗(yàn)證基類及包含所有操作模塊的母版
頁;
b. 將需要驗(yàn)證的具體頁面類繼承于權(quán)限驗(yàn)證基類,并設(shè)置自定義用戶屬性;
c. 當(dāng)用戶訪問該具體頁面類時(shí),通過權(quán)限管理驗(yàn)證設(shè)備響應(yīng)權(quán)限驗(yàn)證基類并開始權(quán)限認(rèn)證,從而獲取具體頁面類的自定義屬性;
d. 權(quán)限管理驗(yàn)證設(shè)備通過取得的屬性與存于設(shè)備緩存中的用戶權(quán)限比較,
判斷是否隱藏母版頁中的操作模塊;
e. 在具體頁面類執(zhí)行力口載方法時(shí)注冊母版頁的操作模塊。所述用戶權(quán)限采用角色來進(jìn)行權(quán)限的授權(quán),用戶屬于一種角色,繼承角色
的權(quán)限,且角色擁有模塊操作的權(quán)限。
所述操作模塊由模塊名稱、描述、資源地址及生成的模塊ID構(gòu)成。所述操作模塊包括新增、保存、修改、刪除、審核、返回、查看及設(shè)置中
的一種或多種才莫塊。
本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點(diǎn)和有益效果
本發(fā)明是采用自定義屬性方式與繼承模式結(jié)合并控制母版頁達(dá)到控制用戶權(quán)限對(duì)模塊的管理,本發(fā)明還應(yīng)用了緩存技術(shù)減少數(shù)據(jù)庫頻繁訪問;本發(fā)明比傳統(tǒng)權(quán)限模式明顯的減少了代碼量,提高開發(fā)速度,降低開發(fā)成本,增加代碼重用率,集中式代碼管理更利于系統(tǒng)維護(hù)。
圖1為本發(fā)明的結(jié)構(gòu)原理圖。
具體實(shí)施例方式
以下結(jié)合附圖對(duì)本發(fā)明進(jìn)行詳細(xì)的描述。
本發(fā)明的特點(diǎn)是權(quán)限驗(yàn)證機(jī)制,權(quán)限驗(yàn)證機(jī)制是權(quán)限管理系統(tǒng)的核心;往往權(quán)限驗(yàn)證漏洞產(chǎn)生是因?yàn)闄?quán)限驗(yàn)證機(jī)制過于簡單,然而復(fù)雜的權(quán)限驗(yàn)證機(jī)制又不利于系統(tǒng)的開發(fā)與維護(hù),而且對(duì)數(shù)據(jù)庫的頻繁訪問也降低了系統(tǒng)的允許速度,基于兩者綜合考慮我們各取所長創(chuàng)建了本發(fā)明,即利于開發(fā)維護(hù)又能提高效率,也能滿足大部分用戶得安全性需求。
如圖1所示, 一種^又限管理—瞼證應(yīng)用方法,包括以下步驟a.通過權(quán)限管理驗(yàn)證設(shè)備設(shè)定權(quán)限驗(yàn)證基類及包含所有操作模塊的母版頁;權(quán)限驗(yàn)證基類包含權(quán)限認(rèn)證事件的基類,繼承于System. Web.UL Page類,母版頁包含所有操作模塊,使用母版頁(MasterPage.Master)就不用在具體頁重復(fù)定義操作模塊的控制按鈕及其事件,提高代碼重用率;母版頁所有操作模塊的按鈕事件都進(jìn)行了委托,方便繼承頁使用。b. 將需要驗(yàn)證的具體頁面類繼承于權(quán)限驗(yàn)證基類,并設(shè)置自定義用戶屬性;c. 當(dāng)用戶訪問該具體頁面類時(shí),通過權(quán)限管理-瞼證設(shè)備響應(yīng)權(quán)限驗(yàn)證基類 并開始權(quán)限認(rèn)證,從而獲取具體頁面類的自定義屬性;d. 權(quán)限管理驗(yàn)證設(shè)備通過取得的屬性與存于設(shè)備緩存中的用戶權(quán)限比較, 判斷是否隱藏母版頁中的操作模塊;e. 在具體頁面類執(zhí)行加載方法時(shí)注冊母版頁的操作模塊,以確保點(diǎn)擊相應(yīng) 操作模塊的按鈕時(shí)能響應(yīng)正確的時(shí)間。所述用戶權(quán)限采用角色來進(jìn)行權(quán)限的授權(quán),用戶屬于一種角色,繼承角色 的權(quán)限,且角色擁有模塊操作的權(quán)限。所述操作模塊由模塊名稱、描述、資源地址及生成的模塊ID構(gòu)成。所述操作模塊包括新增、保存、修改、刪除、審核、返回、查看及設(shè)置中 的一種或多種模塊。操作模塊擁有1 ~ 8種操作方法,由用戶自己組合授予或屏 蔽1 ~ 8種操作方法。其中角色是對(duì)模塊包含1 ~ 8種操作方法擁有的集合。用戶屬于一種角色后就能繼承該角色所擁有的模塊及其功能許可。權(quán)限驗(yàn)證模式包括用戶登錄驗(yàn)證驗(yàn)證通過后加載有關(guān)用戶的模塊及權(quán)限信息存放在內(nèi)存中。 菜單欄驗(yàn)證并加載擁有權(quán)限的菜單。模塊頁面模塊被加載后由基類提取模塊類屬性信息(模塊ID、功能許可 ID ),在根據(jù)存放在內(nèi)存中的用戶權(quán)限信息決定模塊功能顯示與否。
權(quán)利要求
1、一種權(quán)限管理驗(yàn)證應(yīng)用方法,其特征在于有以下步驟a. 通過權(quán)限管理驗(yàn)證設(shè)備設(shè)定權(quán)限驗(yàn)證基類及包含所有操作模塊的母版頁;b. 將需要驗(yàn)證的具體頁面類繼承于權(quán)限驗(yàn)證基類,并設(shè)置自定義用戶屬性;c. 當(dāng)用戶訪問該具體頁面類時(shí),通過權(quán)限管理驗(yàn)證設(shè)備響應(yīng)權(quán)限驗(yàn)證基類并開始權(quán)限認(rèn)證,從而獲取具體頁面類的自定義屬性;d. 權(quán)限管理驗(yàn)證設(shè)備通過取得的屬性與存于設(shè)備緩存中的用戶權(quán)限比較,判斷是否隱藏母版頁中的操作模塊;e. 在具體頁面類執(zhí)行加載方法時(shí)注冊母版頁的操作模塊。
2、 根據(jù)權(quán)利要求1所述的權(quán)限管理驗(yàn)證應(yīng)用方法,其特征在于所述用戶 權(quán)限采用角色來進(jìn)行權(quán)限的授權(quán),用戶屬于一種角色,繼承角色的權(quán)限,且角 色擁有模塊操作的權(quán)限。
3、 根據(jù)權(quán)利要求2所述的權(quán)限管理驗(yàn)證應(yīng)用方法,其特征在于所述操作 模塊由模塊名稱、描述、資源地址及生成的模塊ID構(gòu)成。
4、 根據(jù)權(quán)利要求3所述的權(quán)限管理驗(yàn)證應(yīng)用方法,其特征在于所述操作 模塊包括新增、保存、修改、刪除、審核、返回、查看及設(shè)置中的一種或多種 模塊。
全文摘要
本發(fā)明公開了一種權(quán)限管理驗(yàn)證應(yīng)用方法,其包括以下步驟a.通過權(quán)限管理驗(yàn)證設(shè)備設(shè)定權(quán)限驗(yàn)證基類及包含所有操作模塊的母版頁;b.將需要驗(yàn)證的具體頁面類繼承于權(quán)限驗(yàn)證基類,并設(shè)置自定義用戶屬性;c.當(dāng)用戶訪問該具體頁面類時(shí),通過權(quán)限管理驗(yàn)證設(shè)備響應(yīng)權(quán)限驗(yàn)證基類并開始權(quán)限認(rèn)證,從而獲取具體頁面類的自定義屬性;d.權(quán)限管理驗(yàn)證設(shè)備通過取得的屬性與存于設(shè)備緩存中的用戶權(quán)限比較,判斷是否隱藏母版頁中的操作模塊;e.在具體頁面類執(zhí)行加載方法時(shí)注冊母版頁的操作模塊。本發(fā)明能有效減少代碼量、提高開發(fā)速度及降低開發(fā)成本。
文檔編號(hào)G06F9/44GK101504604SQ20091003789
公開日2009年8月12日 申請(qǐng)日期2009年3月13日 優(yōu)先權(quán)日2009年3月13日
發(fā)明者昊 張 申請(qǐng)人:昊 張