禁用从IIS 7继承"允许所有用户"规则

Car*_*nco 9 asp.net iis iis-7 web-deployment

我在IIS 7中创建了一个新站点.该站点继承了允许所有用户的规则.我想删除这个规则,但它不会让我.有没有办法将网站设置为不继承任何规则?

Tim*_*ter 7

通过以下方式更改web.config fe:

<system.web>
   <authorization>
      <allow roles="Administrator"/>
      <deny users="?"/>
   </authorization>
</system.web>
Run Code Online (Sandbox Code Playgroud)

匿名用户使用问号标识.

http://msdn.microsoft.com/en-us/library/wce3kxhd.aspx

您可以在IIS中执行相同操作,实际上以上述方式更改了您的web.config.

在此输入图像描述

编辑:如果这不起作用尝试在顶部的web.config:

<configuration>
    <system.webServer>
        <security>
            <authorization>
                <remove users="*" roles="" verbs="" />
                <add accessType="Deny" users="?" />
                <add accessType="Allow" roles="Administrators" />
            </authorization>
        </security>
    </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)

http://www.iis.net/ConfigReference/system.webServer/security/authorization

编辑2:我的最后一次尝试......

更改应用程序目录的权限,使其不包含父级的可继承权限.

在此输入图像描述

在此输入图像描述

在此输入图像描述

在此输入图像描述

  • 事实证明我使用了错误的部分.我们应该使用URL身份验证,而不是.Net Autnentication (2认同)

Car*_*nco 5

解决方案是使用URL授权.看到这里安装它.然后,在IIS授权规则中,您可以删除允许所有用户访问该站点的规则.

在此输入图像描述

基于此前一个问题IIS7授权规则/配置 - 永久提示

  • 可能不起作用:我安装了 URL 授权,但这无法让我删除“所有用户”的“允许”规则。 (2认同)