Gantry::Control::C::Authz::PageBasedBase - Page based access control.
use Gantry::Control::C::Authz::PageBasedSubClass;
This handler is the authorization portion for page based authorization. It will authenticate only users who have been allowed from the administrative interface into a particular uri. The module returns FORBIDDEN if you do not have access to a particular uri.
This is a sample of how to set up Authorization only on a location.
<Location /location/to/auth > AuthType Basic AuthName "Manual" PerlSetVar dbconn "dbi:Pg:dbname=..." PerlSetVar dbuser "<database_username>" PerlSetVar dbpass "<database_password>" PerlSetVar dbcommit off PerlAuthenHandler Gantry::C::Control::AuthenSubClass PerlAuthzHandler Gantry::C::Control::Authz::PageBasedSubClass require valid-user </Location>
Choose a subclass to match your other database ORM scheme. Use Gantry::C::Control::Authz::PageBasedCDBI if you use Class::DBI (or something descended from it), otherwise use Gantry::C::Control::Authz::PageBasedRegular.
These are the authentication tables that this handler uses.
create table "auth_pages" ( "id" int4 primary key default nextval('auth_pages_seq') NOT NULL, "user_perm" int4, "group_perm" int4, "world_perm" int4, "owner_id" int4, "group_id" int4, "uri" varchar, "title" varchar ); create table "auth_groups" ( "id" int4 primary key default nextval('auth_groups_seq') NOT NULL, "name" varchar, "description" text ); create table "auth_group_members" ( "id" int4 primary key default nextval('auth_group_members_seq') NOT NULL, "user_id" int4, "group_id" int4 );
The mod_perl page based authz handler.
For internal use.
Gantry::Control::C::Pages(3), Gantry::Control::C::Authz(3), Gantry::Control(3), Gantry(3)
Pages must be defined for this to work, otherwise everything returns FORBIDDEN to the user.
Tim Keefer <tkeefer@gmail.com>
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.
To install Gantry, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Gantry
CPAN shell
perl -MCPAN -e shell install Gantry
For more information on module installation, please visit the detailed CPAN module installation guide.