Фронтэнд для ldap-клиента OpenLDAP

LDAP
Дописал версию 1.0.1 фронтэнда и одновременно — API на языке оболочки BASH для стандартных LDAP-утилит из состава OpenLDAP
Фронтэнд позволяет:
1) Использовать «параметры по умолчанию» из конфигурационного файла в формате INI, каждая секция в котором описывает соединение с определённым сервером.
На данный момент в INI-файле можно задать такие параметры коннекта к LDAP-серверу, как:
BIND DN, BIND PASSWORD, BASE DN (база поиска по дефолту), ROOT DN (суфикс каталога);
2) Автодополнять DN-ы суфиксом каталога;
2) Гибко форматировать LDIF-вывод, нормализуя строки: значение атрибута длиной больше 79-ти символов будет выведено в одну строку;
3) Убирать BASE64-кодирование значений атрибутов там, где это требуется;
3) Получать информацию о глобальных настройках LDAP-каталога и его схеме с помощью команд ldapgetcaps и ldapgetschema соответственно.

Вот как это выглядит в действии на примере ldapsearch:
ldapsearch -c EXAD -N --b64 dn -- '(sAMAccountName=konovalov)' mail

Здесь «EXAD» — имя секции в config-файле, описыавющей параметры соединения и базу поиска «по умолчанию» (заметьте, что в самой команде ldapsearch параметр -b опущен)

Если кому-то сие интересно, могу выложить архив на FTP

P.S. Код потенциально ОЧЕНЬ интересен, поскольку львиная его доля находится в универсальных модулях, не имеющих отношения к ldap-специфике, а просто подключаемых во фронтэнде. Например, там есть функция getArgs (обработка ключей командной строки), по степени проработки сопоставимая с аналогами на языке Perl. Есть ещё parseINI, chk_fl, dbg_out, ну и многое-многое другое, что должно быть полезно хотя бы с точки зрения реализации заложенных в этом идей.

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.