Попытка запустить AD-подобный сервер для проверки запросов ldap для «пользовательских» сущностей.
Тест:
import org.zapodot.junit.ldap.EmbeddedLdapRule
import org.zapodot.junit.ldap.EmbeddedLdapRuleBuilder
class FooSpec extends Specification {
@Rule
public EmbeddedLdapRule embeddedLdapRule = EmbeddedLdapRuleBuilder
.newInstance()
.withSchema('schema.ldif')
.importingLdifs('import.ldif')
//...
}
schema.ldif:
dn: cn=user,cn=schema,cn=configuration,dc=example,dc=com
changetype: add
objectclass: classSchema
governsId: 1.2.840.113556.1.5.9
objectClassCategory: 1
subClassOf: organizationalPerson
lDAPDisplayName: user
description: a user
import.ldif:
dn: CN=alice,DC=example,dc=com
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: person
objectClass: user
cn: alice
sn: alice
Получение:
Невозможно добавить запись 'CN = alice, DC = example, dc = com', поскольку она нарушает предоставленную схему: запись содержит объектный класс user, который не определен в схеме.
Что я делаю не так?
Спасибо!