C# AD身份验证未知用户名或错误密码

C# AD身份验证未知用户名或错误密码,c#,asp.net,authentication,active-directory,asp.net-membership,C#,Asp.net,Authentication,Active Directory,Asp.net Membership,我正在使用VS2005 C# 我正在尝试将我的登录身份验证从ASP.NET网站管理工具从使用Internet切换到本地网络,即Windows身份验证 我已将web表单中登录工具的MembershipProvider设置为我的MP名称MyADMembershipProvider 以下是我在进行一些更改后的当前web.config文件: <configuration> <appSettings/> <connectionStrings>

我正在使用VS2005 C#

我正在尝试将我的登录身份验证从ASP.NET网站管理工具从使用Internet切换到本地网络,即Windows身份验证

我已将web表单中登录工具的MembershipProvider设置为我的MP名称MyADMembershipProvider

以下是我在进行一些更改后的当前web.config文件:

<configuration>
    <appSettings/>
    <connectionStrings>
        <add name="SODConnectionString" connectionString="CONNECTIONSTRING" providerName="System.Data.SqlClient"/>

        <add name="ADConnectionString" connectionString="LDAP://URL"/>
    </connectionStrings>
    <system.web>
        <authentication mode="Windows" />
    <roleManager enabled="true" />
    <pages styleSheetTheme="DataWebControls"/>
        <membership defaultProvider="MyADMembershipProvider">
            <providers>
                <clear/>
                <add name="MyADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=PUBTOKEN" applicationName="SOD" connectionStringName="ADConnectionString" connectionUsername="domain\Username" connectionPassword="Password" attributeMapUsername="sAMAccountName" enableSearchMethods="true" />
            </providers>

        </membership>
        <siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
            <providers>
                <add name="XmlSiteMapProvider"
      description="Default SiteMap provider."
      type="System.Web.XmlSiteMapProvider"
      siteMapFile="Web.sitemap"
      securityTrimmingEnabled="true" />
            </providers>
        </siteMap>
            <compilation debug="true"/>
            <!-- Turn on Custom Errors -->
        <customErrors defaultRedirect="~/Error/NetworkError.aspx" mode="On">
   <error statusCode="404" redirect="~/Error/PageNotFound.aspx" />
  </customErrors>
    </system.web>
</configuration>`
我现在可以使用正确的凭据登录,并且系统还会提示我错误的凭据以进行错误的登录尝试

当另一个用户的凭证与我在
connectionUsername
connectionPassword
中“硬编码”的凭证不同时,该用户仍然能够登录

但是,工具箱中的“我的登录名”工具仍然在
connectionUsername
中显示“硬编码”凭据的用户名,而不是登录用户的用户名


我可以知道为什么会这样吗?

我认为错误在于会员资格提供商,而不是登录


在我看来,成员资格提供程序中的connectionUsername和connectionPassword属性没有指定有效的AD帐户。我相信该帐户用于在登录过程中验证凭据,并在登录后检索有关该帐户的信息。

我相信该错误与会员资格提供商有关,而不是与登录有关


在我看来,成员资格提供程序中的connectionUsername和connectionPassword属性没有指定有效的AD帐户。我相信此帐户用于在登录过程中验证凭据,并在登录后检索有关帐户的信息。

您是否已将站点/应用程序/虚拟目录/页面上的身份验证设置更改为“Windows身份验证”(假设您使用IIS托管)?@M.Babcock我可以知道如何进入站点/应用程序/虚拟目录/页面吗?它是通过控制面板还是?它将在您的IIS管理器中。@M.Babcock我需要一个外部工具吗?@M.Babcock我到目前为止还没有配置任何ISS管理器。我可以知道如何打开该工具吗?您是否已将站点/应用程序/虚拟目录/页面上的身份验证设置更改为“Windows身份验证”(假设您使用IIS托管)?@M.Babcock我可以知道如何转到站点/应用程序/虚拟目录/页面吗?它是通过控制面板还是?它将在您的IIS管理器中。@M.Babcock我需要一个外部工具吗?@M.Babcock我到目前为止还没有配置任何ISS管理器。我可以知道如何打开该工具吗?我已在
connectionUsername
connectionPassword
中指定了一个广告帐户。但是,登录后,loginName工具仅显示AD帐户的用户名,而不是登录用户的用户名。我可以知道为什么吗?你有没有试着用你指定的帐号登录到机器上?我仍然怀疑该帐户有问题-密码不正确、帐户被挂起、安全权限不足等等。@RUiHAO,什么是loginName工具?我在
connectionUsername
connectionPassword
中指定了一个AD帐户。但是,登录后,loginName工具仅显示AD帐户的用户名,而不是登录用户的用户名。我可以知道为什么吗?你有没有试着用你指定的帐号登录到机器上?我仍然怀疑该帐户有问题-密码错误、帐户被挂起、安全权限不足等等@RUiHAO,什么是loginName工具?
<add name="MyADMembershipProvider" 
     type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
     applicationName="SOD" 
     connectionStringName="ADConnectionString" 
     connectionUsername="domain\Username" 
     connectionPassword="Password" 
     attributeMapUsername="sAMAccountName" 
     enableSearchMethods="true" />
connectionUsername="domain\Username" connectionPassword="Password"