Я использую Active Directory для аутентификации пользователей для приложения, использующего расширение LDAP PHP.
У меня есть группа безопасности на «usa.company.com» в активном каталоге. У меня есть пользователи в группе, которые находятся в другом домене (america.company.com).
вот мой код:
function get_members() {
// Active Directory server
$ldap_host = [IP Address here];
// Active Directory DN
$ldap_dn = "DC=usa,DC=company,DC=com";
// Domain, needed for user credentials
$ldap_usr_dom = "@usa.company.com";
$group = "SP Pixel";
$user = [Username goes here];
$password = [Password goes here];
// Active Directory columns to return
$userlist = [];
// connect and search ldap
$ldap = ldap_connect($ldap_host) or die("Could not connect to LDAP - Connection to LDAP error");
ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
@ldap_bind($ldap, $user . $ldap_usr_dom, $password) or die("Could not bind to LDAP - User Credentials error");
$results = ldap_search($ldap, $ldap_dn, "memberof=cn=" . $group . ",OU=Sharepoint,OU=_Security Groups,DC=usa,DC=company,DC=com");
[...the rest of the code below, ie. return....]
}
.... результаты пустые.
Самое смешное, что я вижу разных членов домена в "SP Pixel msgstr "группировать через командную строку, но я не могу вернуть их на страницу. Я думаю, что это может иметь отношение к переменной $ ldap_dn и / или, возможно, к строке соединения $ ldap.
Есть ли способ получить пользователей, которые не находятся в том же домене, что и группа безопасности? Должна ли группа безопасности находиться в том же домене, что и пользователи? Имеет ли значение, что группа безопасности - это другой домен?
Я видел это в PHP. net: ldap_search () function - PHP. net
Нужно ли мне настроить безопасность группа в домене america.company.com для тех пользователей, которые входят в домен америки и используют функцию параллельного поиска? Как бы я использовал это? Я новичок в LDAP.