Asp.net MVC Web Api赢得';不允许Windows身份验证

Asp.net MVC Web Api赢得';不允许Windows身份验证,asp.net,security,authentication,asp.net-web-api2,Asp.net,Security,Authentication,Asp.net Web Api2,我有一个简单的MVC web api 2 IIS托管应用程序,我想启用windows身份验证(最初不使用Owin)。我在我的开发机器上运行这个,并作为本地IIS运行 因此,根据我所能找到的,我需要将以下内容添加到web.config 1:将身份验证模式=“Windows”添加到以下部分 2:然后添加以下内容 当我添加上述内容并运行应用程序(在Dev studio的debug中)时,我得到以下错误 HTTP错误500.19-内部服务器错误 配置错误此配置节不能用于此路径。当节在父级锁定时会

我有一个简单的MVC web api 2 IIS托管应用程序,我想启用windows身份验证(最初不使用Owin)。我在我的开发机器上运行这个,并作为本地IIS运行

因此,根据我所能找到的,我需要将以下内容添加到web.config

1:将身份验证模式=“Windows”添加到以下部分


2:然后添加以下内容


当我添加上述内容并运行应用程序(在Dev studio的debug中)时,我得到以下错误

HTTP错误500.19-内部服务器错误

配置错误此配置节不能用于此路径。当节在父级锁定时会发生这种情况。锁定在默认情况下(overrideModeDefault=“Deny”),或者由带有overrideMode=“Deny”或旧版allowOverride=“false”的位置标记显式设置

然后它特别指向这个web配置条目

配置源:

37:
38:       
39:     
有人知道我为什么会得到这个吗

此外,我注意到,当我切换到IIS express时,在项目属性中,Windows身份验证设置为禁用,并显示为灰色,因此我也无法在此处设置它


提前感谢您的帮助

如果您阅读applicationHost.config,您将看到与身份验证相关的部分被锁定,并且无法在web.config中被覆盖


因此,您需要在applicationHost.config中指定,而不是在web.config中指定。IIS和IIS Express都有这样的限制。

非常感谢!这解决了我的问题(通过将其设置为允许)!!
37:     <authentication>
38:       <windowsAuthentication enabled="true"/>
39:     </authentication>