Мне нужно запросить атрибуты около 10 000 пользователей. У меня есть запрос ldapsearch, который работает для одного пользователя. Вот соответствующая часть, где я ищу objectGUID
атрибут пользователя abc123
:
ldapsearch -h somehost.com -D "CN=valid_user,DC=valid_everything" -q -b "OU=valid_ou,DC=valid_dc" -s sub "cn=abc123" -L objectGUID
Я хотел бы поместить все свои запросы в файл и использовать -f myqueries.txt
вариант. Поскольку этот запрос будет выполняться через SSL, я хотел бы избежать согласований 10k SSL, которые я получил бы, если бы я запускал 10k отдельных ldapsearch.
Я пробовал с файлом, который выглядит так:
(cn=abc123)
(cn=lmn456)
(cn=xyz789)
С помощью этой измененной командной строки:
ldapsearch -v -h somehost.com -D "CN=valid_user,DC=valid_everything" -q -b "OU=valid_ou,DC=valid_dc" -s sub -f myqueries.txt -L objectGUID
Но я всегда получаю Bad search filter
ошибка.
Мне не удалось определить, какая это версия ldapsearch. Он работает в специальном дистрибутиве Linux.
Как я могу использовать -f
возможность заставить ldapsearch использовать запросы, прочитанные из файла?
Файл должен выглядеть так:
abc123
lmn456
xyz789
и выполните такую команду:
ldapsearch -v -h somehost.com -D "CN=valid_user,DC=valid_everything" -q -b "OU=valid_ou,DC=valid_dc" -s sub -f myqueries.txt "(cn=%s)" -L objectGUID
Файл, указанный после -f, может содержать только параметры запроса, но не самого запроса.