Добавление нового объектного класса / атрибута к существующей записи ldap возвращает ошибку
Я создал 4 новых атрибута в cn=schema, а также создал новый объектный класс с 4 атрибутами, установленными как MUST.
Я попытался добавить объектный класс к существующей записи, которая, очевидно, возвращает ошибку, потому что эти 4 новых атрибута не настроены для записи ldap.
Я создал файл ldif и запустил ldapmodify, но получил ошибку нарушения объекта. Может кто-нибудь сказать мне, что вызывает эту ошибку, и если я что-то упустил
LDIF
#ldapmodify.bat -h localhost -p 1389 -D "cn=Directory Manager" -w xxxxx -a -f entry.ldif
dn: uid=user.0,ou=People,dc=example,dc=com
changetype: modify
add: disabledFlag
disabledFlag: n
-
add: passwordData
passwordData:< file:/C:\\oud\\asinst_1\\OUD\\bat\\images.png
-
add: anonymousID
anonymousID: nah
-
add: challengeResponse
challengeResponse: nah
Ошибка после выполнения команды.
Processing MODIFY request for uid=user.0,ou=People,dc=example,dc=com
MODIFY operation failed
Result Code: 65 (Object Class Violation)
Additional Information: Entry uid=user.0,ou=People,dc=example,dc=com cannot not be modified because the resulting entry would have violated the server schema: Entry uid=user.0,ou=People,dc=example,dc=com violates the Directory Server schema configuration because it includes attribute anonymousID which is not allowed by any of the objectclasses defined in that entry
Установлен LDAP OUD 11gR2.
1 ответ
Наконец-то смог решить вопрос сам.
Это то что я сделал
- Изменен STRUCTURAL на ABSTRACT для объектного класса, поскольку может быть только один STRUCTURAL и обновленный объектный класс, чтобы иметь атрибуты MAY вместо MUST.
- использовал порт ldap вместо порта администратора в команде изменения ldap.
Я до сих пор не могу понять, почему нельзя создать объектный класс с MUST? Эта курица и яйцо - проблема?