NAME
Apache::AuthenIMAP - Perform Basic User Authentication against an IMAP server
SYNOPSIS
Allows users to give their username and e-mail password for authentication against a IMAP server for access to restricted web pages.
#httpd.conf
<Location />
AuthName 'your-authentication-domain'
AuthType Basic
PerlSetVar IMAPServer imapserver.yoyodyne.com
PerlAuthenHandler Apache::AuthenIMAP
require group staff
require user john lisa
require valid-user
</Location>
DESCRIPTION
This module performs basic user authentication by attempting to log in to the IMAP server specified. If a group requirement is specified, the module attempts to authorize the user using local group information (/etc/group and NIS have both been tested).
This module requires the Mail::IMAPClient module. For lighter server loads and increased speed, it is suggested that this module be used in conjunction with the Apache::AuthenCache module.
CONFIGURATION
AuthType
Set the type of authentication. Only Basic is supported.
AuthName
Set the realm for basic authentication.
require
The require directive takes any of three forms:
require valid-user
require user user1 user2 ...
require group group1 group2 ...
The first successfully authenticates and authorizes any successful IMAP login. The second only authorizes successful authentications for the specified users. The third does a local group membership check for successful authentications and only authorizes users whose primary or secondary groups are specified.
PerlSetVar IMAPServer imapserver.yoyodyne.com
This specifies the IMAP server to contact in order to perform the authentication.
PerlSetVar IMAPPort 143
This specifies the TCP port to connect to on the IMAP server. If left unspecified, the default IMAP port, 143, is used.
AUTHOR
John "Rowan" Littell (littejo at earlham dot edu), scarfed the basic skeleton of this module from the Apache::AuthenN2 module by Valerie Delane. Mario van den Heuvel (m.heuvel at sendrata dot com) supplied a password existence check fix.
COPYRIGHT
Copyright (c) 2002, John "Rowan" Littell
This module is free software. You may distribute and/or modify it under the same terms as Perl itself (either the GNU General Public Licence or the Artistic License, as specified in the Perl README file).
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
SEE ALSO
mod_perl(3), Apache(3)