Gantry::Control::C::AuthenBase(3)

NAME
Gantry::Control::C::AuthenBase - Database based authentication

SYNOPSIS
use Gantry::Control::C::AuthenSubClass qw/-Engine=MP20/;

DESCRIPTION
This module allows authentication against a database. It has two subclasses: AuthenRegular and AuthenCDBI. Use the latter if you use Class::DBI (or Class::DBI::Sweet). Use the former otherwise.

APACHE
Sample Apache conf configuration

  <Location /location/to/auth >
    AuthType    Basic
    AuthName    "Manual"

    PerlSetVar  auth_dbconn     'dbi:Pg:<database_name>'
    PerlSetVar  auth_dbuser     '<database_user>'
    PerlSetVar  auth_dbpass     '<database_password>'

    PerlSetVar  auth_dbcommit   off

    PerlAuthenHandler   Gantry::Control::C::AuthenSubClass

    require     valid-user
  </Location>

Replace AuthenSubClass with AuthenCDBI if you use Class::DBI (or any descendent of it) or with AuthenRegular if you use any other ORM.

DATABASE
This is the table that will be queried for the authentication of the user.

  create table "auth_users" (
    "id"            int4 default nextval('auth_users_seq') NOT NULL,
    "user_id"       int4,
    "active"        bool,
    "user_name"     varchar,
    "passwd"        varchar,
    "crypt"         varchar,
    "first_name"    varchar,
    "last_name"     varchar,
    "email"         varchar
  );

METHODS

handler
    The mod_perl authen handler.

SEE ALSO
Gantry::Control::C::Authz(3), Gantry::Control(3), Gantry(3)

LIMITATIONS
This and all authentication and autorization modules pre-suppose that the auth_* tables are in the same database as the application tables.

AUTHOR
Tim Keefer <tkeefer@gmail.com>

COPYRIGHT
Copyright (c) 2005-6, Tim Keefer.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.