package ePlan::AppBase; use strict; use warnings; use base qw(CGI::Application); use CGI::Application::Plugin::ConfigAuto (qw/cfg cfg_file/); use CGI::Application::Plugin::DBIC::Schema (qw/dbic_config schema resultset rs/); use CGI::Application::Plugin::Session; use CGI::Application::Plugin::Authentication; use CGI::Application::Plugin::Authentication::Driver::Generic; my %users = ( ray => '123', jeff => '456', ); __PACKAGE__->authen->config( DRIVER => [ 'Generic', \%users ], STORE => 'Session', POST_LOGIN_URL => 'http://cgiapp.site/dash.pl', LOGIN_RUNMODE => 'login_user', LOGOUT_RUNMODE => 'logout_user', CREDENTIALS => ['authen_username','authen_password'], ); sub setup { my $self = shift; $self->start_mode('owner'); $self->run_modes('owner' => 'lookup_owner', 'user' => 'login_user', ); } sub login_user { ...... my $q = $self->query(); my $user = $q->param('authen_username'); my $pswd = $q->param('authen_password'); (now, what??) my @crednames=@{$self->authen->credentials}; # this fails --> my $go_nogo = $authen->verify_credentials();