vim ro_access.ldif

vim ro_access.ldif

Я хочу добавить ACL для дочерней организации в моем OpenLDAP.

Вот их документация ACL: https://www.openldap.org/doc/admin24/access-control.html

Я использую ldapmodifyдля обновления базы данных ldap на работающем экземпляре OpenLDAP.

ЭтолдифФайл, который я импортировал:

vim ro_access.ldif

dn: olcDatabase={1}mdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {2}to dn.children="ou=users,dc=example,dc=com" by dn.exact="cn=workstation,ou=applications,dc=example,dc=com" read

Я жду

  • должен cn=workstation,ou=applications,dc=example,dc=comуметь читать детей подou=users,dc=example,dc=com
  • должно authиметь предыдущее поведение по умолчанию.
  • должно anonymousиметь предыдущее поведение по умолчанию.

У меня есть

  • ldapwhoamiработать сcn=workstation,ou=applications,dc=example,dc=com
  • ldapsearchне удалось вернуть результат uid=someone,ou=users,dc=example,dc=comсcn=workstation,ou=applications,dc=example,dc=com

Редактировать

Я пробовал заменить olcAccess {1}на {2}и {2}на {1}.

Это полностью замененный ACL, и он тоже не работает:

dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by self write by dn="cn
 =admin,dc=example,dc=com" write by dn="cn=ropw,dc=example,dc=co
 m" read by anonymous auth by * none 
olcaccess: {1}to dn.children="ou=users,dc=example,dc=com" by dn
 .exact="cn=workstation,ou=applications,dc=example,dc=com" read
olcaccess: {2}to * by self write by dn="cn=admin,dc=example,dc=com" write
  by dn="cn=ro,dc=example,dc=com" read by dn="cn=ropw,dc=exam
 ple,dc=com" read by * none 

Есть идеи почему?

решение1

Попробуйте добавить by anonymous auth by * noneв конец директивы ACL:

olcAccess: {1}to dn.children="ou=users,dc=example,dc=com" by dn
 .exact="cn=workstation,ou=applications,dc=example,dc=com" read
by anonymous auth by * none

Связанный контент