Назад | Перейти на главную страницу

Динамически переводить posixGroup в groupOfNames в slapd (Apple Open Directory)

Я настраиваю приложение для аутентификации в Open Directory с помощью LDAP.

Open Directory хранит группы в формате posixGroups RFC 2307, например:

cn: mygroup
objectClass: top
objectClass: apple-group
objectClass: posixGroup
apple-group-memberguid: AA7B69F2-84E1-4ED3-AEC6-25AD976DB1C7
memberUid: noa

Но приложение ожидает, что группы будут в стиле формата groupOfNames базовой схемы LDAP, например:

cn: mygroup
objectClass: top
objectClass: groupOfNames
member: uid=noa,cn=users,dc=myserver,dc=example,dc=private

Другими словами, сервер каталогов предоставляет неквалифицированный uid, тогда как приложению требуется DN.

Как настроить slapd на:

  1. Динамически предоставить объект, который выглядит как groupOfNames (дублируется сверху):

    cn: mygroup
    objectClass: top
    objectClass: groupOfNames
    member: uid=noa,cn=users,dc=myserver,dc=example,dc=private
    
  2. Или динамически генерировать дополнительные атрибуты с DN членов группы, например:

    cn: mygroup
    objectClass: top
    objectClass: apple-group
    objectClass: posixGroup
    apple-group-memberguid: AA7B69F2-84E1-4ED3-AEC6-25AD976DB1C7
    memberUid: noa
    memberDn: uid=noa,cn=users,dc=myserver,dc=example,dc=private
    

Похоже, наложение OpenLDAP может это сделать, но мне нужна помощь в деталях.

(Это приложение BusinessObjects Crystal Reports Server. Служба поддержки сообщает, что они не поддерживают OpenLDAP, но после исследования серверов каталогов они делать support, я считаю, что это должно работать с помощью некоторого перевода. Я могу настроить имена классов и атрибутов, но, повторяю, группа должна предоставлять членов с использованием DN, а не UID.)