Template::Plugin::GantryAuthCookie - decrypter for AuthCookie plugin
In a Template Toolkit:
[% USE decrypter = GantryAuthCookie( { cookie = cookies.cookie_name, conf_instance = 'gantry_conf_instance', conf_file = '/etc/strange.gantry.conf', } ) %] [% user_name = decrypter.user_name %]
conf_file is optional and defaults to /etc/gantry.conf
Alternatively, you could omit conf_instance and conf and directly supply the auth_secret key:
[% USE decrypter = GantryAuthCookie( { cookie = cookies.cookie_name, auth_secret = env.auth_secret } ) %]
In httpd.conf (or something it includes):
PerlModule Apache::Template PerlSetEnv auth_secret '$ecr3t' TT2Params cookies env <Files *.something> SetHandler perl-script PerlHandler Apache::Template </Files>
You don't need this module if your page is generated by a Gantry controller. In that case, you can use Gantry::Plugins::AuthCookie and call its validate_user function directly. Use this when you need to display user information on a page which is generated by Apache::Template.
This module is a Template Toolkit plugin for decrypting Gantry::Plugins::AuthCookie cookies. In the USE statement in your template, pass at least the contents of the cookie and either the name of your Gantry::Conf instance or your auth_secret. If your master Gantry::Conf file is not /etc/gantry.conf, it as well.
You must define auth_secret in Gantry::Conf, or pass it directly. If you pass it directly, you probably want to use PerlSetEnv to keep it out of the template. That's what I did in the SYNOPSIS above.
Called for you by TT when you USE the plugin. There are four parameters:
cookie - the auth cookie content conf_instance - your Gantry::Conf instance conf_file - your master Gantry::Conf file (optional) auth_secret - the compression secret key
Usually you get the cookie contents from the Apache::Template module's TT2Params cookies parameter. If you pass the secret directly, you should get it by these commands in httpd.conf:
PerlSetEnv auth_secret '4our$ecr3t1ssaf3' TT2Params cookie env
Then fish it out of the env hash in your template. See the SYNOPSIS above.
Returns the name of the user from the cookie, if there is one.
Used by Gantry::Plugins::CRUD to retrieve the decryption key. This is taken from the Gantry::Conf variable or constructor argument of the same name. Precendence is given to the constructor argument if both are suppied.
Gantry::Plutings::AuthCookie, Gantry::Conf
Phil Crow <philcrow2000@yahoo.com>
Copyright (c) 2006, Phil Crow
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.