Как организовать такой вот LDAP-запрос?
От: partigian  
Дата: 26.12.07 15:24
Оценка:
Подскажите, пожалуйста, какую строчку нужно ввести в поисковичке по AD, чтобы получить список компов, входящих в Organizational Unit "TheUnit" данного домена?
Сам я с Директорией не работаю особо, просто надо будет в программе своей реализовать такой поиск(получить список имен компов), а для этого не мешало бы знать как выглядит соответствующий LDAP-запрос. Помогите, пожалуйста!
Re: Как организовать такой вот LDAP-запрос?
От: DOOM Россия  
Дата: 27.12.07 05:38
Оценка:
Здравствуйте, partigian, Вы писали:

P>Подскажите, пожалуйста, какую строчку нужно ввести в поисковичке по AD, чтобы получить список компов, входящих в Organizational Unit "TheUnit" данного домена?

P>Сам я с Директорией не работаю особо, просто надо будет в программе своей реализовать такой поиск(получить список имен компов), а для этого не мешало бы знать как выглядит соответствующий LDAP-запрос. Помогите, пожалуйста!

Сама строчка будет (objectClass=computer), просто база поиска будет OU=<Имя>,DC=example,DC=com.


Например, вызов утилиты ldapserach будет иметь вид (bind DN, LDAP хост и т.п. я опускаю):

ldapsearch -b OU=buhgalteria,DC=example,DC=com -s sub (objectClass=computer)
Re[2]: Как организовать такой вот LDAP-запрос?
От: partigian  
Дата: 27.12.07 09:50
Оценка:
Здравствуйте, DOOM, Вы писали:

DOO>Сама строчка будет (objectClass=computer), просто база поиска будет OU=<Имя>,DC=example,DC=com.



DOO>Например, вызов утилиты ldapserach будет иметь вид (bind DN, LDAP хост и т.п. я опускаю):


DOO>
DOO>ldapsearch -b OU=buhgalteria,DC=example,DC=com -s sub (objectClass=computer)
DOO>


Спасибо за ответ! Но я его представлял несколько в ином виде. Я предполагал что можно написать некоторую строчку в специальном диалоге(см. картинку) и после нажатия на кнопку "найти" выведется список как раз того, что надо. Потом предполагается использовать эту самую строчку в качестве фильтра в методе ExecuteSearch.

Такая вот строчка не неходит ничего:
Re[3]: Как организовать такой вот LDAP-запрос?
От: DOOM Россия  
Дата: 27.12.07 10:12
Оценка:
Здравствуйте, partigian, Вы писали:

P>Такая вот строчка не неходит ничего:

P>

Очевидно. Потому что запрос гласит: найти все объекты с классом computer и атрибутом OU с произвольным значением. Таких нет...

Вообще поиск в LDAP задается 4-мя параметрами:

1. База поиска
2. Область поиска (только база, все дети базы или все поддерево базы).
3. Фильтр поиска — тот самый (objectClass=computer). Четко определен в RFC4515
4. Список атрибутов, которые надо вернуть.

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

P.S. Поэкспериментировать можешь с утилитой DSQuery — синтаксис такой:
dsquery * <base DN> -filter <LDAP filter> -attr <список атрибутов или *>
Re[2]: Как организовать такой вот LDAP-запрос?
От: partigian  
Дата: 27.12.07 10:21
Оценка:
Здравствуйте, DOOM, Вы писали:

DOO>Сама строчка будет (objectClass=computer), просто база поиска будет OU=<Имя>,DC=example,DC=com.



DOO>Например, вызов утилиты ldapserach будет иметь вид (bind DN, LDAP хост и т.п. я опускаю):


DOO>
DOO>ldapsearch -b OU=buhgalteria,DC=example,DC=com -s sub (objectClass=computer)
DOO>


А, понял! Надо писать в SearchBase что-то вроде "GC://domain.xxx.ru/OU=TheUnit", только вот с форматом походу придется повозиться))
Re[3]: Как организовать такой вот LDAP-запрос?
От: ralfeus  
Дата: 04.01.08 09:39
Оценка:
Здравствуйте, partigian, Вы писали:

P>А, понял! Надо писать в SearchBase что-то вроде "GC://domain.xxx.ru/OU=TheUnit", только вот с форматом походу придется повозиться))


Проблема возникает тогда, когда не знаешь, где именно находится нужный OU, а знаешь только его имя....
Re[4]: Как организовать такой вот LDAP-запрос?
От: DOOM Россия  
Дата: 09.01.08 05:00
Оценка:
Здравствуйте, ralfeus, Вы писали:


R>Проблема возникает тогда, когда не знаешь, где именно находится нужный OU, а знаешь только его имя....


Делаешь два запроса... В чем проблема?
Re[5]: Как организовать такой вот LDAP-запрос?
От: ralfeus  
Дата: 02.03.08 16:42
Оценка:
Здравствуйте, DOOM, Вы писали:

DOO>Делаешь два запроса... В чем проблема?


Например в том, что если я хочу создать в Exchange адресную книгу, то там нужно задать все одним запросом. И часто нужно именно выбирать всех из конкретного OU.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.