NAME
   Dancer2::Plugin::Auth::Extensible::Provider::LDAP - LDAP authentication
   provider for Dancer2::Plugin::Auth::Extensible

DESCRIPTION
   This class is a generic LDAP authentication provider.

   See Dancer2::Plugin::Auth::Extensible for details on how to use the
   authentication framework.

ATTRIBUTES
 host
   The LDAP host name or IP address passed to "CONSTRUCTOR" in Net::LDAP.

   Required.

 options
   Extra options to be passed to "CONSTRUCTOR" in Net::LDAP as a hash
   reference.

 basedn
   The base dn for all searches (e.g. 'dc=example,dc=com').

   Required.

 binddn
   This must be the distinguished name of a user capable of binding to and
   reading the directory (e.g. 'cn=admin,dc=example,dc=com').

   Required.

 bindpw
   The password for "binddn".

   Required.

 username_attribute
   The attribute to match when searching for a username.

   Defaults to 'cn'.

 name_attribute
   The attribute which contains the full name of the user. See also:

   "name" in Dancer2::Plugin::Auth::Extensible::Role::User.

   Defaults to 'displayName'.

 user_filter
   Filter used when searching for users.

   Defaults to '(objectClass=person)'.

 role_attribute
   The attribute used when searching for role names.

   Defaults to 'cn'.

 role_filter
   Filter used when searching for roles.

   Defaults to '(objectClass=groupOfNames)'

 role_member_attribute
   The attribute who's value should be a user's DN to show the user has the
   specific "role_attribute"'s value.

   Defaults to 'member'.

METHODS
 ldap
   Returns a connected Net::LDAP object.

 authenticate_user $username, $password
 get_user_details $username
 get_user_roles