Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CDBI(3)		      User Contributed Perl Documentation	       CDBI(3)

NAME
       Catalyst::Plugin::Authentication::CDBI -	CDBI Authentication for
       Catalyst

SYNOPSIS
	   use Catalyst	'Authentication::CDBI';
	   __PACKAGE__->config->{authentication} = {
	       user_class	    => 'PetStore::Model::CDBI::Customer',
	       user_field	    => 'email',
	       role_class	    => 'PetStore::Model::CDBI::Role',
	       user_role_class	    => 'PetStore::Model::CDBI::CustomerRole',
	       user_role_user_field => 'customer'
	   };
	   $c->login( $user, $password );
	   $c->logout;
	   $c->session_login( $user, $password );
	   $c->session_logout;
	   $c->roles(qw/customer admin/);

	   CREATE TABLE	customer (
	       id INTEGER PRIMARY KEY,
	       email TEXT,
	       password	TEXT
	   );

	   CREATE TABLE	role (
	       id INTEGER PRIMARY KEY,
	       name TEXT
	   );

	   CREATE TABLE	customer_role (
	       id INTEGER PRIMARY KEY,
	       customer	INTEGER	REFERENCES customer,
	       role INTEGER REFERENCES role
	   );

DESCRIPTION
       This plugin allows you to authenticate your web users using database
       tables accessed through "Class::DBI" classes.

       Note that this plugin requires a	session	plugin such as
       "Catalyst::Plugin::Session::FastMmap".

       This module is now well past the	teatime	of it's	lifespan, and no new
       features	will be	added. For new applications, you probably want to look
       at Catalyst::Plugin::Authentication and friends instead

CONFIGURATION
       This plugin is configured by passing an "authentication"	hash reference
       to your application's config method.  The following keys	are supported:

       user_class
	   the name of the class that represents a user	object (no default)

       user_field
	   the name of the column holding the user identifier (defaults	to
	   ""user"")

       password_field
	   the name of the column holding the user's password (defaults	to
	   ""password"")

       password_hash
	   specifies the hashing method	for password values; one of: "SHA" or
	   "MD5" (the values are not case-sensitive and	the default is empty,
	   i.e.	no hashing).

       role_class
	   the name of the role	class

       role_field
	   name	of the role field

       user_role_class
       user_role_user_field
	   (defaults to	""uer"")

       user_role_role_field
	   (defaults to	""role"")

   METHODS
       login
	   Attempt to authenticate a user. Takes username/password as
	   arguments,

	       $c->login( $user, $password );

	   The user remains authenticated until	end of request.	 See
	   "session_login" for persistent login.

       logout
	   Log out the user. will not clear the	session, so user will still
	   remain logged in at next request unless session_logout is called.

       process_permission
	   check for permissions. used by the 'roles' function.

       roles
	   Check permissions for roles and return true or false.

	       $c->roles(qw/foo	bar/);

	   Returns an arrayref containing the verified roles.

	       my @roles = @{ $c->roles	};

       session_login
	   Persistently	login the user.	The user will remain logged in until
	   he clears the session himself, or session_logout is called.

	       $c->session_login( $user, $password );

       session_logout
	   Session logout. will	delete the user	object from the	session.

   EXTENDED METHODS
       prepare_action
	   sets	$c->request->{user} from session.

       setup
	   sets	up $c->config->{authentication}.

   OVERLOADED METHODS
       process_roles
	   Takes an arrayref of	roles and checks if user has the supplied
	   roles.  Returns 1/0.

SEE ALSO
       Catalyst, Catalyst::Plugin::Session::FastMmap

AUTHOR
       Sebastian Riedel	<sri@cpan.org>,	Marcus Ramberg <mramberg@cpan.org>,
       Andrew Ford <a.ford@ford-mason.co.uk>

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

perl v5.24.1			  2005-12-08			       CDBI(3)

NAME | SYNOPSIS | DESCRIPTION | CONFIGURATION | SEE ALSO | AUTHOR | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Catalyst::Plugin::Authentication::CDBI&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help