SYNOPSIS

    use Authen::Simple::DBI;

my $dbi = Authen::Simple::DBI->new( dsn => 'dbi:SQLite:dbname=database.db', statement => 'SELECT password FROM users WHERE username = ?' );

if ( $dbi->authenticate( $username, $password ) ) { # successfull authentication }

# or as a mod_perl Authen handler

PerlModule Apache::DBI PerlModule Authen::Simple::Apache PerlModule Authen::Simple::DBI

PerlSetVar AuthenSimpleDBI_dsn "dbi:SQLite:dbname=database.db" PerlSetVar AuthenSimpleDBI_statement "SELECT password FROM users WHERE username = ?"

<Location /protected> PerlAuthenHandler Authen::Simple::DBI AuthType Basic AuthName "Protected Area" Require valid-user </Location>

DESCRIPTION

\s-1DBI\s0 authentication.

METHODS

* new

This method takes a hash of parameters. The following options are valid:

* dsn

Database Source Name. Required. dsn => 'dbi:SQLite:dbname=database.db' dsn => 'dbi:mysql:database=database;host=localhost;'

* statement

\s-1SQL\s0 statement. The statement must take a single string argument (username) and return a single value (password). Required. statement => 'SELECT password FROM users WHERE username = ?'

* username

Database username. username => 'username'

* password

Database password. password => 'secret'

* log

Any object that supports \*(C`debug\*(C', \*(C`info\*(C', \*(C`error\*(C' and \*(C`warn\*(C'. log => Log::Log4perl->get_logger('Authen::Simple::DBI')

Returns true on success and false on failure.

RELATED TO Authen::Simple::DBI…

Authen::Simple.

Authen::Simple::Password.

\s-1DBI\s0.

AUTHOR

Christian Hansen \*(C`[email protected]\*(C'

COPYRIGHT

This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.