如果我需要在LDAP和PHP中搜索两个子文件夹,我应该为$base\u dn放置什么
我对LDAP搜索只有非常基本的了解。我将PHP与Laravel一起使用 我正在尝试搜索我的如果我需要在LDAP和PHP中搜索两个子文件夹,我应该为$base\u dn放置什么,php,authentication,ldap,Php,Authentication,Ldap,我对LDAP搜索只有非常基本的了解。我将PHP与Laravel一起使用 我正在尝试搜索我的OU=users目录中的所有用户。我在其中有两个子文件夹:OU=STAFF和OU=“STUDENTS。我希望能够通过用户名在这两个目录中搜索特定的DN。问题是,我只能在指定STAFF或STUDENTS目录时才能进行搜索。我目前有: ... $base_dn = 'OU=USERS,DC=mysite,DC=mydomain,DC=edu'; $filter = "(&(objectClass=per
OU=users
目录中的所有用户。我在其中有两个子文件夹:OU=STAFF
和OU=“STUDENTS
。我希望能够通过用户名在这两个目录中搜索特定的DN
。问题是,我只能在指定STAFF
或STUDENTS
目录时才能进行搜索。我目前有:
...
$base_dn = 'OU=USERS,DC=mysite,DC=mydomain,DC=edu';
$filter = "(&(objectClass=person)(sAMAccountName=$username))";
$result = ldap_search($connection, $base_dn, $filter);
$entries = ldap_get_entries($connection, $result);
foreach ($entries as $entry) {
$ldapUsername = $entry["sAMAccountName"][0];
echo $ldapUsername;
return;
}
如果我指定其中一个,它将起作用
$base_dn = 'OU=STAFF,OU=MMM_USERS,DC=mmc,DC=mmm,DC=edu';
或
但不是没有它们
总的来说,我只是尝试根据用户的用户名(这也是他们的cn
和LDAP密码)来验证用户。但是,据我所知,我需要首先获取他们的DN
,尝试绑定到连接,使用从PHP表单输入获取的DN
和密码
如果您能就具体细节或总体方法提供任何建议,我们将不胜感激。根据您的LDAP服务器实现,您可以使用
但是,我怀疑您正在使用Microsoft Active Directory,它不支持您希望执行的可扩展匹配
-吉姆
$base_dn = 'OU=STUDENTS,OU=MMM_USERS,DC=mmc,DC=mmm,DC=edu';