この管理者がcn=admin,ou=Administrators,dc=example,dc=com
の下に新しいエントリを作成(およびもちろん読み取り)し、それらを変更(パスワードの変更など)できるように、ou=People,dc=example,dc=com
にou=People
への完全な書き込みアクセスを許可しようとしました。
私のldifファイルは次のようになります
dn: olcDatabase={1}mdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {4}to dn.subtree="ou=People,dc=example,dc=com" by dn.exact="cn=admin,ou=Administrators,dc=example,dc=com" write
ldapadd -Y EXTERNAL -H ldapi:/// -f permission.ldif
で実行した後、
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={1}mdb,cn=config"
誰でもここで何が悪いのか、そしてそれを正しくする方法を説明できますか?私がオンラインで見つけたかなり多くのことを試みました。
さらに数回試行錯誤した後、私は実用的な解決策を見つけました。
このldifを見てください:
dn: olcDatabase={1}mdb,cn=config
changetype: modify
delete: olcAccess
-
add: olcAccess
olcAccess: {0}to attrs=userPassword by self write by dn="cn=admin,ou=Administrators,dc=example,dc=com" write by anonymous auth by * none
olcAccess: {1}to attrs=shadowLastChange by self write by * read
olcAccess: {2}to dn.subtree="ou=People,dc=example,dc=com" by dn.exact="ccn=admin,ou=Administrators,dc=example,dc=com" write
olcAccess: {3}to * by * read
/ edit:これにより、ou = Peopleの下に新しいユーザーを作成できますが、それらのすべての属性を変更することはできません。