1 # The backend type, ldbm, is the default standard
4 # The base of your directory
7 # Where the database file are physically stored
8 directory "/var/lib/ldap"
14 logold (objectclass=top)
15 logpurge 90+00:00 1+00:00
19 constraint_attribute keyfingerprint regex ^([0-9A-F]{40})$
22 index gecos,cn,sn,uid,ircNick,hostname,emailForward pres,eq,sub,approx
23 index keyfingerprint,homeDirectory,objectClass,loginShell,supplementaryGid pres,eq
24 index c,gender,dnsZoneEntry,birthDate,gidNumber,uidNumber pres,eq
26 # Don't limit queries to the default of 500
29 # Save the time that the entry gets modified
34 ## prefix some rules that only apply to certain clients
35 ## and grant them more privileges
38 # LDAP admins have full access, so has sshdist
40 by group="cn=LDAP Administrator,ou=users,@@DN@@" write
41 by dn="uid=sshdist,ou=users,@@DN@@" write
44 # allow keyring maint to write to the keyFingerPrint attribute
45 # (make an exception for adm for security reasons)
46 access to filter="(!(supplementaryGid=adm))" attrs=keyFingerPrint
47 by group="cn=Keyring Maintainers,ou=users,@@DN@@" write
50 # allow listmasters to write to the privateSub attribute
51 access to attrs=privateSub
52 by group="cn=Listmasters,ou=users,@@DN@@" write
56 # allow users write access to an explicit subset of their fields
57 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,latitude,longitude,VoIP,userPassword,sudoPassword,webPassword,voipPassword,bATVToken
63 ## All ACLs from here on result in a decision. no fall through to later.
66 # allow authn/z by anyone
67 access to attrs=userPassword,sudoPassword,webPassword,voipPassword,bATVToken
70 # readable only by self
71 access to attrs=sshrsaauthkey
75 # debian.org readable, authenticated user readable
76 access to attrs=activity-pgp,activity-from,dnsZoneEntry,c,l,loginShell,onVacation,birthDate,mailDisableMessage,gender,emailforward,mailCallout,mailGreylisting,mailRBL,mailRHSBL,mailWhitelist,mailContentInspectionAction,mailDefaultOptions
77 by peername.ip=127.0.0.1 read
78 by domain=alioth.debian.org none
79 by domain.subtree=@@DOMAIN@@ read
80 by dn.regex="uid=.*,ou=users,@@DN@@" read
83 # authenticated user readable
84 access to attrs=facsimileTelephoneNumber,telephoneNumber,postalAddress,postalCode,privateSub,latitude,longitude,VoIP
85 by dn.regex="uid=.*,ou=users,@@DN@@" read
88 # rest is globally readable
89 access to attrs=access,accountComment,accountStatus,admin,allowedGroups,allowedHost,architecture,bandwidth,cn,comment,dc,description,disk,distribution,dnsTTL,dnsZoneEntry,exportOptions,gecos,gid,gidNumber,homeDirectory,host,hostname,icqUin,ipHostNumber,ircNick,jabberJID,keyFingerPrint,labeledURI,mXRecord,machine,member,memory,mn,objectClass,ou,physicalHost,purpose,shadowExpire,shadowLastChange,shadowMax,shadowMin,shadowWarning,sn,sponsor,sponsor-admin,sshRSAHostKey,status,subGroup,supplementaryGid,uid,uidNumber
97 directory "/var/lib/ldap-log"
104 by group="cn=LDAP Administrator,ou=users,@@DN@@" write
105 by dn="uid=sshdist,ou=users,@@DN@@" read