我目前正在使用我的web.config中与我们的办公室IP范围匹配的重写规则来限制几个asp.net网站。
<system.webServer>
<rewrite>
<rules>
<rule name="Block IP" stopProcessing="true">
<match url="^403.html$" negate="true"/>
<conditions>
<add input="{HTTP_X_CLUSTER_CLIENT_IP}"
pattern="{MY OFFICE IP RANGE}"
negate="true"/>
</conditions>
<action type="Redirect" url="403.html" redirectType="SeeOther"/>
</rule>
</rules>
</rewrite>
网站还需要用户名和密码才能查看任何内容。但我希望像ip块一样有第二层保护来防止恶意活动。由于我经常在办公室外面有人需要访问该网站,因此我不能总是保留IP块。有哪些限制访问可在标准共享托管环境中工作的asp.net网站的替代方法? (像VPN这样的东西不是一个选项,因为我的webhost没有提供类似的东西)。
编辑:我注意到您还可以使用IIS的本机功能配置ip过滤,而不是重写规则。这是一个例子:
<security>
<ipSecurity allowUnlisted="true"> <!-- this line allows everybody, except those listed below -->
<clear/> <!-- removes all upstream restrictions -->
<add ipAddress="83.116.19.53"/> <!-- blocks the specific IP of 83.116.19.53 -->
<add ipAddress="83.116.119.0" subnetMask="255.255.255.0"/> <!--blocks network 83.116.119.0 to 83.116.119.255-->
<add ipAddress="83.116.0.0" subnetMask="255.255.0.0"/> <!--blocks network 83.116.0.0 to 83.116.255.255-->
<add ipAddress="83.0.0.0" subnetMask="255.0.0.0"/> <!--blocks entire /8 network of 83.0.0.0 to 83.255.255.255-->
</ipSecurity>
</security>
编辑:澄清我要求的内容 - 我正在寻找限制访问网站的其他方法。我的ip过滤工作正常。但是它并不理想,因为我的用户有时会从不在列表中的IP地址进行访问。
答案 0 :(得分:0)
您可以在IIS 7.5 MMC中限制/授予对IIS网站或服务器的访问权限。在IIS-&gt;授权规则您可以通过用户帐户或组粗略地添加/拒绝访问服务器。