如何通过WEB方式,来控制iis的禁用IP名单

原创 2004年09月07日 10:47:00
如何通过WEB方式,来控制iis的禁用IP名单。

这个问题可以进一步划分为两个问题:
1、如何控制iis的IPDeny;
2、由于是WEB方式,默认的WEB帐户权限很低,不会有上面操作的权限,如何处理。
 
第一个问题:

微软的msdn中给出了三种方法:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iissdk/iis/setting_ip_security_using_system_directoryservices.asp
这里给出了两种。其实都是使用 System.DirectoryServices 类
后一种竟然有这样的要求:
This example requires Windows Server 2003 Service Pack 1, which contains fixes that allow System.DirectoryServices to enumerate list properties.
晕倒,当时就是没看到这条,这一种调试了很久才发现有这个限制。
Windows Server 2003 Service Pack 1 那要啥时候才能出来呀。等不及了。放弃这种方案。

另外一个在:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iissdk/iis/ref_prog_iaorefiipsecd.asp
代码是 VBScript 写的


其实有个更好的在:
http://www.thecodeproject.com/csharp/IISWMI.asp
这里其实是使用 System.DirectoryServices。同时通过使用 反射 来避免上面必须 win2003 sp1 才可以使用的尴尬。
具体代码请看那个网页,我就不详细说了。我就是采用的这个。


第二个问题:

当然,你可以给 WEB 的运行帐户非常高的权限来解决这个问题。
我们这里要说的不是这种不安全的,而是只给必要的权限。这就需要 身份模拟(Impersonation)了。

有关在ASP.NET应用程序中使用身份模拟的文章请看以下文章:
http://www.microsoft.com/China/Community/program/originalarticles/TechDoc/impersonation.mspx

或者你查 msdn 中 WindowsImpersonationContext 类的说明。
或是是 web.config 中 <identity impersonate="true" /> 这样一节的相关信息

至于如何新设一个帐户,这个帐户只有对iis的IPDeny有读写权限。
汗颜,我也不会。

我是用了一个更高权限的帐户。通过设置 Web.config 的 identity 节来实现的。
通过设置: impersonate="true"
这样,用户身份的认证交给IIS来进行。
当允许匿名登录时,IIS将一个匿名登录使用的标识(缺省情况下是IUSR_MACHINENAME)交给ASP.NET应用程序。
当不允许匿名登录时,IIS将认证过的身份标识传递给ASP.NET应用程序。ASP.NET的具体访问权限由该账号的权限决定。
这时候我使用不允许匿名登录,然后使用一个非常高权限的帐户登录,就可以操作了。

这方面的文章还可以参考:
http://www.microsoft.com/china/technet/security/guidance/secmod38.mspx

 

IIS之Web服务器 一个IP地址对应多…

一个IP地址对应多个Web站点  当按上步的方法建立好所有的Web站点后,对于做虚拟主机,可以通过给各Web站点设不同的端口号来实现,比如给一个Web站点设为80,一个设为81,一个设为82……(如...
  • nzf_001
  • nzf_001
  • 2014年06月06日 11:20
  • 1146

Web服务器站点设置和IIS安装设置图解

IIS是Internet Information Server的缩写,是微软提供的Internet服务器软件,包括WEB、FTP、Mail等等服务器。因为IIS的FTP和Mail服务器不是很好用,一般...
  • suxinpingtao51
  • suxinpingtao51
  • 2014年11月26日 11:12
  • 41727

通过SQLNET.ora文件限制Ip地址访问

参考:http://www.eygle.com/archives/2008/01/sqlnetora_ip_limit.html
  • wll_1017
  • wll_1017
  • 2014年06月12日 17:28
  • 2082

IIS7设置IP地址和域名限制

在IIS中可以通过IP地址域名设置来控制拒绝或允许特定范围内的IP对网站的访问权限,下面简单介绍如何在IIS7.5中设置,如下图,是IIS7.5的主界面 一、安装“IP地址和域限制”功能...
  • MaxWang_ABC
  • MaxWang_ABC
  • 2016年06月25日 06:30
  • 820

如何禁止IIS缓存静态文件

转自:http://zzstudy.offcn.com/?p=1165 如何禁止IIS缓存静态文件(png、js、html等) 2012年07月02日 ⁄ 系统维护 ⁄ 暂无评论 ⁄ 被围观...
  • chelen_jak
  • chelen_jak
  • 2014年02月15日 10:26
  • 2775

IIS中限制访问IP设置方法

IIS中限制访问IP设置方法 对于一些重要的服务器,我们并不想让所有人都能访问,或者将一些总是攻击网站的用户屏蔽掉。这就需要添加限制访问风站的IP地址了。 1、我的电脑(右键)->管理->IIS-...
  • zhangwike
  • zhangwike
  • 2015年08月03日 09:19
  • 2047

IIS安装教程,IIS配置,及解决80端口被屏蔽和动态IP甚至无公网IP问题

IIS,IIS配置,IIS安装教程,
  • iiroj
  • iiroj
  • 2014年07月16日 21:40
  • 939

通过IIS设置阻止某个IP或IP段访问你的网站

最近笔者发现,我的一个网站每天只要一发布新文章,就被一“黑爪”立即转走了,并且大肆在其他网站转发,这样时间久了难免会造成网站内容质量的下降,甚至影响整个网站的权重,在这样的情况下,我就想阻止他访问我网...
  • oKeVin12
  • oKeVin12
  • 2015年07月10日 14:25
  • 3540

(最新)IIS Express发布网站,实现IP,域名访问站点

IIS Express 实现域名访问站点,实现局域网访问,IP,域名访问。本篇文章主要讲解下IIS Express 的配置,通过IIS Express来发布、调试站点,并可以通过域名、IP进行对站点的...
  • shuai_wy
  • shuai_wy
  • 2017年04月05日 14:32
  • 1557

nginx设置目录白名单、ip白名单

1.设置目录白名单:对指定请求路径不设置限制,如对请求路径为api目录下的请求不做限制,则可写为 server{         location /app {             proxy_p...
  • slovyz
  • slovyz
  • 2017年01月23日 09:20
  • 5897
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何通过WEB方式,来控制iis的禁用IP名单
举报原因:
原因补充:

(最多只允许输入30个字)