Provided by: lcmaps-plugins-voms_1.7.1-1_amd64 

NAME
lcmaps_voms_poolgroup.mod - LCMAPS plugin to switch user identity based on VOMS credentials by pool
groups
SYNOPSIS
lcmaps_voms_poolgroup.mod [-groupmapfile group-mapfile] [-groupmapdir groupmapdir] [--map-to-secondary-
groups] [-override_inconsistency] [-mapall] [-mapmin number of minimal mappings]
[-strict_poolprefix_match {yes|no}]
DESCRIPTION
The VOMS poolgroup acquisition plugin is a 'VOMS-aware' plugin similar to the lcmaps_voms_poolac‐
count.mod.8 plugin, but for groups instead of accounts. The plugin tries to find local groups (more
specifically GroupIDs) based on the VOMS information that is available from LCMAPS, in particular the
Fully Qualified Attribute Names (FQANs). The actual groups are acquired from a group pool. The result‐
ing list of groups will be looked up in the /etc/groups and/or LDAP directories to determine which Group
IDs should be added as a mapping result.
It will first try to find an FQAN to pool name (starting with a dot '.' instead of an alphanumeric char‐
acter) mapping in the group-mapfile which will provide it with a list of local groups. The group-mapfile
is similar to a grid-mapfile.
The groupmapdir directory is going to be used as a persistent and open mapping database. A pool is de‐
fined as being a set of groups following a particular pattern in their naming, e.g. pool001 or atlas001.
In the directory the plug-in will make a new filename consisting of the lowercase URL-encoded VOMS FQAN.
For example, if the FQAN is mapped to .atlas in the group-mapfile, it will be mapped to the pool groups
atlas001, atlas002, etc., the names of which can be found in the groupmapdir.
If there is no pool group assigned to the FQAN yet, the plugin will try to find a free pool group (i.e.
one for which the link count is 1) and make a new hardlink to it with the URL-encoded FQAN as name.
When a user returns to this site the plugin will look for the FQAN of the user (URL encoded) in this di‐
rectory. If found, the corresponding pool group will be reassigned.
Example showing the output of ls -li:
1836080 -rw-r--r-- 2 root root %2fdteam%2f
1836080 -rw-r--r-- 2 root root dteam001
The filename is hardlinked to the mapped group name. Creating this hardlink is designed to be an atomic
operation and verified to work on large installations serving multiple services from one NFS-share.
OPTIONS
-groupmapfile group-mapfile
This file must contain FQAN to pool group name mappings, similar to the grid-mapfile. The same
formatting rules of the grid-mapfile apply to the group-mapfile. It is strongly advised to set it
to an absolute path to avoid usage of the wrong file(path). In a (setuid-)root application, rela‐
tive paths are taken with respect to /etc/grid-security/. It is important to not mix the grid-
mapfile and group-mapfile.
-groupmapdir groupmapdir"
A directory used for the group mapping database, similar to the gridmapdir. If this option is un‐
set, the plugin will try to obtain the value from the environment variable GROUPMAPDIR (see ENVI‐
RONMENT). In a (setuid-)root application, relative paths are taken with respect to /etc/grid-se‐
curity/. It is important to not mix the gridmapdir and groupmapdir directories.
--map-to-secondary-groups
When enabled, the plug-in will map also the first FQAN of the user to secondary Group IDs, hence
there will be no primary Group ID set by this plug-in when enabled. Note that also if the first
FQAN does not give a mapping, there will be no primary Group ID set by this plug-in.
-override_inconsistency
Moving a user from one pool to another (because of a VO change) should normally only be done by
changing the group-mapfile indicating the new pool for this user. If the resulting URL-encoded
lease (hardlink) already exists but points to a different pool group then would result from the
running of this plugin, the plugin would normally fail. This option instructs the plugin to remap
to the new pool group.
-mapall
When enabled, a failure will be triggered if not all of the FQANs were successfully mapped to pri‐
mary or secondary Group IDs.
-mapmin minimum number of mappings
This option will set a minimum amount of FQANs that have to be mapped for the plugin to succeed.
Default is '0'. Note: if the minimum is unset or set to 0 the plugin will succeed (if no other
errors occur) even if no pool groups were found.
-strict_poolprefix_match {yes|no}
If this is set to 'yes', a line in the group-mapfile like <FQAN> .poolgr will result in mapping
pool groups matching only the regexp poolgr[0-9]+. Otherwise it will be allowed to match the
wider range of poolgr.* (legacy behaviour).
RETURN VALUES
LCMAPS_MOD_SUCCESS
Success.
LCMAPS_MOD_FAIL
Failure.
ENVIRONMENT
GROUPMAPDIR
When no groupmapdir is specified as option to the plugin, it will try to obtain the file location
from this environment variable.
BUGS
Please report any errors to the Nikhef Grid Middleware Security Team <grid-mw-security-sup‐
port@nikhef.nl>.
SEE ALSO
lcmaps.db(5), lcmaps(3).
AUTHORS
LCMAPS and the LCMAPS plug-ins were written by the Grid Middleware Security Team <grid-mw-securi‐
ty@nikhef.nl>.
Stichting FOM/Nikhef February 6, 2015 LCMAPS_VOMS_POOLGROUP.MOD(8)