view mod_lib_ldap.wiki @ 426:0df264dd44c4

update
author Kim Alvefur <zash@zash.se>
date Thu, 13 Feb 2014 15:08:13 +0100
parents 629d6b524cb9
children
line wrap: on
line source

#summary Library module for LDAP

= Introduction =

This module is used by other modules to access an LDAP server.  It's pretty useless on its own; you should use it if you want to write your own LDAP-related module, or if you want to use one of mine ([mod_auth_ldap2], [mod_storage_ldap]).

= Installation =

Simply copy ldap.lib.lua into your Prosody installation's plugins directory.

= Configuration =

Configuration for this module (and all modules that use it) goes into the _ldap_ section of your prosody.cfg.lua file.  Each plugin that uses it may add their own sections; this plugin relies on the following keys:

  * hostname - Where your LDAP server is located
  * bind_dn  - The DN to perform queries as
  * bind_password - The password to use for queries
  * use_tls - Whether or not TLS should be used to connect to the LDAP server
  * user.usernamefield - The LDAP field that contains a user's username
  * user.basedn - The base DN for user records

= API =

== ldap.getconnection() ==

Returns an LDAP connection object corresponding to the configuration in prosody.cfg.lua.  The connection object is a [http://www.keplerproject.org/lualdap/ LuaLDAP] connection.

== ldap.getparams() ==

Returns the LDAP configuration provided in prosody.cfg.lua.  Use this if you want to stick some configuration information for your module into the LDAP section in the configuration file.

== ldap.bind(username, password) ==

Verifies that _username_ and _password_ bind ok.  *NOTE*: This does not bind the current LDAP connection to the given username!

== ldap.singlematch(query) ==

Used to fetch a single LDAP record given an LDAP query.  A convenience function.

== ldap.filter.combine_and(...) ==

Takes a list of LDAP filter expressions and returns a filter expression that results in the intersection of each given expression (it ANDs them together).

= More Information =

For more information, please consult the README.md file under prosody-modules/mod_lib_ldap.