Perl для системного администрирования


           

с многими другими задачами системного




Программирование LDAP на Perl



Как и с многими другими задачами системного администрирования в Perl, первым делом при программировании LDAP следует выбрать нужный модуль. Хотя LDAP еще не самый сложный протокол, но это уже и не обычный текстовый протокол. В результате, создать что-нибудь, «говорящее» на LDAP, задача нетривиальная. К счастью, другие авторы уже сделали эту работу за нас: Грэм Бар (Graham Barr) написал модуль Net: : LDAP, а Лейф Хедстром (Leif Hedstrom) и Клейтон Донли (Clayton Donley) создали модуль Mozilla: :LDAP (также известный как PerLDAP). Отметим некоторые различия между этими двумя модулями (табл. 6.1).

Таблица 6.1. Сравнение двух LDAP-модулей



























Возможность




Net::LDAP




Mozilla::LDAP (PerLDAP)


Переносимость

Зашифрован-

ные SSL-сеансы

Асинхронные

операции



Только Perl

Да

Да



Требует Mozilla/Netscape LDAP C-SDK (исход-

ный код свободно доступен). SDK компилиру-

ется на многих вариантах Unix, NT и MacOS

Да

Только с не объектно-ориентированными API

низкого уровня



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

главе 10 «Безопасность и наблюдение за сетью». Для облегчения сравнения в большей части примеров из этого раздела приведен синтаксис обоих LDAP-модулей. Строка use modulename в тексте каждого примера подскажет, какой модуль используется на этот раз.

В демонстрационных целях мы почти равнозначно будем использовать коммерческий сервер Netscape 4.0 Directory Server и свободно распространяемый сервер OpenLDAP (они находятся на http://www.netscape.com и http:// www.openldap.org). В состав обоих серверов входят практически идентичные утилиты командной строки, которые можно использовать для прототипирования и проверки программ на Perl.


Содержание  Назад  Вперед