OpenLDAP: преобразование схемы AD из * .ldif в * .schema

Я запускаю OpenLDAP 2.4.44 с модулем back_ldap в качестве прокси-сервера LDAP для MS-AD-серверов (см. Подробности: openLDAP как прокси для Active Directory ).

Теперь мне нужно добавить схемы с сервера AD на сервер OpenLDAP, и я экспортировал схемы с сервера MS-AD с помощью ldapsearch в файл ldif (подробности см .: Как я могу получить информацию о схеме с сервера? ).

Теперь мне нужно преобразовать формат ldif в формат схемы для OpenLDAP slapd.conf. Невозможно загрузить ldif с помощью ldapadd, потому что OpenLDAP работает в режиме прокси, поэтому каждый запрос будет перенаправлен на серверы MS-AD.

Как преобразовать ldif-файл в файл схемы? Есть какой-нибудь инструмент. Или как добавить ldif-файл для загрузки через slapd.conf.

3
задан 2 December 2016 в 18:44
1 ответ

Вам нужно удалить атрибуты dn , cn и objectClass и заменить все вхождения olcAttributeTypes: и olcObjectClasses: на attributetype и objectclass соответственно.

Вы также можете сделать это через оболочку.

Однострочный в оболочке Linux:

sed '/^dn: /d;/^objectClass: /d;/^cn: /d;s/olcAttributeTypes:/attributetype/g;s/olcObjectClasses:/objectclass/g' file.ldif > file.schema

Соответствующая команда в Windows PowerShell:

Get-Content file.ldif | Where { $_ -notmatch "^dn: " } | Where { $_ -notmatch "^objectClass: " } | Where { $_ -notmatch "^cn: " } | %{ $_ -replace "olcObjectClasses:", "objectclass" } | %{ $_ -replace "olcAttributeTypes:", "attributetype" } | Out-File file.schema
2
ответ дан 3 December 2019 в 06:57

Теги

Похожие вопросы