NAME
Gantry::Plugins::Shibboleth - Plugin for shibboleth based authentication
SYNOPSIS
Plugin must be included in the Applications use statment.
<Perl>
use MyApp qw{
-Engine=CGI
-TemplateEngine=TT
-PluginNamespace=your_module_name
Shibboleth
};
</Perl>
Bigtop:
config {
engine MP20;
template_engine TT;
plugins Shibboleth;
...
There are two config options.
shib_attributes - Comma separated list of attributes that should be pulled from ENV. shib_group_attribute - Shibboleth attribute to use as the group membership.
DESCRIPTION
This plugin mixes in auth_user_row and auth_user_groups methods that get their values from shibboleth attributes. auth_user_row is an object with accessor methods for each of the shibboleth attributes. auth_user_groups returns a hash of groups that are taken from the attribute specified in the configuration file as the shib_group_attribute.
CONFIGURATION
The plugin needs to be specified in your application use statement. The only required config option is shib_attributes which is a comma separated list of attributes you want to be loaded into the auth_user_row. You can also specify a shib_group_attribute which will be used to populate the hash returned by the auth_user_groups method.
CONFIG OPTIONS
shib_attributes - Comma separated list of attributes that should be pulled from ENV.
shib_group_attribute - Shibboleth attribute to use as the group membership.
METHODS
- get_callbacks
-
Registers the initialize function as a init level callback.
- auth_user_row
-
This is mixed into the gantry object and can be called retrieve the user row which is an object with accessor methods for each of the specified shibboleth attributes.
- auth_user_groups
-
This is mixed into the gantry object and can be called to retrieve the defined groups for the authed user.
- initialize
-
This method is called on each request to load the specified shibboleth attributes.
SEE ALSO
Gantry
AUTHOR
John Weigel <jweigel@sunflowerbroadband.com>
COPYRIGHT AND LICENSE
Copyright (C) 2009 The World Company
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.