当前位置: 首页 > 图文教程 > 网络编程 > ASP > ADSI+ASP添加IP到IIS禁止访问列表中

ASP
关于释放session的两篇文章(一)
关于释放session的两篇文章(二)
表单填写时用回车代替TAB的实现方式
DateDiff的用法
加快DHTML的一组技巧
全面考察“禁用浏览器后退按钮”
XML加ASP实现网页“本地化”
透过ASP修改NT使用者的密码
方便购买的电子商务站点设计技巧
使用ASPMail组件发送数字卡片
聊天室关键技术[用户断线]处理
生成类似Windows资源管理器
如何将代码生成的文件设为只读
ASP中巧用存储过程
拦截表单的另外一种写法
ASP实现OICQ式的信息收发功能
怎样用HtmlEncode显示Unicode?
ASP出错集成处理
ASP.NET中处理datetime的一些通用函数
ASP.NET实现HTTP方式获取功能

ADSI+ASP添加IP到IIS禁止访问列表中


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 207 ::
收藏到网摘: n/a

注意:执行的ASP文件需要管理员权限
复制代码 代码如下:

<%@ Language=VBScript %>
<%
Dim strIP
strIP = request("IP")
%>
<FORM action=? method=post>
输入IP:<input type=text value="<%=strIP%>" style="BORDER: #AAAAAA 1px solid;" name="IP">
<input type="submit" value="确定发送">
</FORM>
<%
if strIP="list" then
Call ListDenyIP("2443")
response.end
end if
if strIP="query" then
Call CheckWebSiteSetup
response.end
end if
#
if strIP<>"" then
Call AddDenyIP("2443",strIP)
end if
Sub CheckWebSiteSetup()
Set IISOBJ=GetObject("IIS://LocalHost/W3SVC")
for each website in IISOBJ
if website.Class="IIsWebServer" then
for each b in website.ServerBindings
response.write ("Server "&Website.AdsPath" has binding"&b)
response.write ("<br>")
next
end if
next
end sub
#
Sub ListDenyIP(strWebNo)
set SecObj = GETObject("IIS://LocalHost/W3SVC/"+strWebNo+"/Root")
set MyIPSec = SecObj.IPSecurity
IPList=MyIPSec.IPDeny
if ubound(IPList)<0 then
response.write "<BR>无数据,请先随便加一条<BR>"
exit sub
end if
#
intIPListCount=ubound(IPList)+1
#
for i=0 to ubound(IPList)
response.write i+1
response.write ":"
response.write IPList(i)
response.write "<br>"
next
end sub
Sub AddDenyIP(strWebNo,strDenyIp)
set SecObj = GETObject("IIS://LocalHost/W3SVC/"+strWebNo+"/Root")
set MyIPSec = SecObj.IPSecurity
' Make sure GrantByDefault=TRUE or your changes will not count.
If (FALSE = MyIPSec.GrantByDefault) Then
Response.Write "<BR>GrantByDefault was not TRUE. Setting to TRUE.<BR>"
MyIPSec.GrantByDefault = TRUE
End If
IPList=MyIPSec.IPDeny
if ubound(IPList)<0 then
response.write "<BR>无数据,请先随便加一条<BR>"
exit sub
end if
#
intIPListCount=ubound(IPList)+1
#
for i=0 to ubound(IPList)
if strDenyIp = left(IPList(i),len(strDenyIp)) then
response.write "<BR>重复数据。<BR>"
exit sub
end if
next
redim Preserve IPList(intIPListCount)
IPList(intIPListCount)=strDenyIp
response.write "新添加:"
response.write strDenyIp
response.write "<br>"
MyIPSec.IPDeny = IPList
SecObj.IPSecurity = MyIPSec
SecObj.Setinfo
end sub
%>