允许对单个aspx页进行匿名身份验证?

时间:2019-04-25 11:38:07

标签: .net iis

我有一个启用了Window身份验证的Asp.Net应用程序,并且禁用了匿名身份验证。但我需要允许匿名访问应用程序内具有单个aspx页的特定文件夹。        注意:禁用了使用Window身份验证和匿名身份验证的整个应用程序。     我尝试通过将C:\ Windows \ System32 \ inetsrv \ config \ applicationHost.config中的onymousAuthenticationAuthentication部分的overrideModeDefault从“ Deny”更改为“ Allow”:                其次,在设置了overrideModeDefault =“ Allow”之后,您可以将以下内容放入web.config中:                                                   甚至尝试过在网络配置文件中添加位置标记

1 个答案:

答案 0 :(得分:1)

您不应更改overrideModeDefault。如果需要,有一种更好的方法可以“解锁”该部分。

我认为最简单的方法是在ApplicationHost.config内部进行此更改(不包括对该部分的解锁)。为此,您可以将以下内容添加到ApplicationHost.config的底部,紧靠在/ configuration标记上方

<location path="MyAwesomeSite/MyAwesomeAnonFolder">
    <system.webServer>
        <security>
            <authentication>
                <anonymousAuthentication enabled="true" />
            </authentication>
        </security>
    </system.webServer>
</location>

如果您确实要将配置放置在web.config中,则可以添加类似以下内容的内容,以将那个站点的匿名身份验证解锁到ApplicationHost.config中。

<location path="MyAwesomeSite" overrideMode="Allow">
    <system.webServer>
        <security>
            <authentication>
                <anonymousAuthentication enabled="true" />
            </authentication>
        </security>
    </system.webServer>
</location>

然后,您将在匿名文件夹(MyAwesomeAnonFolder)下创建一个web.config文件,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <security>
            <authentication>
                <anonymousAuthentication enabled="true" />
            </authentication>
        </security>
    </system.webServer>
</configuration>