summaryrefslogtreecommitdiffstats
path: root/pigeonhole/doc/locations/ldap.txt
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--pigeonhole/doc/locations/ldap.txt73
1 files changed, 73 insertions, 0 deletions
diff --git a/pigeonhole/doc/locations/ldap.txt b/pigeonhole/doc/locations/ldap.txt
new file mode 100644
index 0000000..e69b1ee
--- /dev/null
+++ b/pigeonhole/doc/locations/ldap.txt
@@ -0,0 +1,73 @@
+LDAP Sieve Script Location Type
+
+Description
+===========
+
+This location type is used to retrieve Sieve scripts from an LDAP database. To
+retrieve a Sieve script from the LDAP database, at most two lookups are
+performed. First, the LDAP entry containing the Sieve script is searched using
+the specified LDAP search filter. If the LDAP entry changed since it was last
+retrieved (or it was never retieved before), the attribute containing the actual
+Sieve script is retrieved in a second lookup. In the first lookup, a special
+attribute is read and checked for changes. Usually, this is the
+`modifyTimestamp' attribute, but an alternative can be configured.
+
+Note that, by default, compiled binaries are not stored at all for Sieve scripts
+retrieved from an LDAP database. The bindir= option needs to be specified in the
+location specification. Refer to the INSTALL file for more general information
+about configuration of script locations.
+
+Depending on how Pigeonhole was configured and compiled (refer to INSTALL file
+for more information), LDAP support may only be available from a plugin called
+`sieve_storage_ldap'.
+
+Configuration
+=============
+
+If support for the LDAP location type is compiled as a plugin, it needs to be
+added to the sieve_plugins setting before it can be used, e.g.:
+
+sieve_plugins = sieve_storage_ldap
+
+The script location syntax is specified as follows:
+
+location = ldap:<config-file>[;<option>[=<value>][;...]]
+
+The <config-file> is a filesystem path that points to a configuration file
+containing the actual configuration for this LDAP script location.
+
+The following additional location options are recognized:
+
+ user=<username>
+ Overrides the user name used for the lookup. Normally, the name of the
+ user running the Sieve interpreter is used.
+
+If the name of the Script is left unspecified and not otherwise provided by the
+Sieve interpreter, the name defaults to `default'.
+
+The configuration file is based on the auth userdb/passdb LDAP configuration
+(refer to Dovecot wiki at http://wiki2.dovecot.org/AuthDatabase/LDAP). The
+following options are specific to the Sieve ldap location type:
+
+ sieve_ldap_filter = (&(objectClass=posixAccount)(uid=%u))
+ The LDAP search filter that is used to find the entry containing the Sieve
+ script.
+
+ sieve_ldap_script_attr = mailSieveRuleSource
+ The name of the attribute containing the Sieve script itself.
+
+ sieve_ldap_mod_attr = modifyTimestamp
+ The name of the attribute used to detect modifications to the LDAP entry.
+
+Examples
+========
+
+plugin {
+ sieve = ldap:/etc/dovecot/sieve-ldap.conf;bindir=~/.sieve-bin/
+}
+
+An example LDAP location configuration is available in this package as
+doc/example-config/sieve-ldap.conf.
+
+
+