Ldap
LDAP - 授予使用者對組/組織單位的寫入權限
我試圖授予
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 下創建新使用者,但您不能更改他們的所有屬性。