Чтение из LDAP на основе ObjectGUID с PHP - PullRequest
0 голосов
/ 29 декабря 2011

Я создал веб-систему администрирования для нашей среды AD. У меня проблемы в настоящее время, пытаясь прочитать записи каталога, основанные на objectguid. Это возможно сделать?

Я могу сделать что-то вроде:

$filter = "(&(objectclass=*)(objectguid=$objectguid))";
$search = ldap_read($ds, $dn, $filter);

Если $ dn - это что-то вроде CN = Test, OU = Group, DC = OCJ, DC = Domain, DC = Com. Так что я знаю, что он принимает guid, но я бы хотел пропустить часть $ dn, читая ТОЛЬКО GUID.

Есть предложения? Я не могу найти ничего, говорящего, что ldap_read может читать напрямую с GUID.

Ответы [ 2 ]

1 голос
/ 30 декабря 2011

Чтобы прочитать только guid, укажите третьи параметры, которые определяют, какие атрибуты вы хотите вернуть. Второй параметр $ dn является обязательным, он задает область поиска, и вы всегда можете установить для него значение root_dn, если хотите быть менее конкретным.

Если вы не хотите, чтобы в массиве результирующих наборов не было записей dn, это невозможно сделать напрямую, поскольку это API-функция функции ldap_read, но вы можете отфильтровать их, пройдя по массиву (карте).

$search = ldap_read($ds, $root_dn, $filter, array('objectguid'));
0 голосов
/ 30 декабря 2011

Вы также можете привязать по GUID.Установите $ dn на <GUID={guid-goes-here}>

...