ProxyPlugin
Defines the plugin to perform evaluation on the user in the proxy
- class DIRAC.Resources.Catalog.ConditionPlugins.ProxyPlugin.ProxyPlugin(conditions)
Bases:
FCConditionBasePlugin
This plugin is to be used when filtering based on the user contained in the proxy
- __init__(conditions)
This plugin allows to perform tests on the proxy. Supported conditions are:
username.in(<comma separated list of names>): the user should be in the defined list
username.not_in(<comma separated list of names>): the user should not be in the defined list
group.in(<comma separated list of names>): the group should be in the defined list
group.not_in(<comma separated list of names>): the group should not be in the defined list
property.has(<property name>): the proxy should have the given property
property.has_not(<property name>): the proxy should not have the given property
voms.has(<voms role>) (see below): if the given VOMS role is associated to the proxy
voms.has_not(<voms role>) (see below): if the given VOMS role is not associated to the proxy
Because it is not possible to use the ‘=’ sign, the VOMS role has to be declared using the symbol ‘->’. For example:
"voms.has(/lhcb/Role->production)" will look for "/lhcb/Role=production" in the VOMS list contained in the proxy info.
If the conditions does not follow the form ‘attribute.predicate(value)’, an exception is thrown, and will lead to all the expression be evaluated to False
If there is no proxy, all conditions are evaluated to False
- eval(**kwargs)
evaluate the parameters.