Мне были отправлены следующие параметры LDAP, но я не уверен, как установить соединение в PHP. Я не уверен, какую функцию PHP использовать с каждым набором параметров. Вот параметры, которые мне дали:
Сервер: LDAPS: //the_server.com: 636
корневой DN: DC = the_info, dc = MORE_INFO, DC = COM
База поиска пользователей: OU = CompanyUsers
Фильтр поиска пользователя: SamAccountName = {0}
База поиска группы: OU = Security, OU = CompanyGroups
Фильтр поиска группы: сп = {0}
Членство в группах: Атрибут членства в группе = memberOf
Атрибут отображаемого имени LDAP: отображаемое имя
Адрес электронной почты Атрибут LDAP: почта
Если бы кто-то мог предоставить мне скрипт php, это было бы здорово! Я впервые использую LDAP и до сих пор не понимаю всех этих параметров.
Ниже приведен рабочий код для linux base ldap.
Это может быть полезно для вас.
<?php
$username = 'uid=amitkawasthi,ou=CompanyUsers,dc=the_info,dc=more_info,dc=com';
$password= 'test';
$ds=ldap_connect("the_server.com, 636");
echo $ds;
if ($ds) {
echo "Binding ...";
$r=ldap_bind($ds, $username, $password);
if ($r)
{
$sr=ldap_search($ds,"ou=CompanyUsers,dc=the_info,dc=more_info,dc=com", "uid=amitkawasthi");
$entry = ldap_first_entry($ds, $sr);
$attrs = array();
$attribute = ldap_first_attribute($ds,$entry,$identifier);
while ($attribute) {
$attrs[] = $attribute;
$attribute=ldap_next_attribute($ds,$entry,$identifier);
}
echo count($attrs) . " attributes held for this entry:<p>";
$ldapResults = ldap_get_entries($ds, $sr);
//for ($item = 0; $item < $ldapResults['count']; $item++) {
// for ($attribute = 0; $attribute < $ldapResults[$item]['count']; $attribute++) {
//echo $data = $ldapResults[$item][$attribute];
echo $data = $ldapResults[0][$attribute];
echo $data.": ".$ldapResults[0][$data][0]."<br>";
//}
///echo '<hr />';
echo "OK";
}
else
{
echo "Fail";
}
}
?>
============================
Других решений пока нет …