mod_authz_ldap - reference
   Introduction  Download  Installation  Configuration  LDAP  HOWTO  Reference  

Reference Configuration Directives

Find a short description of the configuration directives in mod_authz_ldap below. For details about the configuration, please refer to the configuration manual.


Syntax: AuthzLDAPEngine { on | off }
Context: virtual host, directory
Default: off
Set to on if the module should become active.
Syntax: AuthzLDAPServer host[:port]
Context: virtual host, directory
Default: as set in the LDAP client configuration file, usually something like /etc/ldap.conf
Defines the LDAP server to connect to. If the port is not set, the standard LDAP port 389 is used.
Syntax: AuthzLDAPBindDN dn
Context: virtual host, directory
Default: none
Some servers require an LDAP bind, this directive sets the distinguished name for the bind operation.
Syntax: AuthzLDAPBindPassword pw
Context: virtual host, directory
Default: none
Some servers require an LDAP bind, this directive sets the password name for the bind operation.
Syntax: AuthzLDAPProtocolVersion {1|2|3}
Context: virtual host, directory
Default: none
Set the protocol version to use to connect to the directory. Required with OpenLDAP 2.1.5 libraries.
Syntax: AuthzLDAPUserBase dn
Context: virtual host, directory
Default: none
The user must be searched for in the directory, this directive sets the search base.
Syntax: AuthzLDAPUserKey attributename
Context: virtual host, directory
Default: none
The value of this directive defines the search filter used to search for the user.
Syntax: AuthzLDAPUserScope {base|onlevel|subtree}
Context: virtual host, directory
Default: base
If the namespace for users in the directory is flat, a onlevel search will be the most efficient way to find the user, but some organisations will have hierarchical name spaces. If the namespace ist flat and the user distinguished name can be computed from userid and search base, a base search is also possible. In this case, the userid is constructed as described above.
Syntax: AuthzLDAPGroupBase dn
Context: virtual host, directory
Default: none
Set the base for group membership requirement searches.
Syntax: AuthzLDAPGroupKey attributename
Context: virtual host, directory
Default: none
Set the name of the attribute identifying groups underneath the group search base set by the AuthzLDAPGroupBase directive.
Syntax: AuthzLDAPGroupScope {base|onlevel|subtree}
Context: virtual host, directory
Default: base
Scope to search for matching groups.
Syntax: AuthzLDAPMemberKey attributename
Context: virtual host, directory
Default: member
Set the name of the attribute containing group member distinguished names.
Syntax: AuthzLDAPUseCertificate {on|off}
Context: virtual host, directory
Default: off
If set to on, mod_authz_ldap tries to map the issuer and subject distinguished name from the certificate to a user distinguished name in the directory. > Syntax: AuthzLDAPUseLDAP {on|off}
Context: virtual host, directory
Default: off
This option is only meaningful if AuthzLDAPUseCertificate is also set. If set to on, mod_authz_ldap aksk for a userid and a password in the basic authentication header and tries to authenticate the LDAP credentials in addition to the certificate. This option is not compatible with transparent authentication.
Syntax: AuthzLDAPDirect {on|off}
Context: virtual host, directory
Default: off
If set to on, mod_authz_ldap uses the certificate, and tries to match against a userCertificate attribute of the user. Note that the search starts at the base set by AuthzLDAPUserBase with the scope set by AuthzLDAPUserScope, so both have to be set to some reasonable value. Note also that equality matching against the userCertificate attribute is not possible by default in some directory servers, and violates some generally accepted schema definitions.
Syntax: AuthzLDAPUseSerial {on|off}
Context: virtual host, directory
Default: off
If set to on, mod_authz_ldap uses the certificate's serial number instead of the subject name to map the certificate to a user distinguished name in the directory.
Syntax: AuthzLDAPMapBase dn
Context: virtual host, directory
Default: none
Base for certificate mapping entries.
Syntax: AuthzLDAPMapScope {base|onlevel|subtree}
Context: virtual host, directory
Default: onlevel
Scope for certificate mapping entries.
Syntax: AuthzLDAPWithAD {on|off}
Context: virtual host, directory
Default: off
If set, certificates will be searched for in a way that is thought to be similar to that used with Active Directory. First, the subject alternative names of the certificate are parsed and, if one of type othername is found and its associated object identifier is "1.3.6.1.4.1.311.20.2.3" (User Principal Name), its value is used to search for an entry having such value for the userPrincipalName attribute. If no such subject alternative name is found, then the issuer and subject distinguished names of the certificate are combined to form a search filter for the altSecurityIdentities attribute.
Syntax: AuthzLDAPSetAuthorization {on|off}
Context: virtual host, directory
Default: on
Normally, the Authorization header or Proxy-Authorization Header is overwritten by mod_authz_ldap. This would make it impossible to build a secure reverse proxy authenticating with certificates and still authenticating to the remote server with basic authentication. Setting this option to off disables overwriting the authorization headers.
Syntax: AuthzLDAPMapUserToAttr attributename
Context: virtual host, directory
Default: none
If set, the value (if present) of the indicated attribute in the mapped entry is used to replace the user identity instead of the distinguished name of the mapped entry. This is only supported when either AuthzLDAPDirect or AuthzLDAPMapWithAD are set.
Syntax: AuthzLDAPRoleAttributeName attributename
Context: virtual host, directory
Default: none
Used to specify a attribute name to check for special values as given by require role directives.
Syntax: AuthzLDAPModifyKey attributename
Context: virtual host, directory
Default: none
Then checking a directory entry for last password modification, an attribute containing the time of last modification must be specified.
Syntax: AuthzLDAPAuthoritative {on|off}
Context: virtual host, directory
Default: on
Usually the authentication and authorization decisions of mod_authz_ldap are final. Sometimes however it is desired to have other modules do checks if mod_authz_ldap would deny a request. In these cases, this option must be set to off.
Syntax: AuthzLDAPProxyAuthentication {on|off}
Context: virtual host, directory
Default: automatically determined
In some cases the kind of authentication performed must be explicitly specified to the module. E.g. a reverse proxy will let the module believe that proxy authentication is the thing to do, but to the client the proxy appears as the server, so it should really do normal authentication. Setting this option to off forces normal authentication, on forces proxy authentication.
Syntax: AuthzLDAPLogLevel {emerg|alert|crit|error|warn|notice|info|debug}
Context: virtual host, directory
Default: debug
Reduce the volume of log messages from this module.
Syntax: AuthzLDAPAllowPassword {on|off}
Context: virtual host, directory
Default: off
If a user does not present a certificate, still accept him if she can prove her identity via userid/password. Note that this weakens security quite a bit, and should probably used only in settings where certificates are a convenience rather than a requirement. For this to work it is necessary to set the mod_ssl configuration directive SSLVerifyClient to optional.
Syntax: AuthzLDAPCacheConnection { on | off }
Context: virtual host, directory
Default: off
Set to on if the module should cache LDAP connections between requests. This may speed up LDAP operations, but also ties up resources inside the apache process and on the LDAP server. You must not set this to on if you are invoking mod_authz_ldap from within an .htaccess file (because every invokation of the module creates a new LDAP connection, which will be cached indefinitely).
Syntax: AuthzLDAPCacheSize size
Context: virtual host, directory
Default: 0
Set the size of the cache the LDAP library is allowed to build. Setting the cache size to 0 disables caching. The module will not allow a cache to be created that is larger than the maximum set during configuration (128k being the default if option was given to conigure).
Syntax: AuthzLDAPCacheTimeout timeout
Context: virtual host, directory
Default: 600
Timeout in seconds for entries in the LDAP cache. As a timeout longer than one day seldom makes sense, the default timeout of 600 seconds is used whenever a timeout longer than a day or a negative timeout is specified. The default can be configured at configure time for the module.
 
© Dr. Andreas Müller, Beratung und Entwicklung.