HTTP错误500.19 - 错误代码0x80070021

时间:2016-03-22 10:20:36

标签: asp.net authentication iis

后台:尝试调试WebForms应用程序并从AD获取经过身份验证的Windows用户,

在F5上,我得到了这个惊人页面的欢迎。

模块    WindowsAuthenticationModule

通知    AuthenticateRequest

处理程序    ExtensionlessUrl-Integrated-4.0

错误代码    0x80070021

配置错误    此配置部分不能在此路径中使用。当该部分被锁定在父级别时会发生这种情况。默认情况下,锁定(overrideModeDefault =" Deny"),或者使用overrideMode =" Deny"或遗留的allowOverride =" false"。

onDebug

配置来源:

   81:         <anonymousAuthentication enabled="false"/>
   82:         <windowsAuthentication enabled="true"/>
   83:         <basicAuthentication enabled="false"

我的Web.config(JustDifferentNames)

<?xml version="1.0"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
    <!--<section name="windowsAuthentication" overrideModeDefault="Allow" />
    <section name="anonymousAuthentication" overrideModeDefault="false" />
    <add name="WindowsAuthenticationModule" lockItem="false" />
    <add name="AnonymousAuthenticationModule" lockItem="false" />-->
  </configSections>
    <connectionStrings>
    <!--<add name="MyContext" connectionString="Data Source=idea-pc;Initial Catalog=componentnameNumber;Integrated Security=True" providerName="System.Data.SqlClient"/>-->
    <add name="DBComponent1" connectionString="Data Source=idea-pc;Initial Catalog=comp2;Integrated Security=True" providerName="System.Data.SqlClient"/>
    <add name="DBComponent2" connectionString="Data Source=idea-pc;Initial Catalog=comp3;Integrated Security=True" providerName="System.Data.SqlClient"/>
    <add name="DBComponent3" connectionString="Data Source=idea-pc;Initial Catalog=comp4;Integrated Security=True" providerName="System.Data.SqlClient"/>
    <add name="DBComponent4" connectionString="Data Source=idea-pc;Initial Catalog=comp5;Integrated Security=True" providerName="System.Data.SqlClient"/>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\aspnet-MyProj-20160209113257.mdf;Initial Catalog=aspnet-MyProjectEvents-20160209113257;Integrated Security=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>
  <system.web>
        <authentication mode="Windows"/>
        <identity impersonate="false"/>
        <authorization>
           <allow users="*"/>
        </authorization>
        <compilation debug="true" strict="false" explicit="true" targetFramework="4.5"/>
        <customErrors mode="Off"/>
    <!--</system.web>-->
    <pages>
      <namespaces>
        <add namespace="System.Web.Optimization"/>
        <add namespace="Microsoft.AspNet.Identity"/>
      </namespaces>
      <controls>
        <add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt"/>
        <add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit"/>
      </controls>
    </pages>
    <membership>
      <providers>
        <!--
        ASP.NET Membership is disabled in this template. Please visit the following link http://go.microsoft.com/fwlink/?LinkId=301889 to learn about the ASP.NET Membership support in this template
        -->
        <clear/>
      </providers>
    </membership>
    <profile>
      <providers>
        <!--
        ASP.NET Membership Profile is disabled in this template. Please visit the following link http://go.microsoft.com/fwlink/?LinkId=301889 to learn about the ASP.NET Membership support in this template
        -->
        <clear/>
      </providers>
    </profile>
    <roleManager>
      <!--
          ASP.NET Membership Role is disabled in this template. Please visit the following link http://go.microsoft.com/fwlink/?LinkId=301889 to learn about the ASP.NET Membership support in this template
        -->
      <providers>
        <clear/>
      </providers>
    </roleManager>
    <!--
            If you are deploying to a cloud environment that has multiple web server instances,
            you should change session state mode from "InProc" to "Custom". In addition,
            change the connection string named "DefaultConnection" to connect to an instance
            of SQL Server (including SQL Azure and SQL  Compact) instead of to SQL Server Express.
      -->
    <sessionState mode="InProc" cookieless="false" timeout="30" customProvider="DefaultSessionProvider">
      <providers>
        <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection"/>
      </providers>
    </sessionState>
  </system.web>
  <system.webServer>
    <security>
      <authentication>
        <anonymousAuthentication enabled="false"/>
        <windowsAuthentication enabled="true"/>
        <basicAuthentication enabled="false"
                             realm=""
                             defaultLogonDomain="TestDomain"/>
      </authentication>
    </security>



    <modules>
      <!--<remove name="FormsAuthentication"/>-->
    </modules>
  </system.webServer>
  <runtime>
    <gcAllowVeryLargeObjects enabled="true" />
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed"/>
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" culture="neutral" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089"/>
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin" culture="neutral" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin.Security.OAuth" culture="neutral" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin.Security.Cookies" culture="neutral" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin.Security" culture="neutral" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="mssqllocaldb"/>
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
    </providers>
  </entityFramework>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"/>
    </compilers>
  </system.codedom>
</configuration>

环顾四周检查了我的设置,发现我的Win下没有Win Auth  IIS - &gt;万维网服务 - &gt;安全

enter image description here

我也没有(即使禁用匿名身份验证后)

enter image description here

我想要检查什么?或者就此而言,我仍然是一个菜鸟

编辑:

enter image description here

2 个答案:

答案 0 :(得分:0)

您使用的Windows版本是低端版本,甚至不支持Windows身份验证。

您必须升级到专业版等高端版本。

答案 1 :(得分:0)

对我有用的是编辑appplicationhost.config文件。 在“身份验证”节点下更改: 从DENY到ALLOW在以下元素上:

<section name="anonymousAuthentication" overrideModeDefault="Allow" />
<section name="windowsAuthentication" overrideModeDefault="Allow" />

希望这会有所帮助!