Как выбрать все DN в OU - PullRequest
       30

Как выбрать все DN в OU

0 голосов
/ 23 марта 2012

для приложения мне нужно собрать все DN в OU и показать их в списке. вторая часть я знаю, как это сделать. но я знаю, как получить DN от OU. Я посмотрел в интернете, но не нашел то, что искал. (Позволяет узнать, как получить атрибуты из DN. Но не узнать, как получить de DN из OU).

DN сборки:

CN=cn,OU=ou2,OU=group,OU=ou1,DC=dc2,DC=dc1

Я подозреваю, что мне нужно использовать ldap_search, но не знаю как (какой фильтр использовать)

HTML:

<form class="frm_groep" action="index.php?pid=21" method="post">
  <div class="input">
    Naam:
    <input type="text" name="naamRecht" />
    <br />
    <br />
    Path LDAP:
    <input type="text" id="LDAP" name="LDAPgroep" />
    <br />
    <br />
    <select multiple="multiple" class="double" id="LDAPselection">
       here is where the DN's wil end up
    </select>
  </div>
  <div style="clear:both"></div>
  <div class="controles">
    <input type="reset" value="Legen" />
    <input type="submit" name="recht" value="Aanmaken" />
  </div>
</form>

приложение будет написано на PHP.

1 Ответ

1 голос
/ 23 марта 2012

Чтобы извлечь все записи (которые являются отличительными именами), подчиненные записи (ou в вашем примере), приложение должно передать запрос на поиск на сервер, а затем интерпретировать ответ от сервера.Поисковые запросы должны содержать как минимум:

  • базовый объект
  • область поиска (base, one или sub)
  • filter
  • список атрибутов, возвращаемых с каждой соответствующей записью

Фильтр должен быть фильтром, который «фильтрует» или «ограничивает» записи, возвращаемые с сервера.Например, фильтр (objectClass=*) (фильтр присутствия) будет сопоставлять все записи базового объекта или ниже базового объекта (в зависимости от области действия) с атрибутом objectClass, заполненным данными (то есть всеми записями, поскольку все записи должныиметь хотя бы один атрибут objectClass. Фильтр (objectClass=inetOrgPerson) будет соответствовать всем записям с атрибутом objectClass, заполненным значением inetOrgPerson. Фильтр (cn=xyzzy) будет соответствовать всем записям с cnатрибут с указанным значением (фильтр равенства). Поэтому ваш фильтр должен быть выбран для возврата записей, которые соответствуют указанным критериям. Если вы хотите, чтобы все записи подчинялись записи (ou=whatever в вашем случае), то вы должны намфильтр '(&)' или '(objectClass=*)'.

Ваш администратор каталога может не разрешить получение большого количества записей, поэтому кодировщик приложения должен проконсультироваться с администраторами сервера, прежде чем пытаться получить большие числазаписей.

см. также

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...