X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-relay%2FREADME;h=81f152c53cfd5c602581739b48a8b427f3e86556;hb=f9fb5e63f4b43bc2089ad1d94f19a04e2294b37b;hp=36f64e9582a03aeb7237f7c65f3a08945a913587;hpb=b3d238465d0c43adda933485a97ab4e4daac18e0;p=openldap diff --git a/servers/slapd/back-relay/README b/servers/slapd/back-relay/README index 36f64e9582..81f152c53c 100644 --- a/servers/slapd/back-relay/README +++ b/servers/slapd/back-relay/README @@ -13,8 +13,7 @@ database. This also causes the rewrite-remap overlay to be automatically instantiated. If the optional keyword "massage" is present, the rewrite-remap overlay is automatically configured to map the virtual to the real -naming context and vice-versa; in this case, the "suffix" -directive must precede the "relay" directive. +naming context and vice-versa. Otherwise, the rewrite-remap overlay must be explicitly instantiated, by using the "overlay" directive, as @@ -26,10 +25,30 @@ not bound to a single target database; on the contrary, the target database is selected on a per-operation basis. This allows, for instance, to relay one database for -authentication and anothe for search/modify, or allows +authentication and anotheir for search/modify, or allows to use one target for persons and another for groups and so on. +To summarize: the "relay" directive: +- explicitly bounds the database to a single database + holding the real naming context; +- automatically instantiates the rewrite-remap overlay; +- automatically configures the naming context massaging + if the optional "massage" keyword is added + +If the "relay" directive is not used, the rewrite-remap +overlay must be explicitly instantiated and the massaging +must be configured, either by using the "suffixmassage" +directive, or by issuing more sophisticate rewrite +instructions. + +AttributeType/objectClass mapping must be explicitly +required. + +Note that the rewrite-remap overlay is not complete nor +production- ready yet. +Examples are given of all the suggested usages. + # automatically massage from virtual to real naming context database relay suffix "dc=virtual,dc=naming,dc=context" @@ -38,6 +57,13 @@ relay "dc=real,dc=naming,dc=context" massage # explicitly massage (same as above) database relay suffix "dc=virtual,dc=naming,dc=context" +relay "dc=real,dc=naming,dc=context" +suffixmassage "dc=virtual,dc=naming,dc=context" \ + "dc=real,dc=naming,dc=context" + +# explicitly massage (same as above, but dynamic backend resolution) +database relay +suffix "dc=virtual,dc=naming,dc=context" overlay rewrite-remap suffixmassage "dc=virtual,dc=naming,dc=context" \ "dc=real,dc=naming,dc=context" @@ -46,9 +72,12 @@ suffixmassage "dc=virtual,dc=naming,dc=context" \ # from virtual to real naming context, but not the reverse... database relay suffix "dc=virtual,dc=naming,dc=context" -overlay rewrite-remap -rewriteEngine on +relay "dc=real,dc=naming,dc=context" rewriteContext default rewriteRule "(.*)dc=virtual,dc=naming,dc=context$" \ "$1dc=real,dc=naming,dc=context" +rewriteContext searchFilter +rewriteContext searchResult +rewriteContext searchResultAttrDN +rewriteContext matchedDN