IIS7中的文件安全性(IP地址访问限制)

Chr*_*old 16 iis iis-7 iis-6 ip-restrictions

我有一个包含2个asmx文件的Web服务(public.asmx和private.asmx).在IIS6上,我可以转到private.asmx的属性,然后从"文件安全性"选项卡中拒绝除localhost的IP地址之外的所有计算机访问.

在IIS7中,我似乎只能为整个文件夹执行此操作.我错过了什么?

Wim*_*mer 28

搞笑 - 我发现这个问题因为我有同样的问题,但我认为解决方案如下:

  1. 在IIS7中,浏览到包含public.asmx和private.asmx文件的目录.
  2. 顶部的标题将反映当前目录,如"WebService Home".点击底部的"内容视图"按钮.
  3. 右键单击public.asmx文件,然后选择"切换到功能视图".
  4. 标题应为"public.asmx Home"以确认您正在管理一个文件.
  5. 添加您的IP限制.在这种情况下,我认为您需要127.0.0.1的允许条目,并从操作菜单中选择"编辑功能设置"以拒绝访问未指定的客户端.
  6. 再次单击您包含的文件夹(例如WebService)并再次切换到Content View以在private.asmx上重复这些步骤.

我自己正在学习IIS7的绳索,但我希望这能回答你的问题.


Pau*_*yng 6

通过谷歌找到了这个问题,并且正在寻找如何通过.config文件来完成这个问题但是在这里找不到答案.我已经跟踪了这些信息:

IIS7中的web.config使用该ipSecurity元素来限制IP地址的访问.你可以像这样使用它:

<configuration>
    <location path="private.asmx">
        <system.webServer>
            <security>
                <ipSecurity>
                    <add ipAddress="192.168.100.1" />
                    <add ipAddress="169.254.0.0" subnetMask="255.255.0.0" />
                </ipSecurity>
            </security>
        </system.webServer>
    </location>
</configuration>
Run Code Online (Sandbox Code Playgroud)

更新:请注意,必须添加角色才能启用此安全性.请参阅ipSecurity上面链接的文章.