欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP.NET環(huán)境下為網(wǎng)站增加IP過濾功能第1/2頁

 更新時間:2009年06月30日 02:02:04   作者:  
通過深入的交流和溝通,確認(rèn)了該發(fā)電廠在企業(yè)網(wǎng)站用戶訪問控制方面的改進(jìn)要求

1. 需求分析

通過深入的交流和溝通,確認(rèn)了該發(fā)電廠在企業(yè)網(wǎng)站用戶訪問控制方面的改進(jìn)要求,大致情況如下:

a) 網(wǎng)站基于Asp.Net2.0實(shí)現(xiàn),不允許修改源程序

b) 廠內(nèi)用戶可直接訪問整個站點(diǎn)的所有頁面,員工不需要身份驗證

c) 廠外用戶只能訪問指定的頁面

顯而易見,他們就是針對企業(yè)網(wǎng)站增加一項IP過濾功能,在廠外用戶訪問某些敏感頁面時將其拒之門外。首先我們需要設(shè)置一個IP列表和一個Url列表,前者包含所有廠內(nèi)IP,后者包含廠外用戶可訪問的全部Url,并且這兩個列表都是可維護(hù)的;另外一個核心問題是,我們需要選擇一個合理的方式將開發(fā)好的功能模塊集成到企業(yè)網(wǎng)站中,HttpModules義不容辭。

在Asp.Net時代,IIS 接收到請求并將其調(diào)度給 aspnet_isapi.dll之后,ASP.NET 引擎開始逐個對已配置的HTTP模塊(HttpModules)進(jìn)行初始化,然后再調(diào)用正確的HTTP處理程序并呈現(xiàn)被請求的資源,最后將所生成的標(biāo)記返回給 IIS 和請求客戶端(如下圖所示)。

.NET環(huán)境下為網(wǎng)站增加IP過濾功能-網(wǎng)頁教學(xué)網(wǎng)

IIS 和 ASP.NET 正在處理請求

如果你想了解更多關(guān)于HttpModules的資料,請自行查閱。

2. 方案設(shè)計

2.1. 開發(fā)環(huán)境

編程語言:C#2.0

開發(fā)工具:Visual Studio.NET2008

操作系統(tǒng):windows2003 R2

2.2. 概要設(shè)計

使用HttpModules實(shí)現(xiàn)IP過濾功能的核心思想是:自定義一個HttpModule捕獲每一個用戶請求,然后獲取相關(guān)的用戶IP和被請求的Url進(jìn)行邏輯判斷,將未授權(quán)的請求重定向到一個錯誤提示頁。Http請求授權(quán)與否的判斷邏輯為:

1) 判斷請求是否來自本地計算機(jī),是則自動忽略,否則繼續(xù);

2) 判斷用戶IP是否屬于內(nèi)網(wǎng)(IP列表),是則忽略,否則繼續(xù);

3) 判斷被請求Url是否授權(quán)所有用戶訪問,是則忽略,否則繼續(xù);

4) 將請求重定向到錯誤提示頁。

.NET環(huán)境下為網(wǎng)站增加IP過濾功能-網(wǎng)頁教學(xué)網(wǎng)

在HttpApplication的BeginRequest事件中附加自定義的處理程序即可完成Http請求的捕獲。此外,為了便于維護(hù)我們應(yīng)將程序運(yùn)行需要的各項參數(shù)(IP列表、Url列表、錯誤提示頁路徑等等)存儲于特定的XML配置文件中,為了提高效率,我們還需要將配置文件執(zhí)行內(nèi)存級的緩存處理并對IP、Url匹配算法進(jìn)行適當(dāng)?shù)膬?yōu)化。

相關(guān)文章

最新評論