Scroll to navigation

Lemonldap::NG::Common::Conf(3pm) User Contributed Perl Documentation Lemonldap::NG::Common::Conf(3pm)
 

NAME

Lemonldap::NG::Common::Conf - Perl extension written to manage Lemonldap::NG Web-SSO configuration.

SYNOPSIS

  use Lemonldap::NG::Common::Conf;
  my $confAccess = new Lemonldap::NG::Common::Conf(
              {
                  type=>'File',
                  dirName=>"/tmp/",
                  # To use local cache, set :
                  localStorage => "Cache::FileCache",
                  localStorageOptions = {
                      'namespace' => 'lemonldap-ng-config',
                      'default_expires_in' => 600,
                      'directory_umask' => '007',
                      'cache_root' => '/tmp',
                      'cache_depth' => 5,
                  },
              },
    ) or die "Unable to build Lemonldap::NG::Common::Conf, see Apache logs";
  my $config = $confAccess->getConf();

DESCRIPTION

Lemonldap::NG::Common::Conf provides a simple interface to access to Lemonldap::NG Web-SSO configuration. It is used by Lemonldap::NG::Handler, Lemonldap::NG::Portal and Lemonldap::NG::Manager.

SUBROUTINES

new (constructor): it takes different arguments depending on the chosen type. Examples:
File:
$confAccess = new Lemonldap::NG::Common::Conf(
{
type => 'File',
dirName => '/var/lib/lemonldap-ng/',
});
DBI:
$confAccess = new Lemonldap::NG::Common::Conf(
{
type => 'DBI',
dbiChain => 'DBI:mysql:database=lemonldap-ng;host=1.2.3.4',
dbiUser => 'lemonldap'
dbiPassword => 'pass'
dbiTable => 'lmConfig',
});
SOAP:
$confAccess = new Lemonldap::NG::Common::Conf(
{
type => 'SOAP',
proxy => 'http://auth.example.com/index.pl/config',
proxyOptions => {
timeout => 5,
},
});
SOAP configuration access is a sort of proxy: the portal is configured to use the real session storage type (DBI or File for example). See HTML documentation for more.
LDAP:
$confAccess = new Lemonldap::NG::Common::Conf(
{
type => 'LDAP',
ldapServer => 'ldap://localhost',
ldapConfBranch => 'ou=conf,ou=applications,dc=example,dc=com',
ldapBindDN => 'cn=manager,dc=example,dc=com",
ldapBindPassword => 'secret'
});
WARNING: You have to use the same storage type on all Lemonldap::NG parts in the same server.
getConf: returns a hash reference to the configuration. it takes a hash reference as first argument containing 2 optional parameters:
"cfgNum =" $number>: the number of the configuration wanted. If this argument is omitted, the last configuration is returned.
"fields =" [array of names]: the desired fields asked. By default, getConf returns all ("select * from lmConfig").
saveConf: stores the Lemonldap::NG configuration passed in argument (hash reference). it returns the number of the new configuration.

SEE ALSO

Lemonldap::NG::Handler, Lemonldap::NG::Portal, <http://lemonldap-ng.org/>

AUTHOR

Clement Oudot, <clem.oudot@gmail.com>
Francois-Xavier Deltombe, <fxdeltombe@gmail.com.>
Xavier Guimard, <x.guimard@free.fr>
Sandro Cazzaniga, <cazzaniga.sandro@gmail.com>

BUG REPORT

Use OW2 system to report bug or ask for features: <http://jira.ow2.org>

DOWNLOAD

Lemonldap::NG is available at <http://forge.objectweb.org/project/showfiles.php?group_id=274>

COPYRIGHT AND LICENSE

Copyright (C) 2008, 2009, 2010 by Xavier Guimard, <x.guimard@free.fr>
Copyright (C) 2012 by Sandro Cazzaniga, <cazzaniga.sandro@gmail.com>
Copyright (C) 2012 by Francois-Xavier Deltombe, <fxdeltombe@gmail.com.>
Copyright (C) 2009, 2010, 2011, 2012, 2013 by Clement Oudot, <clem.oudot@gmail.com>
This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
2014-01-17 perl v5.20.1