Give keyring-maint write access to keyFingerPrint
[mirror/userdir-ldap.git] / userdir-ldap-slapd.conf.in
1 # The backend type, ldbm, is the default standard
2 database hdb
3
4 # The base of your directory
5 suffix          "@@DN@@"
6
7 # Where the database file are physically stored
8 directory       "/var/lib/ldap"
9
10 # Indexing options
11 index gecos,cn,sn,uid,ircNick,hostname,emailForward pres,eq,sub,approx
12 index keyfingerprint,homeDirectory,objectClass,loginShell,supplementaryGid pres,eq
13 index c,gender,dnsZoneEntry,birthDate,gidNumber,uidNumber pres,eq
14
15 # Don't limit queries to the default of 500
16 sizelimit 10000
17
18 # Save the time that the entry gets modified
19 lastmod on
20
21
22 ##
23 ## prefix some rules that only apply to certain clients
24 ## and grant them more privileges
25 ##
26
27 # LDAP admins have full access, so has sshdist
28 access to *
29         by group="cn=LDAP Administrator,ou=users,@@DN@@" write
30         by dn="uid=sshdist,ou=users,@@DN@@" write
31         by * break
32
33 # allow keyring maint to write to the keyFingerPrint attribute
34 # (make an exception for adm for security reasons)
35 access to filter="(!(supplementaryGid=adm))" attrs=keyFingerPrint
36         by dn="cn=Keyring Maintainers,ou=users,@@DN@@" write
37         by * break
38
39 # allow users write access to an explicit subset of their fields
40 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
41         by self write
42         by * break
43
44
45 ##
46 ## All ACLs from here on result in a decision.  no fall through to later.
47 ##
48
49 # allow authn/z by anyone
50 access to attrs=userPassword,sudoPassword,bATVToken
51         by * compare
52
53 # readable only by self
54 access to attrs=sshrsaauthkey
55         by self read
56         by * none
57
58 # debian.org readable, authenticated user readable
59 access to attrs=activity-pgp,activity-from,dnsZoneEntry,c,l,loginShell,onVacation,birthDate,mailDisableMessage,gender,emailforward,mailCallout,mailGreylisting,mailRBL,mailRHSBL,mailWhitelist,mailContentInspectionAction,mailDefaultOptions
60         by peername.ip=127.0.0.1 read
61         by domain=alioth.debian.org none
62         by domain.subtree=@@DOMAIN@@ read
63         by dn.regex="uid=.*,ou=users,@@DN@@" read
64         by * none
65
66 # authenticated user readable
67 access to attrs=facsimileTelephoneNumber,telephoneNumber,postalAddress,postalCode,privateSub,latitude,longitude,VoIP
68         by dn.regex="uid=.*,ou=users,@@DN@@" read
69         by * none
70
71
72 # rest is globally readable
73 access to *
74         by * read