1.lf 1 stdin
2.TH SLAPO-MEMBEROF 5 "2020/04/28" "OpenLDAP 2.4.50"
3.\" Copyright 1998-2020 The OpenLDAP Foundation, All Rights Reserved.
4.\" Copying restrictions apply.  See the COPYRIGHT file.
5.\" $OpenLDAP$
6.SH NAME
7slapo\-memberof \- Reverse Group Membership overlay to slapd
8.SH SYNOPSIS
9/etc/openldap/slapd.conf
10.SH DESCRIPTION
11The
12.B memberof
13overlay to
14.BR slapd (8)
15allows automatic reverse group membership maintenance.
16Any time a group entry is modified, its members are modified as appropriate
17in order to keep a DN-valued "is member of" attribute updated with the DN
18of the group.
19
20.SH CONFIGURATION
21The config directives that are specific to the
22.B memberof
23overlay must be prefixed by
24.BR memberof\- ,
25to avoid potential conflicts with directives specific to the underlying 
26database or to other stacked overlays.
27
28.TP
29.B overlay memberof
30This directive adds the memberof overlay to the current database; see
31.BR slapd.conf (5)
32for details.
33
34.LP
35The following
36.B slapd.conf
37configuration options are defined for the memberof overlay.
38
39.TP
40.BI memberof\-group\-oc \ <group-oc>
41The value 
42.I <group-oc> 
43is the name of the objectClass that triggers the reverse group membership
44update.
45It defaults to \fIgroupOfNames\fP.
46
47.TP
48.BI memberof\-member\-ad \ <member-ad>
49The value 
50.I <member-ad> 
51is the name of the attribute that contains the names of the members
52in the group objects; it must be DN-valued.
53It defaults to \fImember\fP.
54
55.TP
56.BI memberof\-memberof\-ad \ <memberof-ad>
57The value 
58.I <memberof-ad> 
59is the name of the attribute that contains the names of the groups
60an entry is member of; it must be DN-valued.  Its contents are 
61automatically updated by the overlay.
62It defaults to \fImemberOf\fP.
63
64.TP
65.BI memberof\-dn \ <dn>
66The value 
67.I <dn> 
68contains the DN that is used as \fImodifiersName\fP for internal 
69modifications performed to update the reverse group membership.
70It defaults to the \fIrootdn\fP of the underlying database.
71
72.TP
73.BI "memberof\-dangling {" ignore ", " drop ", " error "}"
74This option determines the behavior of the overlay when, during 
75a modification, it encounters dangling references.
76The default is
77.IR ignore ,
78which may leave dangling references.
79Other options are
80.IR drop ,
81which discards those modifications that would result in dangling
82references, and
83.IR error ,
84which causes modifications that would result in dangling references
85to fail.
86
87.TP
88.BI memberof\-dangling\-error \ <error-code>
89If
90.BR memberof\-dangling
91is set to
92.IR error ,
93this configuration parameter can be used to modify the response code
94returned in case of violation.  It defaults to "constraint violation",
95but other implementations are known to return "no such object" instead.
96
97.TP
98.BI "memberof\-refint {" true "|" FALSE "}"
99This option determines whether the overlay will try to preserve
100referential integrity or not.
101If set to
102.IR TRUE ,
103when an entry containing values of the "is member of" attribute is modified,
104the corresponding groups are modified as well.
105
106.LP
107The memberof overlay may be used with any backend that provides full 
108read-write functionality, but it is mainly intended for use 
109with local storage backends. The maintenance operations it performs
110are internal to the server on which the overlay is configured and
111are never replicated. Replica servers should be configured with their
112own instances of the memberOf overlay if it is desired to maintain
113these memberOf attributes on the replicas.  Note that slapo-memberOf
114is not compatible with syncrepl based replication, and should not be
115used in a replicated environment. An alternative is to use slapo-dynlist
116to emulate slapo-memberOf behavior.
117
118.SH FILES
119.TP
120/etc/openldap/slapd.conf
121default slapd configuration file
122.SH SEE ALSO
123.BR slapd.conf (5),
124.BR slapd\-config (5),
125.BR slapd (8).
126The
127.BR slapo\-memberof (5)
128overlay supports dynamic configuration via
129.BR back-config .
130.SH ACKNOWLEDGEMENTS
131.P
132This module was written in 2005 by Pierangelo Masarati for SysNet s.n.c.
133
134