偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

利用ASP和SQL Server構(gòu)建網(wǎng)頁(yè)防火墻

開(kāi)發(fā) 后端
本文介紹的是利用ASP和SQL Server構(gòu)建網(wǎng)頁(yè)防火墻,介紹建立的過(guò)程,主要分三步給大家介紹的。希望對(duì)你有幫助,一起來(lái)看。

ASP是Web上的客戶(hù)機(jī)/服務(wù)器結(jié)構(gòu)的中間層,雖然它使用腳本語(yǔ)言(Java Script,VB Script等)編寫(xiě),程序代碼在服務(wù)器上運(yùn)行,在客戶(hù)端僅可看到由ASP輸出的動(dòng)態(tài)HTML文件,但ASP仍具有某些漏洞,采取一定手段也可以看到ASP程序的源碼。這時(shí),通過(guò)ASP與SQL Server相結(jié)合,我們可以設(shè)計(jì)出簡(jiǎn)單、高效、可靠的應(yīng)用程序。

為網(wǎng)頁(yè)設(shè)置防火墻的主要目的是根據(jù)網(wǎng)頁(yè)內(nèi)容對(duì)不同來(lái)訪(fǎng)者提供不同的服務(wù),利用Java Script或VB Script,我們很容易做到這一點(diǎn)。但網(wǎng)頁(yè)的源碼在客戶(hù)瀏覽器中可以被看到,訪(fǎng)問(wèn)者可以查看所用的用戶(hù)鑒別方法,這只是一個(gè)表面形式的防火墻。

下面簡(jiǎn)單介紹一下其建立過(guò)程。

一、建立Login

在SQL Server上建立訪(fǎng)問(wèn)者的Login和Password。

二、在網(wǎng)絡(luò)服務(wù)器上創(chuàng)建數(shù)據(jù)庫(kù)DSN

使用“控制面板”中的“ODBC數(shù)據(jù)源管理器”創(chuàng)建某個(gè)數(shù)據(jù)庫(kù)的ODBC 數(shù)據(jù)資源名,即DSN,這樣以后可以通過(guò)使用數(shù)據(jù)庫(kù)DSN連接具體的數(shù)據(jù)庫(kù)。

“ODBC數(shù)據(jù)源管理器”提供了三種DSN,分別為用戶(hù)DSN、系統(tǒng)DSN和文件DSN。其中,用戶(hù)DSN會(huì)把相應(yīng)的配置信息保存在Windows的注冊(cè)表中,但是只允許創(chuàng)建該DSN的登錄用戶(hù)使用。系統(tǒng)DSN同樣將有關(guān)的配置信息保存在系統(tǒng)注冊(cè)表中,但是與用戶(hù)DSN不同的是系統(tǒng)DSN允許所有登錄服務(wù)器的用戶(hù)使用。

與上述兩種數(shù)據(jù)庫(kù)DSN不同,文件DSN把具體的配置信息保存在硬盤(pán)上的某個(gè)具體文件中。文件DSN允許所有登錄服務(wù)器的用戶(hù)使用,而且即使在沒(méi)有任何用戶(hù)登錄的情況下,也可以提供對(duì)數(shù)據(jù)庫(kù)DSN的訪(fǎng)問(wèn)支持。此外,因?yàn)槲募﨑SN被保存在硬盤(pán)文件里,所以可以方便地復(fù)制到其它機(jī)器中。這樣,用戶(hù)可以不對(duì)系統(tǒng)注冊(cè)表進(jìn)行任何改動(dòng)就可直接使用在其它機(jī)器上創(chuàng)建的DSN。

在以上三種數(shù)據(jù)庫(kù)DSN中,建議用戶(hù)選擇系統(tǒng)DSN或文件DSN,如果用戶(hù)更喜歡文件DSN的可移植性,可以通過(guò)在NT系統(tǒng)下設(shè)定文件的訪(fǎng)問(wèn)權(quán)限獲得較高的安全保障。

建立新的DSN,用戶(hù)首先選擇“添加”,然后在彈出窗口中選擇用戶(hù)將要建立連接的數(shù)據(jù)庫(kù)類(lèi)型并選擇列表中的“SQL Server”項(xiàng)。如果用戶(hù)是建立文件DSN,則單擊“下一步”按鈕并在隨后的對(duì)話(huà)框中輸入所要建立的文件DSN的文件名和保存路徑。如果用戶(hù)建立的是系統(tǒng)DSN,單擊“完成”按鈕。

在選擇完數(shù)據(jù)庫(kù)之后,用戶(hù)需要對(duì)數(shù)據(jù)庫(kù)DSN進(jìn)行設(shè)置。用戶(hù)需要選擇提供數(shù)據(jù)庫(kù)服務(wù)的具體服務(wù)器,設(shè)定登錄用戶(hù)名和口令,以及用戶(hù)將要連接的數(shù)據(jù)庫(kù)。

三、程序設(shè)計(jì)

下面要實(shí)現(xiàn)的就是一個(gè)簡(jiǎn)單的頁(yè)面防火墻的功能。此頁(yè)面只限制本單位內(nèi)部網(wǎng)的用戶(hù)進(jìn)行訪(fǎng)問(wèn)(在此假設(shè)內(nèi)部網(wǎng)的IP地址是從10.61.96.?至10.65.97.?之間),如果是單位外部用戶(hù)進(jìn)行訪(fǎng)問(wèn)則要求輸入訪(fǎng)問(wèn)用戶(hù)名及密碼。在此要使用到request對(duì)象的ServerVariables屬性,通過(guò)它來(lái)獲得環(huán)境變量的值。

程序源碼(firewall.asp)如下:

 

  1. <html>  
  2. <head>  
  3. <meta http-equiv="Content-Type" content="text/html; charset=gb_2312-80">  
  4. <meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">  
  5. <title>firewall.asp</title>  
  6. </head>  
  7. <body background="#800080 ">  
  8. <%  
  9. '使用Request.ServerVariables("REMOTE_ADDR")得到IP地址并保存在變量remoteip中  
  10. remoteip=Request.ServerVariables("REMOTE_ADDR")  
  11. stip=cstr(remoteip)  
  12. 取得IP地址第三個(gè)段的值并保存到stip中  
  13. for i=1 to 2  
  14. stip=right(stip,len(stip)-instr(1,stip,"."))  
  15. next  
  16. stip=left(stip,instr(1,stip,".")-1)  
  17. 'IP地址有效性檢驗(yàn)及密碼驗(yàn)證,包括兩方面的內(nèi)容:如果IP地址符合則通過(guò)驗(yàn)證;
  18. 如果IP地址不符合則檢驗(yàn)輸入的用戶(hù)名、密碼是否正確  
  19. if (left(remoteip,5) <> "10.61" or stip<"96" or stip>"97") then  
  20. username=request.form("t1")  
  21. password=request.form("t2")  
  22. Set fs = CreateObject("Scripting.FileSystemObject")  
  23. Set thisfile = fs.OpenTextFile("dsn.txt")  
  24. db loc=thisfile.readline  
  25. thisfile.close  
  26. cnstr=db_loc&&"uid="&&username&&";"&&"pid="&&password  
  27. on error resume next  
  28. set cn=server.createobject("adodb.connection")  
  29. cn.open cnstr  
  30. if err=3709 then %>   
  31. <p><font color="#FF0000">對(duì)不起,用戶(hù):<%=username%>沒(méi)有訪(fǎng)問(wèn)權(quán)限,或密碼不正確! <BR></font></p>  
  32. <form method="POST">   
  33. <p align="center"
  34. 用戶(hù)名:<input type="text" name="T1" size="20"
  35. 口令:<input type="password" name="T2" size="20"
  36. <input type="submit" value="提交" name="B1"><input type="reset" value="全部重寫(xiě)" name="B2">   
  37. </p>  
  38. </form>   
  39. <%end if  
  40. cn.close   
  41. set cn=nothing%>  
  42. <%else %>  
  43. 恭喜您,您已經(jīng)通過(guò)了驗(yàn)證,可以直接使用本站點(diǎn)的資源!  
  44. <%end if%>  
  45. </body>  
  46. </html> 

 

稍微修改一下上面如IP地址等信息,該程序就可以運(yùn)行了。

當(dāng)然,上面只是實(shí)現(xiàn)在一個(gè)頁(yè)面中的防火墻功能。如果一個(gè)網(wǎng)站有多個(gè)頁(yè)面的話(huà),可以設(shè)置一個(gè)session變量來(lái)對(duì)用戶(hù)進(jìn)行標(biāo)志,在下面的頁(yè)面中都進(jìn)行判斷。

希望通過(guò)本文的介紹,能夠給你帶來(lái)幫助。

【編輯推薦】

  1. 使用ASP.NET操作IIS7中使用應(yīng)用程序
  2. VB.NET和ASP.NET編碼規(guī)范
  3. ASP.Net中保護(hù)自定義的服務(wù)器控件
  4. ASP.net的身份驗(yàn)證方式FORMS
  5. ASP.NET中g(shù)et方法和post方法的區(qū)別
責(zé)任編輯:于鐵 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-03-15 10:48:47

2011-03-15 09:10:43

iptables防火墻

2010-12-30 10:37:24

2013-01-21 10:17:27

防火墻惡意IP

2010-03-19 16:13:43

2009-09-24 13:53:53

2013-07-04 10:16:24

2011-03-17 14:35:08

防火墻SQL Server數(shù)

2010-12-21 18:04:26

2011-03-15 17:12:11

2009-11-11 10:07:09

2010-12-08 09:29:27

下一代防火墻

2010-09-14 13:08:52

2010-09-17 10:07:28

2019-07-18 11:26:13

防火墻網(wǎng)絡(luò)安全軟件

2011-01-21 12:03:46

2009-11-11 10:48:54

2013-08-29 10:26:27

windows系統(tǒng)防火防火墻

2024-12-30 12:02:29

2021-06-25 18:31:37

云防火墻
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)