Создание раздела в Apache Directory с помощью LDIF - PullRequest
0 голосов
/ 31 января 2019

Я использую встроенную версию Apache Directory.Он заполняется файлом LDIF, который вы передаете ему при запуске.Я пытаюсь реплицировать структуру из структуры LDAP клиента, базовый узел которой равен o = Communities .

Похоже, что при создании базового узла Apache Directory требует, чтобы для него был создан раздел.

Я могу создать двухуровневый определенный раздел (dc = пример, dc = org)со следующим кодом LDIF:

dn: ads-partitionId=example,ou=partitions,ads-directoryServiceId=default,ou=config
objectclass: top
objectClass: ads-base
objectclass: ads-partition
objectclass: ads-jdbmPartition
ads-partitionSuffix: dc=example,dc=org
ads-contextentry:: ZG46IGRjPWV4YW1wbGUsZGM9b3JnCmRjOiBleGFtcGxlCm9iamVjdGNsYXNzOiBkb21haW4Kb2JqZWN0Y2xhc3M6IHRvcA==
ads-jdbmpartitionoptimizerenabled: TRUE
ads-partitioncachesize: 10000
ads-partitionsynconwrite: TRUE
ads-partitionid: example
ads-enabled: TRUE

dn: dc=example,dc=org
dc: example
objectclass: domain
objectclass: top

Приведенный выше код работает правильно и создает org и пример узла в дереве.(Ad-contextentry - это представление base64 записи домена)

Однако я не могу создать одноуровневый определенный раздел:

dn: ads-partitionId=example,ou=partitions,ads-directoryServiceId=default,ou=config
objectclass: top
objectClass: ads-base
objectclass: ads-partition
objectclass: ads-jdbmPartition
ads-partitionSuffix: dc=example
ads-contextentry:: ZG46IGRjPWV4YW1wbGUKZGM6IGV4YW1wbGUKb2JqZWN0Y2xhc3M6IGRvbWFpbgpvYmplY3RjbGFzczogdG9w
ads-jdbmpartitionoptimizerenabled: TRUE
ads-partitioncachesize: 10000
ads-partitionsynconwrite: TRUE
ads-partitionid: example
ads-enabled: TRUE

dn: dc=example
dc: example
objectclass: domain
objectclass: top

Сбой из-за ошибки:

org.apache.directory.api.ldap.model.exception.LdapNoSuchObjectException: ERR_268 Не удается найти раздел для dc = пример

При попытке создать такую ​​же ошибкураздел с единым идентификатором организации

dn: ads-partitionId=example,ou=partitions,ads-directoryServiceId=default,ou=config
objectclass: top
objectClass: ads-base
objectclass: ads-partition
objectclass: ads-jdbmPartition
ads-partitionSuffix: o=example
ads-contextentry:: ZG46IG89ZXhhbXBsZQpvOiBleGFtcGxlCm9iamVjdGNsYXNzOiBvcmdhbml6YXRpb24Kb2JqZWN0Y2xhc3M6IHRvcA==
ads-jdbmpartitionoptimizerenabled: TRUE
ads-partitioncachesize: 10000
ads-partitionsynconwrite: TRUE
ads-partitionid: example
ads-enabled: TRUE

dn: o=example
o: example
objectclass: organization
objectclass: top

Ошибка:

org.apache.directory.api.ldap.model.exception.LdapNoSuchObjectException: ERR_268 Не удается найти раздел для o= пример

Пожалуйста, дайте мне знать, если есть ограничение на элементы, которые я могу определить как раздел, или я делаю что-то здесь неправильно.

Спасибо.

...