]> git.sur5r.net Git - openldap/blobdiff - doc/man/man5/slapd-meta.5
Axe abandon support (ITS#2564)
[openldap] / doc / man / man5 / slapd-meta.5
index e5e279af548620de664c9a4b49d86f94d09159ff..2fc21405790d6877577d1af4e4b9659e28b15779 100644 (file)
@@ -1,5 +1,5 @@
-.TH SLAPD_META 5 "2 May 2002" "OpenLDAP LDVERSION"
-.\" Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
+.TH SLAPD-META 5 "RELEASEDATE" "OpenLDAP LDVERSION"
+.\" Copyright 1998-2003 The OpenLDAP Foundation, All Rights Reserved.
 .\" Copying restrictions apply.  See the COPYRIGHT file.
 .\" Copyright 2001, Pierangelo Masarati, All rights reserved. <ando@sys-net.it>
 .\" $OpenLDAP$
@@ -8,7 +8,7 @@
 .\" and maybe manual pages for librewrite.
 .\"
 .SH NAME
-slapd_meta \- metadirectory backend
+slapd-meta \- metadirectory backend
 .SH SYNOPSIS
 ETCDIR/slapd.conf
 .SH DESCRIPTION
@@ -99,9 +99,10 @@ Target specification starts with a "uri" directive:
 .B uri <protocol>://[<host>[:<port>]]/<naming context>
 The "server" directive that was allowed in the LDAP backend (although
 deprecated) has been discarded in the Meta backend.
-The <protocol> part can be anything ldap_initialize(3) accepts
-({ldap|ldaps|ldapi} and variants); <host> and <port> may be omitted,
-defaulting to whatever is set in /etc/ldap.conf.
+The <protocol> part can be anything
+.BR ldap_initialize (3)
+accepts ({ldap|ldaps|ldapi} and variants); <host> and <port> may be
+omitted, defaulting to whatever is set in /etc/ldap.conf.
 The <naming context> part is mandatory.
 It must end with one of the naming contexts defined for the backend,
 e.g.:
@@ -115,6 +116,10 @@ uri    "ldap://x.foo.com/dc=x,\fBdc=foo,dc=com\fP"
 .LP
 The <naming context> part doesn't need to be unique across the targets;
 it may also match one of the values of the "suffix" directive.
+Multiple URIs may be defined in a single argument.  The URIs must
+be separated by TABs (e.g. '\\t'), and the additional URIs must have
+no <naming context> part.  This causes the underlying library
+to contact the first server of the list that responds.
 .TP
 .B default-target [<target>]
 The "default-target" directive can also be used during target specification.
@@ -135,6 +140,10 @@ check permissions.
 This directive sets the password for acl checking in conjunction
 with the above mentioned "binddn" directive.
 .TP
+.B rebind-as-user
+If this option is given, the client's bind credentials are remembered
+for rebinds when chasing referrals.
+.TP
 .B pseudorootdn "<substitute DN in case of rootdn bind>"
 This directive, if present, sets the DN that will be substituted to
 the bind DN if a bind with the backend's "rootdn" succeeds.
@@ -169,7 +178,7 @@ so "dc=foo, dc=com" would not match "dc=foo,dc=com".
 .LP
 See the "REWRITING" section.
 .TP
-.B map {objectClass|attribute} {<source>|*} [<dest>|*]
+.B map "{attribute|objectclass} [<local name>|*] {<foreign name>|*}"
 This maps object classes and attributes as in the LDAP backend.
 See
 .BR slapd-ldap (5).
@@ -265,6 +274,8 @@ no way to unambiguously resolve a DN.
 In this case, all the operations that require an unambiguous target
 selection will fail unless the DN is already cached or a default
 target has been set.
+Practical configurations may result as a combination of all the
+above scenarios.
 .SH ACLs
 Note on ACLs: at present you may add whatever ACL rule you desire
 to to the Meta (and LDAP) backends.
@@ -474,15 +485,18 @@ client -> server:
 .nf
 (default)      if defined and no specific context 
                is available
-bindDn         bind
+bindDN         bind
 searchBase     search
 searchFilter   search
-compareDn      compare
-addDn          add
-modifyDn       modify
-modrDn         modrdn
-newSuperiorDn  modrdn
-deleteDn       delete
+compareDN      compare
+compareAttrDN  compare AVA
+addDN          add
+addAttrDN      add AVA
+modifyDN       modify
+modifyAttrDN   modify AVA
+modrDN         modrdn
+newSuperiorDN  modrdn
+deleteDN       delete
 .fi
 .RE
 .LP
@@ -493,8 +507,8 @@ server -> client:
 searchResult   search (only if defined; no default;
                acts on DN and DN-syntax attributes 
                of search results)
-matchedDn      all ops (only if defined; no default;
-               NOT IMPL. except in search)
+searchAttrDN   search AVA
+matchedDN      all ops (only if applicable)
 .fi
 .RE
 .LP
@@ -633,6 +647,16 @@ rewriteRule "(.*\e\e()uid=([a-z0-9_]+)(\e\e).*)"
 rewriteRule "[^,]+,ou=admin,dc=home,dc=net"
   "%{*prefix}|(uid=%{*arg})(cn=%{*arg})%{*suffix}" "@I"
 rewriteRule ".*<>" "%{*prefix}uid=%{*arg}%{*suffix}" ":"
+
+# This example shows how to strip unwanted DN-valued
+# attribute values from a search result; the first rule
+# matches DN values below "ou=People,dc=example,dc=com";
+# in case of match the rewriting exits successfully.
+# The second rule matches everything else and causes
+# the value to be rejected.
+rewriteContext searchResult
+rewriteRule ".*,ou=People,dc=example,dc=com" "%0" "@"
+rewriteRule ".*" "" "#"
 .fi
 .SH "LDAP Proxy resolution (a possible evolution of slapd\-ldap(5)):"
 In case the rewritten DN is an LDAP URI, the operation is initiated
@@ -656,9 +680,13 @@ been written:
 .LP
 with the advantage of saving one rewrite pass ...)
 .SH FILES
+.TP
 ETCDIR/slapd.conf
+default slapd configuration file
 .SH SEE ALSO
 .BR slapd.conf (5),
 .BR slapd\-ldap (5),
 .BR slapd (8),
 .BR regex (7).
+.SH AUTHOR
+Pierangelo Masarati, based on back-ldap by Howard Chu