Asp.net mvc 4 ActiveDirectoryMembershipProvider“;发生了本地错误。”;

Asp.net mvc 4 ActiveDirectoryMembershipProvider“;发生了本地错误。”;,asp.net-mvc-4,ldap,asp.net-membership,Asp.net Mvc 4,Ldap,Asp.net Membership,我在尝试对ASP.NET MVC4中的Netowrks NID使用LDAP身份验证时遇到了一个问题。我正在使用ASP.NET的内置ActiveDirectoryMembershipProvider,它正是为此目的而设计的。我知道我正在成功地联系服务器,因为如果我更改用户名或密码,就会出现无效的登录错误 不幸的是,我收到的错误非常难以描述。堆栈跟踪显示错误类型为ConfigurationErrorsException,这使我相信我只是没有正确配置某些内容 以下是Web.config中的连接字符串:

我在尝试对ASP.NET MVC4中的Netowrks NID使用LDAP身份验证时遇到了一个问题。我正在使用ASP.NET的内置ActiveDirectoryMembershipProvider,它正是为此目的而设计的。我知道我正在成功地联系服务器,因为如果我更改用户名或密码,就会出现无效的登录错误

不幸的是,我收到的错误非常难以描述。堆栈跟踪显示错误类型为ConfigurationErrorsException,这使我相信我只是没有正确配置某些内容

以下是Web.config中的连接字符串:

<connectionStrings>
    <add name="ADConnectionString" connectionString="LDAP://authenticate.ad.mydomain.com/OU=NIDs,OU=Accounts,DC=ad,DC=mydomain,DC=com" />
</connectionStrings>
  <authentication mode="Forms">
      <forms name=".ADAuthCookie" loginUrl="~/Account/Login" timeout="2880" slidingExpiration="false" protection="All" />
  </authentication>
  <membership defaultProvider="ADMembershipProvider">
      <providers>
          <clear />
          <add name="ADMembershipProvider"
               type="System.Web.Security.ActiveDirectoryMembershipProvider"
               connectionProtection="Secure"
               connectionStringName="ADConnectionString"
               connectionUsername="XXXXXXXXXX"
               connectionPassword="XXXXXXXXXX"
               attributeMapUsername="sAMAccountName"/>
      </providers>
  </membership>

是否有人遇到过此问题或知道此错误的原因?这是我第一次使用ActiveDirectoryMembershipProvider。非常感谢您的帮助或建议。

您的连接字符串可能是错误的。试着这样做:

connectionString="LDAP://mydomain.com/CN=Users,DC=mydomain,DC=com" />

您还可以尝试使用
dsquery user-name YourUserName
获取正确的连接字符串。

您的连接字符串可能是错误的。试着这样做:

connectionString="LDAP://mydomain.com/CN=Users,DC=mydomain,DC=com" />

您还可以尝试使用
dsquery user-name YourUserName
获取正确的连接字符串。

我已确定此错误的原因是我使用的帐户没有绑定到广告域的权限。

我已确定此错误的原因是我使用的帐户没有绑定到广告域的权限域。

web.config的第26行是什么?您正在指定域用户名吗?ie MYDOMAIN\Username?我假设您没有真正使用mydomain.com?第26行是ADMembershipProvider行。我不认为是用户名/密码。我也这么认为,但当我更改其中任何一个时,我会得到一个错误报告,无法进行身份验证。您的web.config的第26行是什么?您正在指定域用户名吗?ie MYDOMAIN\Username?我假设您没有真正使用mydomain.com?第26行是ADMembershipProvider行。我不认为是用户名/密码。我也这么认为,但当我更改其中任何一个时,我会得到一个无法验证的错误报告。