ASP.NET通用權(quán)限驗(yàn)證的實(shí)現(xiàn)代碼思路
本篇介紹通用權(quán)限驗(yàn)證的實(shí)現(xiàn)代碼思路,總共分為導(dǎo)入?yún)?shù)、解析XML、根據(jù)XML配置進(jìn)行處理、返回結(jié)果。
代碼架構(gòu)圖

一、 類介紹
1.SFWebPermission:實(shí)現(xiàn)IHttpModule接口,權(quán)限驗(yàn)證入口;
2.SFConfig:導(dǎo)入XML配置類;
3.SFPermission:解析XML配置進(jìn)行權(quán)限驗(yàn)證;
4.SFAccessOper:數(shù)據(jù)庫(kù)操作類;
5.SFPermissionSQL:XML節(jié)點(diǎn)實(shí)體類;
6.SFParameter:XML節(jié)點(diǎn)實(shí)體類;
7.SFCommon:系統(tǒng)變量定義類;
8.SFConst:系統(tǒng)常量定義類;
9.SFPermission.xml:配置文件,格式上一篇已經(jīng)介紹。
二、 代碼結(jié)構(gòu)
圖1

圖2

代碼的算法實(shí)現(xiàn)都是用的最容易想到、最常用的編碼方式,語(yǔ)言中比較高級(jí)的用法還真沒怎么研究過(guò),肯定是不會(huì)用啦!
權(quán)限驗(yàn)證是通過(guò)URL查詢得到主鍵判斷的,所以權(quán)限項(xiàng)目(菜單)表中要有URL列,建議是另外添加一張對(duì)應(yīng)表,以為一個(gè)權(quán)限項(xiàng)有可能需要對(duì)應(yīng)多個(gè)URL請(qǐng)求。
使用此組件不需要對(duì)原項(xiàng)目做任何的代碼修改。
代碼是在.net2.0框架下開發(fā)的,需要考到網(wǎng)站的bin目錄下;
在Web.config的<system.web>節(jié)點(diǎn)下面添加
<httpModules> <add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/> </httpModules>
如果這樣添加出錯(cuò)的話,那就<system.webServer>節(jié)點(diǎn)下面添加
<modules> <add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/> </modules>
以上就是關(guān)于ASP.NET通用權(quán)限驗(yàn)證的實(shí)現(xiàn)代碼思路,希望對(duì)大家的學(xué)習(xí)有所幫助。
- ASP.net做的IP訪問限制
- asp.net(c#)不可訪問,因?yàn)樗鼙Wo(hù)級(jí)別限制
- Asp.net Mvc 身份驗(yàn)證、異常處理、權(quán)限驗(yàn)證(攔截器)實(shí)現(xiàn)代碼
- ASP.NET對(duì)HTML頁(yè)面元素進(jìn)行權(quán)限控制(三)
- ASP.NET對(duì)HTML頁(yè)面元素進(jìn)行權(quán)限控制(二)
- ASP.NET對(duì)HTML頁(yè)面元素進(jìn)行權(quán)限控制(一)
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十:定制數(shù)據(jù)修改界面
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十一:實(shí)現(xiàn)開放式并發(fā)
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十二:為刪除數(shù)據(jù)添加客戶端確認(rèn)
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十三:基于用戶對(duì)修改數(shù)據(jù)進(jìn)行限制
相關(guān)文章
google suggest 下拉菜單實(shí)現(xiàn)代碼(asp.net版本)
原來(lái)發(fā)表過(guò),是asp版本的,但是不支持上下鍵,現(xiàn)在后臺(tái)處理程序用.net寫的。代碼進(jìn)行部分優(yōu)化。2009-07-07
.net任務(wù)調(diào)度框架FluentScheduler簡(jiǎn)介
這篇文章介紹了.net任務(wù)調(diào)度框架FluentScheduler,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
asp.net Web站點(diǎn)風(fēng)格切換的實(shí)現(xiàn)
Web站點(diǎn)的風(fēng)格切換是很常見、也很受大家歡迎的功能,比如大家熟知的博客園就提供了幾十款風(fēng)格模板供大家選擇。2009-05-05
Asp.net實(shí)現(xiàn)無(wú)刷新調(diào)用后臺(tái)實(shí)體類數(shù)據(jù)并以Json格式返回
本文主要分享了Asp.net實(shí)現(xiàn)無(wú)刷新調(diào)用后臺(tái)實(shí)體類數(shù)據(jù)并以Json格式返回的具體實(shí)例方法,具有一定的參考價(jià)值,有需要的朋友可以看下2016-12-12
asp.net使用ashx生成圖形驗(yàn)證碼的方法示例
這篇文章主要介紹了asp.net使用ashx生成圖形驗(yàn)證碼的方法,結(jié)合實(shí)例形式分析了asp.net生成圖形驗(yàn)證碼的步驟、實(shí)現(xiàn)方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-07-07
在Asp.net用C#建立動(dòng)態(tài)Excel
在Asp.net用C#建立動(dòng)態(tài)Excel...2006-09-09
ABP入門系列之分頁(yè)功能的實(shí)現(xiàn)
本節(jié)主要講解了如何使用ABP進(jìn)行后臺(tái)分頁(yè),并順帶講解了ABP后臺(tái)分頁(yè)邏輯的實(shí)現(xiàn)方式。同時(shí)也演示了如何使用X.PagedList進(jìn)行前端分頁(yè)2017-03-03
Gridview使用CheckBox全選與單選采用js實(shí)現(xiàn)同時(shí)高亮顯示選擇行
Gridview使用CheckBox單選與全選功能再次進(jìn)行簡(jiǎn)單演示,選中的行,使用高亮顯示,讓用戶一目了然看到哪一行被選擇了,在項(xiàng)目中很實(shí)用的,開發(fā)中的朋友們可要考慮一下哦2013-01-01

