Назад | Перейти на главную страницу

Как разрешить пользователям на сервере openLDAP создавать, обновлять и изменять пользователей в рамках определенной организационной единицы?

Я застрял, пытаясь разрешить пользователям openLDAP, которые находятся в определенной группе (EX: cn=Admins,dc=mydomain,dc=com) к create, modify, update, and delete пользователи, которые находятся в другом organizationalUnit (Пример: ou=Users,dc=mydomain,dc=com) около двух недель. Я сделал все, что в моих силах, чтобы разобраться в этом. Например, поиск через Google, поиск через serverfault, и, наконец, поиск по переполнение стека но безрезультатно. Я новичок в openLDAP, и, вероятно, это ошибка и / или что-то, что я не замечаю с olcAccess атрибут в dn: olcDatabase={1}hdb,cn=config.

Admin Group.ldif

dn: cn=Admins,dc=ldapserver,dc=com
changetype: add
objectClass: groupOfNames
objectClass: top
member: cn=admin,ou=Users,dc=ldapserver,dc=com
cn: Admins

Users.ldif

dn: ou=Users,dc=ldapserver,dc=com
changetype: add
objectClass: organizationalUnit
objectClass: top
ou: Users

По умолчанию olcAccess

Примечание: Это списки ACL по умолчанию, которые поставляются с новой установкой сервера openLDAP.

dn: olcDatabase={1}hdb,cn=config
olcAccess: {0}to attrs=userPassword by self write by anonymous auth by * none
olcAccess: {1}to attrs=shadowLastChange by self write by * read
olcAccess: {2}to * by * read

Обратите внимание 1: Поскольку я новичок в openLDAP, я не устанавливал других ACLs кроме тех, которые появляются по умолчанию при первой установке сервера openLDAP.

Обратите внимание 2: Прежде чем я задал свой вопрос, я попробовал этот вопрос Вот что явно не сработало для меня.

Спасибо алекс

ACL в openldap всегда оцениваются сверху вниз в списке строк с номерами {0}, {1}, .. Как только условие выполнено, выполняется оценка немедленно остановлен (при условии, что перерыв не используется).

В списках ACL по умолчанию, установленных Ubuntu и соответствующих требованиям, есть строка:

olcAccess: {2}к * автор: * читать

to * by *: все встретил, добавление строк после не имеет никакого эффекта.

Решение, обсуждаемое на эта ссылка и выше должно решить вашу проблему, я предлагаю вам попробовать этот список ACL:

olcAccess: {0}to attrs=userPassword by self write by anonymous auth by * none
olcAccess: {1}to attrs=shadowLastChange by self write by * read
olcAccess: {2}to dn.subtree="ou=Users,dc=ldapserver,dc=com"
             by group/groupOfUniqueNames/uniqueMember="cn=Admins,dc=ldapserver,dc=com" write

и измените objectClass группы администраторов на groupOfUniqueNames.