色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

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

1. 需求分析

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

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

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

c) 廠外用戶只能訪問(wèn)指定的頁(yè)面

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

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

.<aNET環(huán)境下為網(wǎng)站增加IP過(guò)濾功能-網(wǎng)頁(yè)教學(xué)網(wǎng) src="/d/file/itjie/ASPNETjishu/2014-10-23/b3120d16928e8d58a129173bf4e95194.gif" width=449 border=0>

IIS 和 ASP.NET 正在處理請(qǐng)求

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

2. 方案設(shè)計(jì)

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

編程語(yǔ)言:C#2.0

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

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

2.2. 概要設(shè)計(jì)

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

1) 判斷請(qǐng)求是否來(lái)自本地計(jì)算機(jī),是則自動(dòng)忽略,否則繼續(xù);

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

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

4) 將請(qǐng)求重定向到錯(cuò)誤提示頁(yè)。

.<aNET環(huán)境下為網(wǎng)站增加IP過(guò)濾功能-網(wǎng)頁(yè)教學(xué)網(wǎng) src="/d/file/itjie/ASPNETjishu/2014-10-23/91694edbb9ffb0bde48c798f8ea16dbc.gif" width=569 border=0>

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

AspNet技術(shù)ASP.NET環(huán)境下為網(wǎng)站增加IP過(guò)濾功能第1/2頁(yè),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 林西县| 城口县| 湘乡市| 湘西| 商城县| 鄂托克旗| 沂源县| 石家庄市| 建宁县| 色达县| 民和| 都江堰市| 福安市| 安泽县| 科技| 华容县| 冀州市| 舟曲县| 河南省| 洮南市| 潼关县| 大方县| 汝州市| 布拖县| 锦州市| 莒南县| 商丘市| 沙雅县| 岢岚县| 太谷县| 博乐市| 南开区| 开化县| 义乌市| 青岛市| 普陀区| 石首市| 芷江| 芜湖市| 宁远县| 竹北市|