dn: olcDatabase={1}hdb,cn=config
objectclass: olcDatabaseConfig
objectclass: olcHdbConfig
olcaccess: {0}to dn.subtree="ou=subtree,dc=domain,dc=tld" by self write by dn="cn=subadmin,dc=domain,dc=tld" write by users read by anonymous none
olcaccess: {1}to attrs=userPassword,shadowLastChange by self write by anonymous auth by dn="cn=admin,dc=mpbteam,dc=de" write by * none
olcaccess: {2}to dn.base="" by * read
olcaccess: {3}to * by self write by dn="cn=admin,dc=domain,dc=tld" write by * read
Я застрял в понимании ACL-Order. Пользователи поддерево и dn: cn = subadmin, dc = domain, dc = tld должны иметь возможность изменять свои собственные пароли, но они не соответствуют этому набору правил, как и subtree-admin, но администратор поддерева может писать новые dn. Если я удалю ACL, {0} пользователи могут снова изменить это, но мне нужен поддерево-админ с доступом на запись для каждого поддерева.
С уважением,
Maik
Порядок строк ACL имеет значение.
olcaccess: {0}to dn.subtree="ou=subtree,dc=domain,dc=tld"
by self write
by dn="cn=subadmin,dc=domain,dc=tld" write
by users read
by anonymous none
olcaccess: {1}to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by dn="cn=admin,dc=mpbteam,dc=de" write
by * none
olcaccess: {2}to dn.base=""
by * read
olcaccess: {3}to *
by self write
by dn="cn=admin,dc=domain,dc=tld" write
by * read
Вы можете избавиться от {2}, потому что он описан в {3}, и вам нужно поменять местами {1} и {0}. Это потому, что атрибуты являются частью поддерева, и вы сообщили LDAP, что поддерево доступно для чтения только пользователям. Пытаться:
olcaccess: {0}to attrs=userPassword,shadowLastChange
by self write
by users write
by anonymous auth
by dn="cn=admin,dc=mpbteam,dc=de" write
olcaccess: {1}to dn.subtree="ou=subtree,dc=domain,dc=tld"
by self write
by dn="cn=subadmin,dc=domain,dc=tld" write
by users read
by anonymous none
olcaccess: {2}to *
by self write
by dn="cn=admin,dc=domain,dc=tld" write
by * read
Вам также не нужен by * none, он подразумевается.
Конечно, я не пробовал это, так как у меня вообще проблемы с редактированием моей конфигурации ... не могли бы вы взглянуть на:
Сбой сценария сборки LDAP на openLDAP-2.4.31 (ldapmodify -Y EXTERNAL -H ldapi: ///)
для меня?