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

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

圖2

代碼的算法實現(xiàn)都是用的最容易想到、最常用的編碼方式,語言中比較高級的用法還真沒怎么研究過,肯定是不會用啦!
權限驗證是通過URL查詢得到主鍵判斷的,所以權限項目(菜單)表中要有URL列,建議是另外添加一張對應表,以為一個權限項有可能需要對應多個URL請求。
使用此組件不需要對原項目做任何的代碼修改。
代碼是在.net2.0框架下開發(fā)的,需要考到網站的bin目錄下;
在Web.config的<system.web>節(jié)點下面添加
<httpModules> <add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/> </httpModules>
如果這樣添加出錯的話,那就<system.webServer>節(jié)點下面添加
<modules> <add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/> </modules>
以上就是關于ASP.NET通用權限驗證的實現(xiàn)代碼思路,希望對大家的學習有所幫助。
- ASP.net做的IP訪問限制
- asp.net(c#)不可訪問,因為它受保護級別限制
- Asp.net Mvc 身份驗證、異常處理、權限驗證(攔截器)實現(xiàn)代碼
- ASP.NET對HTML頁面元素進行權限控制(三)
- ASP.NET對HTML頁面元素進行權限控制(二)
- ASP.NET對HTML頁面元素進行權限控制(一)
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十:定制數(shù)據(jù)修改界面
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十一:實現(xiàn)開放式并發(fā)
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十二:為刪除數(shù)據(jù)添加客戶端確認
- 在ASP.NET 2.0中操作數(shù)據(jù)之二十三:基于用戶對修改數(shù)據(jù)進行限制
相關文章
安裝.NET Framework進度條卡住不動的解決方案(推薦)
VS在安裝之前需要安裝.NET Framework,我安裝的是4.0版本。但是安裝進度條到一半左右時就卡住不動了。前前后后重試多次,還有幾次重新開機,但都沒用,怎么解決呢,下面給大家分享下解決方案2016-12-12
asp.net DataList與Repeater用法區(qū)別
Repeater比DataList要好一些,如果不是很大數(shù)據(jù)量的話,這點差別是體現(xiàn)不來的。2009-12-12
詳解一款開源免費的.NET文檔操作組件DocX(.NET組件介紹之一)
本篇文章主要是介紹了一款開源免費的.NET文檔操作組件DocX,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12
xpath的數(shù)據(jù)和節(jié)點類型以及XPath中節(jié)點匹配的基本方法
xpath的數(shù)據(jù)和節(jié)點類型以及XPath中節(jié)點匹配的基本方法,學習xpath的朋友可以參考下。2010-09-09
在 ASP.Net Core 中使用 MiniProfiler的方法
這篇文章主要介紹了在 ASP.Net Core 中使用 MiniProfiler的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
如何傳值在2個頁面之間 要求不刷新父頁面,并且不能用Querystring傳值
通過Cookie,因為它既可以在服務器端對其進行操作,也可在客戶端對其進行操作但是缺點是不安全,而且有時客戶端會由于安全問題禁用Cookie!2008-12-12

