OpenLDAP Give Group Write Access

В нашем openldap есть несколько групп: useradmins, agt, ib, iss, itt

Группа useradmins всегда имела права на редактирование (запись) для всех групп. Недавно я выполнил простое «yum update», и openldap был обновлен. С того времени (около 3 дней назад) администраторы не могут писать (добавлять или изменять пользователей). Ошибка:

Недостаточный доступ - нет доступа на запись к родительскому

... или, в зависимости от моих проб / ошибок с файлом slapd.conf, иногда я просто получаю:

Недостаточный доступ

Я редактировал свой файл slapd.conf (около 500 раз), пробуя разные настройки при чтении онлайн-сообщений, документов и т. Д. Мой текущий файл slapd.conf выглядит следующим образом:

...
database        bdb
suffix          "dc=am5up,dc=com"
directory       /var/lib/ldap

index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber               eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub
index entryCSN                          eq
index entryUUID                         eq

access to *
          by self write
          by dn="cn=admin,dc=am5up,dc=com" write
          by group/groupOfUniqueNames/uniqueMember="cn=useradmins,ou=groups,dc=am5up,dc=com" write
          by * read
rootdn    "cn=admin,dc=am5up,dc=com"
rootpw    <hashed pwd>
...

Я предполагаю, что строка неверна:

group/groupOfUniqueNames/uniqueMember="cn=useradmins,ou=groups,dc=am5up,dc=com" write

... но я безуспешно пробовал десятки вариантов.

Кто-нибудь может внести какие-либо предложения?

Весьма признателен.

1
задан 29 October 2016 в 03:19
1 ответ

Итак, согласно комментарию группа выглядит следующим образом:

dn: cn = useradmins, ou = group, dc = am5up, dc = com

cn: useradmins

] gidnumber: 10001

memberuid: mscot

objectclass: posixGroup

memberuid: nhman

memberuid: taden

memberuid: japid

но в соответствии с acl:

by group / groupOfUniqueNames / uniqueMember = "cn = useradmins, ou = groups, dc = am5up, dc = com" write

Группа должна иметь objectClass groupOfUniqueNames и uniqueMember (кому вы хотите предоставить доступ). Но в группе, показанной выше, их нет, поэтому теперь вы можете сделать две вещи:

  • Добавить объектный класс groupOfUniqueNames и его членов uniqueMember , ACL будет работать надежно.

ИЛИ

  • Проведя небольшое исследование, я обнаружил, что у posixGroup есть только такой синтаксис. Вы можете использовать для предоставления доступа членам posixGroup. Вы должны сделать что-то вроде:
 доступ к *
  что угодно
  by set = "user / uid & [cn = useradmins] / memberuid" написать
  автор: * none
 

Для « user / uid » это будет применимо, если memberuids являются фактическими uid участников, в противном случае укажите любой атрибут, который вы используете.

1
ответ дан 3 December 2019 в 23:38

Теги

Похожие вопросы