OpenLDAPにサブ組織のACLを追加したい。
これは彼らのACLドキュメントです: https://www.openldap.org/doc/admin24/access-control.html
ldapmodify
を使用して、実行中のOpenLDAPインスタンスのLDAPデータベースを更新しています。
これは私がインポートした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
with 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
なぜアイデアはありますか?
ACLディレクティブの最後に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
by anonymous auth by * none