本篇介紹通用權限驗證的實現代碼思路,總共分為導入參數、解析XML、根據XML配置進行處理、返回結果。
代碼架構圖
一、 類介紹
1.SFWebPermission:實現IHttpModule接口,權限驗證入口;
2.SFConfig:導入XML配置類;
3.SFPermission:解析XML配置進行權限驗證;
4.SFAccessOper:數據庫操作類;
5.SFPermissionSQL:XML節點實體類;
6.SFParameter:XML節點實體類;
7.SFCommon:系統變量定義類;
8.SFConst:系統常量定義類;
9.SFPermission.xml:配置文件,格式上一篇已經介紹。
二、 代碼結構
圖1
圖2
代碼的算法實現都是用的最容易想到、最常用的編碼方式,語言中比較高級的用法還真沒怎麼研究過,肯定是不會用啦!
權限驗證是通過URL查詢得到主鍵判斷的,所以權限項目(菜單)表中要有URL列,建議是另外添加一張對應表,以為一個權限項有可能需要對應多個URL請求。
使用此組件不需要對原項目做任何的代碼修改。
代碼是在.net2.0框架下開發的,需要考到網站的bin目錄下;
在Web.config的<system.web>節點下面添加
<httpModules> <add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/> </httpModules>
如果這樣添加出錯的話,那就<system.webServer>節點下面添加
<modules> <add name="myHttpModule" type="SFPermission.SFWebPermission,SFPermission"/> </modules>
以上就是關於ASP.NET通用權限驗證的實現代碼思路,希望對大家的學習有所幫助。