Apache::AuthPerLDAP - mod_perl PerLDAP Authentication Module
<Directory /foo/bar> # Authentication Realm and Type (only Basic supported) AuthName "Foo Bar Authentication" AuthType Basic # Any of the following variables can be set. # Defaults are listed to the right. PerlSetVar BaseDN o=Foo,c=Bar # Default: "" (empty String) PerlSetVar LDAPServer ldap.foo.com # Default: localhost PerlSetVar LDAPPort 389 # Default: 389 (standard LDAP port) PerlSetVar UIDAttr uid # Default: uid require valid-user PerlAuthenHandler Apache::AuthPerLDAP </Directory> These directives can also be used in a .htaccess file.
AuthPerLDAP provides Basic Authentication, with username/password lookups against an LDAP server, using Netscape's PerLDAP kit.
It is heavily based on Clayton Donley's Apache::AuthLDAP module, but uses the newer Netscape PerLDAP (Mozilla::LDAP), which in turn uses the Netscape Directory SDK for C. Thus Donley's original Net::LDAPapi module and library is no longer required.
It requires mod_perl and PerLDAP (v1.2 or later). Building mod_perl with:
perl Makefile.PL PERL_AUTHEN=1 PERL_STACKED_HANDLERS=1 PERL_GET_SET_HANDLERS
works for me. If this module is the only Apache/Perl module you are going to use, you probably don't need anything but the PERL_AUTHEN hook enabled.
Unlike Donley's Apache::AuthLDAP module, AuthPerLDAP is only used for authentication, and thus only supports the require-user directive. If a user enters the correct username and password, the authentication is considered to be OK.
Apache::AuthPerLDAP is greatly inspired by the original Apache::AuthLDAP written by Clayton Donley.
Adoption to PerLDAP was done by reading the PerLDAP source and documentation provided by Netscape Corp. and Leif Hedstrom, found at www.perldap.org.
The new book published by O'Reilly & Associates, and authored by Lincoln Stein and Doug MacEachern helped clarify many mod_perl issues I previously had problems with: "Writing Apache Modules with Perl and C" (www.modperl.com).
Andreas K. Sorensen provided usefull Perl wisdom during debugging.
Henrik Strom <email@example.com>
Copyright (c) 1999 Henrik Strom
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.