]> git.sur5r.net Git - openldap/blob - contrib/ldapsasl/README
In entry_decode, must null-terminate a_nvals array
[openldap] / contrib / ldapsasl / README
1 LDAP auxprop plugin for SASL-enabled servers.
2 Copyright (C) 2002 by Howard Chu, hyc@symas.com
3
4 This software is an experimental proof-of-concept and is not intended for
5 general use. It is licensed under the terms ofthe OpenLDAP license.
6
7 The file ldapdb.c was written for Cyrus SASL 2.1.3 and OpenLDAP 2.1.3.
8 It can be compiled by copying into the Cyrus SASL source tree, in the
9 plugins subdirectory. No configuration or build script is provided.
10
11 To compile, type "make ldapdb.lo". To link, you'll have to copy the
12 link rule for one of the other plugins. Below is a sample on my Linux
13 system:
14
15         /bin/sh ./libtool --mode=link gcc  -Wall -W -g -O2 -L/usr/local/lib -Wl,-rpath,/usr/local/lib -module -export-dynamic -rpath /usr/lib/sasl2 -o libldapdb.la  -version-info 2:4:0 ldapdb.lo -lldap -llber -lssl -lcrypto
16
17 Once installed, you need to add some config items to the SASL server's
18 config file in /usr/lib/sasl2. For example:
19
20 ldapdb_uri: ldapi://
21 ldapdb_id: root
22 ldapdb_pw: secret
23 ldapdb_mech: PLAIN
24
25 This config assumes an LDAP server on the same machine as the server
26 that is using SASL. The LDAP server must be configured to map the SASL
27 authcId "root" into a DN that has proxy authorization privileges to
28 every account that is allowed to login to this server. (See the OpenLDAP
29 Admin Guide for details.)
30
31 Unlike other LDAP-enabled plugins for other services that are common
32 on the web, this plugin does not require you to configure DN search
33 patterns to map usernames to LDAP DNs. This plugin requires SASL name
34 mapping to be configured on the target slapd. This approach keeps the
35 LDAP-specific configuration details in one place, the slapd.conf, and
36 makes the configuration of remote services much simpler.
37
38 One additional keyword "ldapdb_rc" may be specified in the config file.
39 The filename specified here will be put into the server's LDAPRC
40 environment variable, and libldap-specific config options may be set
41 in that ldaprc file. The main purpose behind this option is to allow
42 a client TLS certificate to be configured, so that SASL/EXTERNAL may
43 be used between the SASL server and the LDAP server. This is the most
44 optimal way to use this plugin when the servers are on separate machines.
45
46 This plugin likely has very poor performance. You'll need something
47 better for a real production environment. Please send feedback via the
48 openldap-software mailing list for now.
49
50   -- Howard Chu, 2002-07-12