]> git.sur5r.net Git - openldap/blob - doc/man/man5/slapo-dynlist.5
further fulfilment of ITS#3639
[openldap] / doc / man / man5 / slapo-dynlist.5
1 .TH SLAPO-DYNLIST 5 "RELEASEDATE" "OpenLDAP LDVERSION"
2 .\" Copyright 1998-2005 The OpenLDAP Foundation, All Rights Reserved.
3 .\" Copying restrictions apply.  See the COPYRIGHT file.
4 .\" $OpenLDAP$
5 .SH NAME
6 slapo-dynlist \- dynnamic list overlay
7 .SH SYNOPSIS
8 ETCDIR/slapd.conf
9 .SH DESCRIPTION
10 The
11 .B dynlist
12 overlay to
13 .BR slapd (8)
14 allows expansion of dynamic groups and more.
15 Any time an entry with a specific objectClass is being returned,
16 the LDAP URI-valued occurrences of a specific attribute are
17 expanded into the corresponding entries, and the values
18 of the attributes listed in the URI are added to the original
19 entry.
20 No recursion is currently allowed, to avoid potential infinite loops.
21
22 .SH CONFIGURATION
23 The config directives that are specific to the
24 .B dynlist
25 overlay must be prefixed by
26 .BR dynlist\- ,
27 to avoid potential conflicts with directives specific to the underlying 
28 database or to other stacked overlays.
29
30 .TP
31 .B overlay dynlist
32 This directive adds the dynlist overlay to the current database,
33 or to the frontend, if used before any database instantiation; see
34 .BR slapd.conf (5)
35 for details.
36
37 .LP
38 These 
39 .B slapd.conf
40 configuration options apply to the dynlist overlay. They must appear
41 after the
42 .B overlay
43 directive.
44 .TP
45 .B dynlist-oc <objectClass>
46 The name of the objectClass that triggers the dynamic expansion of the
47 data.  This statement is required.
48 .TP
49 .B dynlist-ad <attributeName>
50 The name of the attributeDescription that holds the LDAP URI values that
51 will expand; if none is present, no expansion occurs.  If the intersection
52 of the attributes requested by the search operation (or the asserted attribute
53 for compares) and the attributes listed in the URI is empty, no expansion 
54 occurs for that specific URI.  This statement is required.
55 .TP
56 .B dynlist-member-ad <attributeName>
57 The name of the attributeDescription that will list the DN of the entries
58 resulting from the internal search.  This statement is optional and, if
59 present, changes the behvior of the overlay into that of a dynamic group.
60 The <attrs> portion of the URI is ignored, and the DNs of all the entries 
61 resulting from the expansion of the URI are listed as values of this 
62 attribute.
63
64 .LP
65 The dynlist overlay may be used with any backend, but it is mainly 
66 intended for use with local storage backends.
67 In case the URI expansion is very resource-intensive and occurs frequently
68 with well-defined patterns, one should consider adding a proxycache
69 later on in the overlay stack.
70
71 .SH EXAMPLE
72 This example collects all the email addresses of a database into a single
73 entry; first of all, make sure that slapd.conf contains the directives:
74
75 .LP
76 .nf
77     include /path/to/dyngroup.schema
78     # ...
79
80     database <database>
81     # ...
82
83     overlay dynlist
84     dynlist-oc groupOfURLs
85     dynlist-ad memberURL
86 .fi
87 .LP
88 and that slapd loads dynlist.la, if compiled as a run-time module;
89 then add to the database an entry like
90 .LP
91 .nf
92     dn: cn=Dynamic List,ou=Groups,dc=example,dc=com
93     objectClass: groupOfURLs
94     cn: Dynamic List
95     memberURL: ldap:///ou=People,dc=example,dc=com?mail?sub?(objectClass=person)
96 .fi
97
98 If no <attrs> are provided in the URI, all (non-operational) attributes are
99 collected.
100
101
102 .SH FILES
103 .TP
104 ETCDIR/slapd.conf
105 default slapd configuration file
106 .SH SEE ALSO
107 .BR slapd.conf (5),
108 .BR slapd (8).
109 .SH AUTHOR
110 Originally implemented by Pierangelo Masarati.