Provided by: liblcmaps0_1.6.6-2.1build1_amd64 bug

NAME

       lcmaps - The Local Credential MAPping Service

SYNOPSIS

       lcmaps

DESCRIPTION

       The  LCMAPS framework is designed to take various credentials as input, e.g. a certificate
       and/or VOMS credentials, and map them to Unix credentials as output. Unix credentials  are
       the  basic  POSIX credentials, i.e. User ID, Group ID and Secondary Group IDs. LCMAPS is a
       framework that can load and run one or more 'credential mapping' plugins.   The  framework
       will  load  and  run  plugins  to perform the identity mapping. Site and organizations can
       create their own new functionality by creating new plugins. The LCMAPS  framework  exposes
       various APIs to push credentials into the framework and to get the account mapping results
       in return. The lcmaps.db configuration file configures the LCMAPS plugins  and  configures
       the order in which the plugins are launch. Some practical examples are shown below.

       LCMAPS  is  used by gLExec, the lcas-lcmaps-gt(4)-interface to interface with a Globus GT4
       and GT5 Gatekeeper, GridFTP daemon and GSI-OpenSSHd, in StoRM and somewhere in XRootD.

INVOCATION

       When an application initializes LCMAPS the plugins will be loaded based on  the  lcmaps.db
       configuration  file.   The  application  can use one of the APIs to provide credentials as
       input. The loaded plugins will be executed in the sequence described in the same lcmaps.db
       configuration file.

       During  a  plugin's  execution  it  has  access  to the credential data in the LCMAPS core
       memory. The plugin is also capable of writing credential mapping results  in  LCMAPS.  The
       plugins  can each resolve a part of the mapping and they can also perform actions based on
       these (intermediate) results, e.g. run setuid, setgid and setgroup calls or interact  with
       an LDAP service.

       The  plugins  are  executed in a state machine. When a plugin finishes successfully it can
       execute a different next plugin then when it failed. This allows LCMAPS to pass  different
       plugins to resolve a credential mapping.

ENVIRONMENT

       GATEKEEPER_JM_ID
              Extra Gatekeeper log message to be able to more easily track a Job Manager ID.

       GLOBUSID
              See $GATEKEEPER_JM_ID.

       JOB_REPOSITORY_ID
              See  $GATEKEEPER_JM_ID, but explicitly for the purpose of the LCMAPS Job Repository
              plugin.

       LCMAPS_DB_FILE
              Override the build-in default filename for the lcmaps.db  configuration  file  with
              the value of this environment variable.

       LCMAPS_DEBUG_LEVEL
              Tune  the logging output cut off level. The numbers resemble the numbers as used in
              previous released in the range [1-5]. However, since  LCMAPS  version  1.5.0  these
              numbers resemble a numerically shifted Syslog number.

              0      Silent logging, no messages will be written to file or Syslog.

              1      All messages with a priority of LOG_ERR are written to file or Syslog.  More
                     severe error messages are squashed down to the LOG_ERR priority. This is  to
                     prevent Syslog from blocking on default configurations and to prevent Syslog
                     from broadcasting LCMAPS related messages on the  connected  TTYs  when  old
                     plug-ins are used.

              2      All  messages  with  a priority of LOG_WARNING or more severe, i.e. LOG_ERR,
                     are written to file and/or Syslog.

              3      All messages with a priority of LOG_NOTICE or more severe, i.e.  LOG_ERR  or
                     LOG_WARNING,  are  written  to  file  and/or  Syslog.  This  is  the default
                     advertised setting for the lcas-lcmaps-gt-interface and glexec.  The  "FINAL
                     CRED"  messages  are written on LOG_NOTICE and indicate the resulting LCMAPS
                     mapping from an X.509 and/or VOMS credential to a Unix/POSIX credential.

              4      All messages with a priority of LOG_INFO or more severe, i.e.  all  messages
                     between  (and  including)  LOG_ERR  and LOG_INFO, are written to file and/or
                     Syslog. This value is the build-in default. The success or failures of plug-
                     ins  are  written on LOG_INFO. To see the flow of plug-ins this log level is
                     the advised log level to set.

              5      All messages with a priority of LOG_DEBUG or more severe, i.e. all  messages
                     between  (and  including)  LOG_ERR and LOG_DEBUG, are written to file and/or
                     Syslog. This is the most verbose mode and should be used  carefully  as  the
                     amount  of  information  flowing  from  here  might  hinder normal operation
                     performance if the syslogd isn't able to keep up.

       LCMAPS_DIR
              The base directory of the $LCMAPS_DB_FILE parameter. This variable is  concatenated
              with the $LCMAPS_DB_FILE

       LCMAPS_ETC_DIR
              See $LCMAPS_DIR

       LCMAPS_LOG_FILE
              Overrides  the  build-in  default  file  path  to  log the output to. When set, the
              logging will not go to Syslog.

       LCMAPS_LOG_STRING
              Prepend all log output messages with value of this environment variable

       LCMAPS_MODULES_DIR
              Directory to search for the LCMAPS plugins (or modules). Same as the path option in
              the lcmaps.db file..

       LCMAPS_POLICY_NAME
              A  colon  separated list of LCMAPS plugin execution policies. When this environment
              variable is present, only the listed execution policies will be executed. They will
              be executed in the order as written in the lcmaps.db file (from top to bottom).

       LCMAPS_VERIFY_TYPE
              Deprecated

       LCMAPS_VOMS_EXTRACT
              Deprecated

       LCMAPS_X509_CERT_DIR
              Specific setting equal to the $X509_CERT_DIR environment variable

       LCMAPS_X509_VOMS_DIR
              Specific setting equal to the $X509_VOMS_DIR environment variable

       X509_CERT_DIR
              The  directory  where  all  the  CA  files,  e.g. CA certificate and CRL files, are
              located. The default location is: /etc/grid-security/certificates/.

       X509_VOMS_DIR
              This VOMS directory will hold the VOMS .lsc files and/or PEM files to  authenticate
              the VOMS Attributes Certificates. Subdirectories are named by the VO name and scope
              the .lsc and PEM files in their authentication to one particular  VO.  The  default
              location is: /etc/grid-security/vomsdir/.

RETURN VALUES

       LCMAPS_SUCCESS
              Success.

       LCMAPS_FAIL
              Failure.

NOTES

       For an API specification, please use make doc to make the apidoc.

BUGS

       The  apidoc  is  not  complete.  It  has  most  interfaces,  but  needs  to be checked for
       completeness.

       Please report any errors to the Nikhef Grid Middleware  Security  Team  <grid-mw-security-
       support@nikhef.nl>.

SEE ALSO

       lcmaps.db(5),          lcas_lcmaps_gt4_interface(8),          lcas_lcmaps_gt_interface(8),
       lcmaps_dummy_bad.mod(8),         lcmaps_dummy_good.mod(8),         lcmaps_ldap_enf.mod(8),
       lcmaps_localaccount.mod(8),     lcmaps-plugins-c-pep(8),    lcmaps_plugins_scas_client(8),
       lcmaps_poolaccount.mod(8),    lcmaps_posix_enf.mod(8),     lcmaps_tracking_groupid.mod(8),
       lcmaps_verify_proxy.mod(8),  scas(8),  scas.conf(5),  glexec(1),  glexec.conf(5),  ees(1),
       ees.conf(5)

AUTHORS

       LCMAPS and the LCMAPS plug-ins were written by the Grid Middleware Security Team <grid-mw-
       security@nikhef.nl>.

                                        December 22, 2011                               LCMAPS(3)