12

我在Web.config文件中定义了以下ASP.NET成员节:错误:只有LDAP连接字符串支持对Active Directory

<membership defaultProvider="AspNetActiveDirectoryMembershipProvider"> 
    <providers> 
    <clear/> 
    <add connectionStringName="ADService" connectionUsername="umanage" 
     connectionPassword="letmein" enablePasswordReset="true" enableSearchMethods="true" 
     applicationName="uManage" clientSearchTimeout="30" serverSearchTimeout="30" 
     name="AspNetActiveDirectoryMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </providers> 
</membership> 

连接字符串看起来是这样的:

<add name="ADService" connectionString="ldap://familynet.local" /> 

每当我叫下面的代码:

Membership.GetAllUsers(); 

我得到以下错误:

Configuration Error Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: Only LDAP connection strings are supported against Active Directory and ADAM.

我不明白为什么系统声称LDAP连接字符串不好,因为它实际上是MSDN文档中指定的有效LDAP字符串。

http://msdn.microsoft.com/en-us/library/system.web.security.activedirectorymembershipprovider.aspx

任何想法?

回答

29

你的LDAP连接字符串实际上是有效 - LDAP连接字符串是区分大小写的;在LDAP前缀必须大写。使用:

connectionString="LDAP://familynet.local" /> 

你应该没问题。