Xavier Guimard > Lemonldap-NG-Manager-0.86 > Lemonldap::NG::Manager::SOAPServer

Download:
Lemonldap-NG-Manager-0.86.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
Report a bug
Module Version: 0.3   Source   Latest Release: Lemonldap-NG-Manager-0.91

NAME ^

Lemonldap::NG::Manager::SOAPServer - Perl extension written to access to Lemonldap::NG Web-SSO configuration or sessions via SOAP.

SYNOPSIS ^

Server side

  use Lemonldap::NG::Manager::SOAPServer;
  Lemonldap::NG::Manager::SOAPServer->start(
              configStorage => {
                      type    => "File",
                      dirName => "/usr/share/doc/lemonldap-ng/examples/conf/"
              },
              # 2 types are available :
              #   * 'config' for configuration access
              #   * 'sessions' for sessions access
              type          => 'sessions',
              # For 'sessions' type, you can choose exported functions (get
              # only by default):
              AuthorizedFunctions => 'new get set',
  );

Client side

See Lemonldap::NG::Manager::Conf::SOAP for documentation on client side configuration access.

See Lemonldap::NG::Manager::Apache::Session::SOAP for documentation on client side sessions access.

Configuration access

Area protection

  package My::Package;
  use Lemonldap::NG::Handler::SharedConf;
  @ISA = qw(Lemonldap::NG::Handler::SharedConf);
  
  __PACKAGE__->init ( {
      localStorage        => "Cache::FileCache",
      localStorageOptions => {
                'namespace'          => 'MyNamespace',
                'default_expires_in' => 600,
      },
      configStorage       => {
                type  => 'SOAP',
                proxy => 'http://manager.example.com/soapserver.pl',
                # If soapserver is protected by HTTP Basic:
                User     => 'http-user',
                Password => 'pass',
      },
      https               => 0,
  } );

Authentication portal

  use Lemonldap::NG::Portal::SharedConf;
  
  my $portal = Lemonldap::NG::Portal::SharedConf->new ( {
          configStorage => {
                  type    => 'SOAP',
                  proxy   => 'http://localhost/devel/test.pl',
                  # If soapserver is protected by HTTP Basic:
                  User     => 'http-user',
                  Password => 'pass',
          }
  });
  # Next as usual...
  if($portal->process()) {
    ...

Manager

  use Lemonldap::NG::Manager;
  
  my $m=new Lemonldap::NG::Manager(
       {
           configStorage=>{
                  type  => 'SOAP',
                  proxy => 'http://localhost/devel/test.pl'
                  # If soapserver is protected by HTTP Basic:
                  User     => 'http-user',
                  Password => 'pass',
           },
            dhtmlXTreeImageLocation=> "/imgs/",
        }
  ) or die "Unable to start";
  
  $m->doall();

Sessions access

  Use simply Lemonldap::NG::Manager::Apache::Session::SOAP in the 'Apache session
  module'parameter (instead of Apache::Session::MySQL or
  Apache::Session::File).

DESCRIPTION ^

Lemonldap::NG::Manager::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.

Lemonldap::NG::Manager::SOAPServer provides a SOAP proxy system that can be used to access

SUBROUTINES

SECURITY

Since Lemonldap::NG::Manager::SOAPServer act as a CGI, you can protect configuration access by any of the HTTP protection mecanisms. See Lemonldap::NG::Manager::Conf::SOAP for the security in the client side.

In "session" mode, you can control what functions can be used by SOAP. By default, only "get" can be used: it means that only handlers can work with it. Use "AuthorizedFunctions" parameter to grant other functions.

SEE ALSO ^

Lemonldap::NG::Manager, Lemonldap::NG::Manager::Conf::SOAP, Lemonldap::NG::Handler, Lemonldap::NG::Portal, http://wiki.lemonldap.objectweb.org/xwiki/bin/view/NG/Presentation

AUTHOR ^

Xavier Guimard, <x.guimard@free.fr>

BUG REPORT ^

Use OW2 system to report bug or ask for features: http://forge.objectweb.org/tracker/?group_id=274

DOWNLOAD ^

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

COPYRIGHT AND LICENSE ^

Copyright (C) 2007 by Xavier Guimard

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.8 or, at your option, any later version of Perl 5 you may have available.