将ASP.NET ActiveDirectoryMembershipProvider与Forest一起使用

时间:2009-08-03 17:59:26

标签: active-directory asp.net-membership

我正在尝试设置一个ActiveDirectoryMembershipProvider来对抗森林,我似乎无法让它工作。我们的一个AD管理员建议我引用全局目录,但似乎不支持。任何人都知道你是否可以,如果是这样,你如何配置AD会员提供商以对抗森林?

以下是我尝试的一些排列以及由此产生的错误。

<add name="ADConnectionString1"
    connectionString="LDAP://domain.org/DC=domain,DC=org:3268" />
  

“从...返回推荐   服务器“

<add name="ADConnectionString2"
    connectionString="LDAP://domain.org/DC=domain,DC=org:" />
  

空引用异常。

<add name="ADConnectionString3"
    connectionString="LDAP://domain.org" />
  

空引用异常

<add name="ADConnectionString4"
    connectionString="LDAP://domain.org:3268" />
  

“GC端口上的LDAP连接是   不支持Active   目录“。

<add name="ADConnectionString5"
    connectionString="LDAP://domain.org:3268/DC=domain,DC=org:3268" />
  

“GC端口上的LDAP连接是   不支持Active   目录“。

<add name="ADConnectionString6"
    connectionString="LDAP://domain.org:3268/DC=domain,DC=org" />
  

“GC端口上的LDAP连接是   不支持Active   目录“。

1 个答案:

答案 0 :(得分:2)

我目前无权测试ActiveDirectoryMembershipProvider,但通常使用GC://名字对象来执行全局编录搜索。 E.g。

    using (DirectoryEntry searchRoot = new DirectoryEntry("GC://DC=yourdomain,DC=com"))
    using (DirectorySearcher ds = new DirectorySearcher(searchRoot))
    {
        ds.Filter = "(sAMAccountName=userID1)";
        ds.SearchScope = SearchScope.Subtree;
        using (SearchResultCollection src = ds.FindAll())
        {
            foreach (SearchResult sr in src)
            {
                uxFred.Content = sr.Path;
            }
        }
    }

我在ASP.NET中工作的建议总是让你的搜索过滤器等使用LDP或普通的console / winform / wpf应用程序。