|
NAMEGantry::Control::C::Authz::PageBasedBase - Page based access control. SYNOPSISuse Gantry::Control::C::Authz::PageBasedSubClass; DESCRIPTIONThis 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. APACHEThis 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. DATABASEThese 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
);
METHODS
SEE ALSOGantry::Control::C::Pages(3), Gantry::Control::C::Authz(3), Gantry::Control(3), Gantry(3) LIMITATIONSPages must be defined for this to work, otherwise everything returns FORBIDDEN to the user. AUTHORTim Keefer <tkeefer@gmail.com> COPYRIGHTCopyright (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.
|