NAME

VOMS::Lite::MyProxy - Perl extension for MyProxy server interaction

SYNOPSIS

use VOMS::Lite::MyProxy;
use VOMS::Lite::REQ;
%Result= %{ VOMS::Lite::MyProxy::Init(
              {
                  Server => "myproxy.grid-support.ac.uk",
                CertFile => "/home/fred/.globus/usercert.pem",
                 KeyFile => "/home/fred/.globus/userkey.pem",
                Username => "Freds7DayCert",
                Password => "A Good Secret"
              }
            )
          };

%Proxy= %{ VOMS::Lite::MyProxy::Get(
             {
                 Server => "myproxy.grid-support.ac.uk",
               Username => "Freds7DayCert",
               Password => "A Good Secret"
             }
           )
         };

DESCRIPTION

VOMS::Lite::MyProxy contains two subroutines, Get which offers a simplistic myproxy-get-delegation, and Init which offers a simplistic myproxy-init operation.

i.e. 'Init' delegates a proxy to a myproxy server and 'Get' asks the server to delegate a proxy to it.

VOMS::Lite::MyProxy::Init

VOMS::Lite::MyProxy::Init takes one argument, an anonymous hash containing all the relevant information required to delegate a Proxy to a MyProxy Server.

In the Hash the following scalars should be defined:
'Server'   the myproxy server's FQDN e.g. myproxy.grid-support.ac.uk
'CertFile' the path to the file containing the certificate to be delegated
'KeyFile'  the path to the file containing the private key associated with the certificate
'Username' the username to identify the delegated credential on the MyProxy server
'Password' the passphrase to protect the delegated credential on the MyProxy server

  Optionally 'Cert' and 'Key' can be specified instead of CertFile and KeyFile 
  where these scalars contain the DER encoded certificate and key respectively.

The following may also be defined

'Lifetime' the lifetime in seconds that the delegated credential is to have.
'AC' a DER encoded Attribute Certificate to place within the proxy certificate.

The return value is a reference to a hash containing Username, Password, Lifetime, Server, Port, Warnings => Reference to an array (A proxy will be delegated despite warnings) Errors => Reference to an array (It was not possible to delegate a proxy) ProxyCert => A copy of the GSI proxy certificate delegated to the MyProxy Server DER encoded

VOMS::Lite::MyProxy::Get

VOMS::Lite::MyProxy::Init takes one argument, an anonymous hash containing all the relevant information required to delegate a Proxy to a MyProxy Server.

In the Hash the following scalars should be defined:
'Server'   the myproxy server's FQDN e.g. myproxy.grid-support.ac.uk
'CertFile' the path to the file containing the certificate to be delegated
'KeyFile'  the path to the file containing the private key associated with the certificate
'Username' the username to identify the delegated credential on the MyProxy server
'Password' the passphrase to protect the delegated credential on the MyProxy server

  Optionally 'Cert' and 'Key' can be specified instead of CertFile and KeyFile 
  where these scalars contain the DER encoded certificate and key respectively.

The following may also be defined

'Lifetime' the lifetime in seconds that the delegated credential is to have.
'AC' a DER encoded Attribute Certificate to place within the proxy certificate.

The return value is a reference to a hash containing

CertChain     a reference to an array containing the certificate chain DER encoded
Key           the DER encoded Key
Warnings      a reference to an array containing any warnings
Errors        a reference to an array containing any errors.  
              If there were errors there will be no CertChain or Key

EXPORT

None by default;

SEE ALSO

GFD-E.054 The MyProxy Protocol http://www.gridforum.org/documents/GFD.54.pdf

The MyProxy Website http://grid.ncsa.uiuc.edu/myproxy/

This module was originally designed for the SHEBANGS and SARoNGS project at The University of Manchester. http://www.rcs.manchester.ac.uk/projects/shebangs/ http://www.rcs.manchester.ac.uk/projects/sarongs/

Mailing list, SARONGS-DISCUSS@jiscmail.ac.uk

Mailing list, shebangs@listserv.manchester.ac.uk

Mailing list, voms-lite@listserv.manchester.ac.uk

AUTHOR

Mike Jones <mike.jones@manchester.ac.uk>

COPYRIGHT AND LICENSE

Copyright (C) 2006 by Mike Jones

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