openldap - не может создать файл ldif из файла схемы

Я пытаюсь добавить свою собственную схему в OpenLDAP, но когда я конвертирую.schema -> .ldif с использованием slaptest, в каталоге назначения ничего не появляется, кроме некоторых схем по умолчанию. Шахта не создается. Я добавил путь к slapd.conf. Я создаю файл.schema через Apache Directory Studio:

attributetype ( 2.0.0.0.1 
    NAME 'objectName'
    DESC ''
    EQUALITY caseIgnoreMatch
    SUBSTR caseIgnoreSubstringsMatch
    SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
attributetype ( 2.0.0.0.2 
    NAME 'editableObject'
    DESC ''
    EQUALITY caseIgnoreMatch
    SUBSTR caseIgnoreSubstringsMatch
    SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
    USAGE userApplications )
attributetype ( 2.0.0.0.3 
    NAME 'mailDesc'
    DESC ''
    EQUALITY caseIgnoreMatch
    SUBSTR caseIgnoreSubstringsMatch
    SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
    USAGE userApplications )
attributetype ( 2.0.0.0.4 
    NAME 'visibleObject'
    DESC ''
    EQUALITY caseIgnoreMatch
    SUBSTR caseIgnoreSubstringsMatch
    SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
    USAGE userApplications )
attributetype ( 2.0.0.0.5 
    NAME 'objectDesc'
    DESC ''
    EQUALITY caseIgnoreMatch
    SUBSTR caseIgnoreSubstringsMatch
    SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
    USAGE userApplications )
objectclass ( 2.0.0.1.1 
    NAME 'myObject'
    DESC ''
    SUP top
    AUXILIARY
    MAY ( objectName $ objectDesc ) )
objectclass ( 2.0.0.1.2 
    NAME 'myRole'
    DESC ''
    AUXILIARY
    MAY ( editableObject $ visibleObject ) )
objectclass ( 2.0.0.1.3 
    NAME 'myUser'
    DESC ''
    AUXILIARY
    MAY ( editableObject $ visibleObject $ mailDesc ) )

У вас есть идеи, почему нет файла.ldif?

1 ответ

Решение

Я пытаюсь добавить свою собственную схему в OpenLDAP, но когда я конвертирую.schema -> .ldif с использованием slaptest, в каталоге назначения ничего не появляется, кроме некоторых схем по умолчанию.

slaptest сделал именно то, что вы описали: конвертировать схему в ldif. Вы никогда не добавляли ldif в каталог. (В любом случае slaptest можно добавить в каталог ldif, как подсказывает имя команды, это делать тесты, а не изменять каталог)

Шахта не создается.

LDIF создан, он просто не добавлен в каталог

Я добавил путь к slapd.conf

Здесь нет slapd.conf использовать для конфигурации OpenLDAP с годами. Вы должны использовать cn=config филиал, чтобы сделать это

Я создаю файл.schema через Apache Directory Studio

Как указано выше, .schema файлы использовались старой системой конфигурации OpenLDAP. Теперь вы должны использовать cn=config ветка

Для получения дополнительной информации:

  • Схемы хранятся внутри cn=config филиал в: cn=schema,cn=config
  • Чтобы добавить свою схему, вы должны добавить следующую запись: cn={x}myschema,cn=schema,cn=config который содержит ldif, например:
    dn: cn = {4} myschema, cn = схема,cn=config
    objectClass: olcSchemaConfig
    cn: {4}myschema
    olcAttributeTypes: {0}( 0.0.0.0.0.1.1 NAME 'code' DESC 'Некоторые идентификаторы кода в' SUP description)
    olcAttributeTypes: {1}( 0.0.0.0.0.1.2 NAME ( 'latitude' 'lat') DESC 'Latitude
     ' SUP описание)
    olcObjectClasses: {5}( 0.0.0.0.0.2.6 NAME 'groupCustom' DESC ' Группа имен (DN) с необязательным атрибутом члена ' SUP top СТРУКТУРА ДОЛЖНА ( cn) МОЖЕТ ( member $ seeAlso $ owner $ description))
    olcObjectClasses: {6}( 0.0.0.0.0.2.7 NAME 'groupDynamic' DESC ' ДИНАМИЧЕСКАЯ группа имен (DN) с необязательным атрибутом члена ' SUP top СТРУКТУРА ДОЛЖНА ( cn $ dynListURL) МОЖЕТ (член $ seeAlso $ owner $ description))

Примечание. Этот пример является результатом slapcat и никоим образом LDIF, описывающий ldapadd операция для добавления схемы в каталог. Но вы все равно можете импортировать его в Apache Directory Studio, если вы не хотите писать LDIF для использования с ldapadd операция

Для получения дополнительной информации, прочитайте http://www.zytrax.com/books/ldap/ch6/slapd-config.html

Другие вопросы по тегам