#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.