ASP實(shí)現(xiàn)簡(jiǎn)單的網(wǎng)頁保護(hù)

2010-08-28 10:48:44來源:西部e網(wǎng)作者:

   主要使用request對(duì)象的ServerVariables屬性,通過它來獲得環(huán)境變量的值。使用的語法為:Request.ServerVariables(variable),“variable”表示環(huán)境變量的名稱,如服務(wù)器主機(jī)名稱、Web服務(wù)器軟件名等等,若“variable”為“REMOTE_ADDR”則表示訪問者的IP地址,通過它就可以實(shí)現(xiàn)IP地址的過濾。

   源程序如下:(文件名:demo.ASP)

   <html>
   <head>
   <meta http-equiv=“Content-Type” content=“text/html; charset=gb_2312-80”>
   <meta name=“GENERATOR” content=“Microsoft FrontPage Express 2.0”>

   <style>
   <!--
   .as{ line-h(huán)eight: 15px; font-size: 9pt }
   a:hover {color: rgb(0,51,240);text-decoration:underline}
   .p9 { font-family: “宋體”; font-size: 9pt; line-h(huán)eight: 15pt}
   .p12 { font-family: “宋體”; font-size: 12pt; line-h(huán)eight: 18pt}
   a:link { text-decoration: none;}
   a:visited { text-decoration:none;}
   a:hover {text-decoration: underline;font-size: 125%;color:blue}
   -->
   </style>

   <title>ASP頁面防火墻功能演示</title>
   </head>

   <body background=“back.jpg”>
   <%
   ′使用Request.ServerVariables(“REMOTE_ADDR”)得到IP地址并保存在變量rip中
   rip=Request.ServerVariables(“REMOTE_ADDR”)
   strip=cstr(rip)
   ′取得IP地址第三個(gè)段的值并保存到strip中

   for i=1 to 2
   strip=right(strip,len(strip)-instr(1,strip,“.”))
   next

   strip=left(strip,instr(1,strip,“.”)-1)
   ′IP地址有效性檢驗(yàn)及密碼驗(yàn)證,包括兩方面的內(nèi)容:
   ′如果IP地址符合則通過驗(yàn)證;如果IP地址不符合則檢驗(yàn)輸入的密碼是否正確(此處密碼為“asp”)
   if (left(rip,5) <> “127.1” or strip<“1” or strip>“50”) and request(“Passwd”)<>“asp” then
   %>
   <p><font color=“#FF0000”>對(duì)不起,你的IP是<%=rip%>,本頁面可以訪問的IP是127.1.1.*到127.1.50.*之間,如果你是本單位內(nèi)部網(wǎng)的用戶,請(qǐng)確認(rèn)你的瀏覽器沒有使用代理!<BR></font></p>

   <form action=“demo.asp” method=“POST” id=form1 name=form1>
   <p>請(qǐng)輸入訪問密碼:<input type=“password” name=“Passwd” > <input type=“submit” value=“確認(rèn)” name=“B1”>;
   </p>
   </form>

   <%else %>
   ′合法用戶可以訪問的頁面,在此可以加入任何信息
   祝賀您,您已經(jīng)順利通過了頁面的安全認(rèn)證,可以直接使用本站點(diǎn)的資源!
   <%end if%>
   </body>
   </html>


   實(shí)際使用只要稍微修改上面的程序(如IP地址等信息)就可以了,當(dāng)然這只是在一個(gè)頁面中實(shí)現(xiàn)了安全防范功能,如果一個(gè)網(wǎng)站有多個(gè)頁面的話,可以設(shè)置一個(gè)session變量來對(duì)用戶進(jìn)行標(biāo)志,以在后面的頁面中進(jìn)行判斷。

關(guān)鍵詞:ASP

贊助商鏈接: