vim ro_access.ldif

vim ro_access.ldif

我想在我的 OpenLDAP 上为子组织添加 ACL。

这是他们的 ACL 文档: https://www.openldap.org/doc/admin24/access-control.html

我正在使用ldapmodify它来更新正在运行的 OpenLDAP 实例上的 ldap db。

这是目录我已经导入的文件:

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能够阅读 1-2 岁以下儿童的书籍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

相关内容