Как добавить новое поле в открытую схему ldap - PullRequest
1 голос
/ 05 августа 2010

Какой самый простой способ добавить новое поле в список потенциальных полей в существующей схеме ldap?

Как это повлияет на существующие записи?

Поле будет добавлено на самом глубоком уровне dn (каждая учетная запись пользователя).

1 Ответ

0 голосов
/ 05 августа 2010

Как правило, вы можете расширить схему сервера LDAP. Конкретные детали зависят от базовой службы, предоставляющей LDAP. (Active Directory немного отличается от eDirectory и немного отличается от OpenLDAP или SunOne).

Однако общей для всех этих возможных серверов LDAP является концепция вспомогательного класса.

Базовая схема, поставляемая с сервером, обычно имеет классы Structural, которые вы действительно можете использовать для объектов. Другой - это абстрактные классы, которые на самом деле являются просто заполнителями, так что вы можете наследовать от них другие классы (скажем, структурный класс). Возможно, два класса Structural могут наследоваться от одного и того же абстрактного класса, что делает определения более простыми и понятными.

Наконец мы подошли к вспомогательным классам, которые, вероятно, являются наиболее полезными. Эти классы не могут стоять самостоятельно, но вы можете добавить имя класса в список атрибутов Object Class (objectClass), и тогда можно будет использовать дополнительные атрибуты, определенные в классе Aux.

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

...