]> git.sur5r.net Git - openldap/blob - doc/man/man5/slapo-chain.5
96cc0d4904697ab1c444a3f5caf85b4f80d1fc32
[openldap] / doc / man / man5 / slapo-chain.5
1 .TH SLAPO-CHAIN 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-chain \- chain overlay
7 .SH SYNOPSIS
8 ETCDIR/slapd.conf
9 .SH DESCRIPTION
10 The
11 .B chain
12 overlay to
13 .BR slapd (8)
14 allows automatic referral chasing.
15 Any time a referral is returned (except for bind operations),
16 it chased by using an instance of the ldap backend.
17 If operations are performed with an identity (i.e. after a bind),
18 that identity can be asserted while chasing the referrals 
19 by means of the \fIidentity assertion\fP feature of back-ldap
20 (see
21 .BR slapd-ldap (5)
22 for details), which is essentially based on the
23 .B proxyAuthz
24 control (see \fIdraft-weltman-ldapv3-proxy\fP for details.)
25 Referral chasing can be controlled by the client by issuing the 
26 \fBchaining\fP control
27 (see \fIdraft-sermersheim-ldap-chaining\fP for details.)
28
29 .LP 
30 The config directives that are specific to the
31 .B chain
32 overlay are prefixed by
33 .BR chain\- ,
34 to avoid potential conflicts with directives specific to the underlying 
35 database or to other stacked overlays.
36
37 .LP
38 There are very few chain overlay specific directives; however, directives 
39 related to the instances of the \fIldap\fP backend that may be implicitly 
40 instantiated by the overlay may assume a special meaning when used 
41 in conjunction with this overlay.  They are described in
42 .BR slapd-ldap (5),
43 and they also need be prefixed by
44 .BR chain\- .
45 .TP
46 .B overlay chain
47 This directive adds the chain overlay to the current backend.
48 The chain overlay may be used with any backend, but it is mainly 
49 intended for use with local storage backends that may return referrals.
50 It is useless in conjunction with the \fIslapd-ldap\fP and \fIslapd-meta\fP
51 backends because they already exploit the libldap specific referral chase 
52 feature.
53 [Note: this may change in the future, as the \fBldap\fP(5) and 
54 \fBmeta\fP(5) backends might no longer chase referrals on their own.]
55 .TP
56 .B chain-chaining [resolve=<r>] [continuation=<c>] [critical]
57 This directive enables the \fIchaining\fP control
58 (see \fIdraft-sermersheim-ldap-chaining\fP for details)
59 with the desired resolve and continuation behaviors and criticality.
60 The \fBresolve\fP parameter refers to the behavior while discovering
61 a resource, namely when accessing the object indicated by the request DN;
62 the \fBcontinuation\fP parameter refers to the behavior while handling
63 intermediate responses, which is mostly significant for the search 
64 operation, but may affect extended operations that return intermediate
65 responses.
66 The values \fBr\fP and \fBc\fP can be any of
67 .BR chainingPreferred ,
68 .BR chainingRequired ,
69 .BR referralsPreferred ,
70 .BR referralsRequired .
71 If the \fBcritical\fP flag affects the control criticality if provided.
72 [This control is experimental and its support may change in the future.]
73 .TP
74 .B chain-cache-uris {FALSE|true}
75 This directive instructs the \fIchain\fP overlay to cache
76 connections to URIs parsed out of referrals that are not predefined,
77 to be reused for later chaining.
78 .TP
79 .B chain-uri <ldapuri>
80 This directive instantiates a new underlying \fIldap\fP database
81 and instructs it about which URI to contact to chase referrals.
82 As opposed to what stated in \fBslapd-ldap\fP(5), only one URI
83 can appear after this directive; all subsequent \fBslapd-ldap\fP(5)
84 directives prefixed by \fBchain-\fP refer to this specific instance
85 of a remote server.
86 .LP
87
88 Directives for configuring the underlying ldap database may also 
89 be required, as shown in this example:
90 .LP
91 .RS
92 .nf
93 overlay                 chain
94 chain-rebind-as-user    FALSE
95
96 chain-uri               "ldap://ldap1.example.com"
97 chain-rebind-as-user    TRUE
98 chain-idassert-bind     bindmethod="simple"
99                         binddn="cn=Auth,dc=example,dc=com"
100                         credentials="secret"
101                         mode="self"
102
103 chain-uri               "ldap://ldap2.example.com"
104 chain-idassert-bind     bindmethod="simple"
105                         binddn="cn=Auth,dc=example,dc=com"
106                         credentials="secret"
107                         mode="none"
108
109 .fi
110 .RE
111 .LP
112 Any valid directives for the ldap database may be used; see
113 .BR slapd-ldap (5)
114 for details.
115 Multiple occurrences of the \fBchain-uri\fP directive may appear,
116 to define multiple "trusted" URIs where operations with 
117 \fIidentity assertion\fP are chained.
118 All URIs not listed in the configuration are chained anonymously.
119 All \fBslapd-ldap\fP(5) directives appearing before the first 
120 occurrence of \fBchain-uri\fP are inherited by all URIs,
121 unless specifically overridden inside each URI configuration.
122 .SH FILES
123 .TP
124 ETCDIR/slapd.conf
125 default slapd configuration file
126 .SH SEE ALSO
127 .BR slapd.conf (5),
128 .BR slapd\-ldap (5),
129 .BR slapd (8).
130 .SH AUTHOR
131 Originally implemented by Howard Chu; extended by Pierangelo Masarati.