X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=userdir-ldap-slapd.conf.in;h=4e4c92a8e10bfc79152b627fc9b0df0cf0bc80b8;hb=6b038cc113dde577b9cc19c62656bf6d2b41362d;hp=9d98ebe22c1affd4237cdb09e404b62a24a8a11f;hpb=844e7ba133548669df37de95f593ca7f81c12585;p=mirror%2Fuserdir-ldap.git diff --git a/userdir-ldap-slapd.conf.in b/userdir-ldap-slapd.conf.in index 9d98ebe..4e4c92a 100644 --- a/userdir-ldap-slapd.conf.in +++ b/userdir-ldap-slapd.conf.in @@ -18,46 +18,57 @@ sizelimit 10000 # Save the time that the entry gets modified lastmod on + +## +## prefix some rules that only apply to certain clients +## and grant them more privileges +## + # LDAP admins have full access, so has sshdist access to * by group="cn=LDAP Administrator,ou=users,@@DN@@" write by dn="uid=sshdist,ou=users,@@DN@@" write by * break +# allow keyring maint to write to the keyFingerPrint attribute +# (make an exception for adm for security reasons) +access to filter="(!(supplementaryGid=adm))" attrs=keyFingerPrint + by dn="cn=Keyring Maintainers,ou=users,@@DN@@" write + by * break + # allow users write access to an explicit subset of their fields access to attrs=c,l,loginShell,ircNick,labeledURI,icqUIN,jabberJID,onVacation,birthDate,mailDisableMessage,gender,emailforward,mailCallout,mailGreylisting,mailRBL,mailRHSBL,mailWhitelist,mailContentInspectionAction,mailDefaultOptions,facsimileTelephoneNumber,telephoneNumber,postalAddress,postalCode,loginShell,onVacation,privateSub,latitude,longitude,VoIP,userPassword,sudoPassword,bATVToken by self write by * break -# owner writeable + +## +## All ACLs from here on result in a decision. no fall through to later. +## + +# allow authn/z by anyone access to attrs=userPassword,sudoPassword,bATVToken by * compare +# readable only by self access to attrs=sshrsaauthkey by self read - by * compare + by * none -# debian readable -access to attrs=activity-pgp,activity-from,dnsZoneEntry +# debian.org readable, authenticated user readable +access to attrs=activity-pgp,activity-from,dnsZoneEntry,c,l,loginShell,onVacation,birthDate,mailDisableMessage,gender,emailforward,mailCallout,mailGreylisting,mailRBL,mailRHSBL,mailWhitelist,mailContentInspectionAction,mailDefaultOptions by peername.ip=127.0.0.1 read by domain=alioth.debian.org none by domain.subtree=@@DOMAIN@@ read by dn.regex="uid=.*,ou=users,@@DN@@" read by * none -# owner writeable, debian readable, authenticated user readable -access to attrs=c,l,loginShell,ircNick,labeledURI,icqUIN,jabberJID,onVacation,birthDate,mailDisableMessage,gender,emailforward,mailCallout,mailGreylisting,mailRBL,mailRHSBL,mailWhitelist,mailContentInspectionAction,mailDefaultOptions +# authenticated user readable +access to attrs=facsimileTelephoneNumber,telephoneNumber,postalAddress,postalCode,privateSub,latitude,longitude,VoIP by dn.regex="uid=.*,ou=users,@@DN@@" read - by peername.ip=127.0.0.1 read - by domain=alioth.debian.org none - by domain.subtree=@@DOMAIN@@ read by * none -# owner writeable, authenticated user readable -access to attrs=facsimileTelephoneNumber,telephoneNumber,postalAddress,postalCode,loginShell,onVacation,privateSub,latitude,longitude,VoIP - by dn.regex="uid=.*,ou=users,@@DN@@" read - by * none -# globally readable +# rest is globally readable access to * by * read