Добрый день.
Понадобилось мне сгенерировать файл со списком почтовых адресов пользователей AD (WinServer2003).Команда
/usr/local/bin/ldapsearch -h 192.168.1.1 -D 'cn=administrator,cn=Users,dc=example,dc=com' -w 'BigSecret' -b 'dc=example,dc=com' | perl -ne 'print if /proxyAddresses/' | perl -aF: -lne 'print "$F[2] OK"' | grep @
выводит список типа
ivanov@example.com
petrov@example.com
.....
Но проблема в следующем. В приведенном примере для запрорса используется аккаунт администратора, что не есть гуд. Когда использую аккаунт обычного пользователя, то выпадает ошибка
ldap_bind: Invalid credentials (49)
additional info: 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, veceВ чем трабла?
Заранее благодарю.
трабла скорее всего в том, что вы пытаетесь просмотреть ВСЮ базу сразу, а только потом её обрабатывать (причём двумя отдельными перловскими процесами да плюс ещё одним grep)
Поиск в лдап - сам по себе слишком мощная штука, что бы ей пренебрегать.
Что же касается ошибки ldap_bind - надо копать в сторону прав доступа к атрибутам (возможно сделать ещё одного пользователя из группы "Администраторы" и подключаться от него).