CGI-Auth-Auto
view release on metacpan or search on metacpan
lib/CGI/Auth/Auto.pm view on Meta::CPAN
This way, by simply using this module, you will have authentication and state maintained
for you. I consider this now out of scope here. after simply running check() you could safely
run CGI::Session::new() without fear of creating multiple sessions. Since check() already
decided by that point that the user is truly authenticated.
A custom login.html template has been included in this distribution under cgi-bin/auth/login.html.
This template is minimal as compares to the candy one that comes with CGI::Auth.
=head1 DEBUG
To turn on debug info, in your cgi script, before you call check() :
$CGI::Auth::Auto::DEBUG = 1;
=head1 ERRORS
The most common error is that you are not passing the right authdir to the object.
The authdir needs to exist and contain a user.dat simple text file.
If you do not provide an authdir argument, that's ok, we try to guess for it.
If your script is in /home/myself/cgi-bin/script.pl , then your auth dir is guessed as
/home/myself/cgi-bin/auth
And it must exist and contain the user.dat file. This can be a blank text file to begin with.
Make sure it is chown and chmod properly.
If your cgi is failing, turn on L<DEBUG> and run it again. A lot of useful information may be there.
=head2 Auth::check - Invalid 'User Name' field at ...
Erase your user.dat and recreate.
=head1 users.dat
This file must reside inside your auth dir.
If you script is in cgi-bin/script.cgi,
you must have a cgi-bin/auth/sess dir and a cgi-bin/auth/users.dat file
an example file is included in this distribution
please read CGI::Auth for more info on managing that file.
=head1 login.html
If you define the 'logintmpl' or 'logintmplpath' arguments to constructor, the program
tries to find login.html template or dies.
If not, it uses a barebones hard coded output.
So, again, if you have a cgi-bin/auth/login.html template:
my $auth = new CGI::Auth::Auto({ -logintmpl => 'login.html' });
If not:
my $auth = new CGI::Auth::Auto;
If you do but it resides elsewhere:
my $auth = new CGI::Auth::Auto({ -logintmplpath => '/home/myself/public_html/templates' });
=head1 SEE ALSO
CGI::Auth, CGI::Cookie, HTML::Template
=head1 CONTRIBUTIONS
Dulaunoy Fabrice
=head1 AUTHOR
Leo Charre leocharre at cpan dot org
=cut
( run in 1.126 second using v1.01-cache-2.11-cpan-5837b0d9d2c )