仅允许来自特定 IP/域的未授权用户使用 web.config 中的 <location path= "XXX" > 标记的某些目录



我的ASP.Net应用程序中有一些文件夹需要在不登录的情况下访问。为此,我已经在web.config文件中设置了这些配置

 <location path="XXXX">
    <system.web>
      <authorization>
        <allow users="*" />
      </authorization>
    </system.web>
  </location>

现在,我想将"路径"限制为只能从一个特定的IP地址或域进行匿名/未经授权的访问。如何设置此安全配置?

 <location path="XXXX">
    <system.web>
      <authorization>
        <allow users="*" />
      </authorization>
    </system.web>
    <system.webServer>
        <security>
            <ipSecurity allowUnlisted="false">
                <clear/> 
                <add ipAddress="127.0.0.1" allowed="true"/>  <!-- change ip here-->
             </ipSecurity>
        </security>
    </system.webServer>
  </location>

注意1:您需要安装IP安全模块。可以在这里找到:Windows功能/互联网信息服务/万维网服务/安全/IP安全

注意2:您需要允许在applicationHost.config中覆盖ipSecurity。您可以通过更改ipSecurity部分来更改此设置。

例如

<section name="ipSecurity" overrideModeDefault="Allow" />

applicationHost.config文件通常位于以下位置:C:\Windows\System32\inetsrv\config

如果你没有访问此文件的权限,那么你将无法在不询问服务器管理员的情况下进行访问。

最新更新