当我连接到 LDAP 服务器并检索用户时,我得到了正确的用户记录,但我没有看到任何 memberOf、isMemberOf 或任何其他类似的属性来告诉我他们在哪些组中:
$query = "(&(uid={$username})(objectClass=person))";
$result = ldap_search($ldapconnection, $context, $query);
$user = ldap_get_entries($ldapconnection, $result);
但是,如果我检索 LDAP 组,则可以看到包含所有正确用户的用户列表:
$query = "(&({cn=".$groupname.")(objectClass=groupOfUniqueNames))";
$result = ldap_search($ldapconnection, $context, $query);
$group = ldap_get_entries($ldapconnection, $result); // Users in array attribute
这些组是动态的 groupOfUniqueNames 组,每个用户都是该组的唯一成员。
我是否遗漏了什么,或者服务器未配置为显示 memberOf (MS AD)?有没有办法在不遍历每个组的情况下获得特定用户的成员资格?