Php LDAP筛选器-查找特定OU的所有用户

Php LDAP筛选器-查找特定OU的所有用户,php,active-directory,ldap,ldap-query,Php,Active Directory,Ldap,Ldap Query,我在使用LDAP搜索筛选器时遇到问题。我需要检索的是特定LDAP组的所有用户,该组是OU=Staff、OU=users、OU=Accounts、DC=test、DC=local 我的搜索是: (&(objectCategory=user)(OU=Staff,OU=Users,OU=Accounts,DC=test,DC=local)) 目前它没有返回任何结果。我错过了什么?你必须做两件事 设置搜索基础OU=Staff,OU=Users,OU=Accounts,DC=test,DC=lo

我在使用
LDAP搜索筛选器时遇到问题。我需要检索的是特定
LDAP
组的所有用户,该组是
OU=Staff、OU=users、OU=Accounts、DC=test、DC=local

我的搜索是:

(&(objectCategory=user)(OU=Staff,OU=Users,OU=Accounts,DC=test,DC=local))
目前它没有返回任何结果。我错过了什么?

你必须做两件事

  • 设置搜索基础
    OU=Staff,OU=Users,OU=Accounts,DC=test,DC=local
  • 使用
    objectClass
    搜索对象
  • 使用PHP,搜索将如下所示(基于):


    嗯,我已经这样做了,它没有返回任何结果…这是使用PHP。很可能OU=Staff不是
    组。它是一个
    组织单元
    。它包含组,有点像文件夹包含文件。
    <?php
    //You must bind, first
    // using ldap bind
    $ldaprdn  = 'yourdomain\nic_hubbard';     // ldap rdn or dn
    $ldappass = 'password';  // associated password
    
    // connect to ldap server
    $ldapconn = ldap_connect("yourad.test.local")
        or die("Could not connect to LDAP server.");
    
    if ($ldapconn) {
    
        // binding to ldap server
        $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
    
        $dn = "OU=Staff,OU=Users,OU=Accounts,DC=test,DC=local";
        $filter="(objectClass=user)";
        $justthese = array("cn", "sn", "givenname", "mail");
    
        $sr=ldap_search($ldapconn, $dn, $filter, $justthese);
    
        $info = ldap_get_entries($ldapconn, $sr);
    
        echo $info["count"]." entries returned\n";
    }
    
    ?>
    
    ldapsearch -H ldap://yourad.test.local -x -D "yourdomain\nic_hubbard" -W -b "OU=Staff,OU=Users,OU=Accounts,DC=test,DC=local" -s sub "(objectClass=user)"