Class GlobusNamespacesParser

java.lang.Object
eu.emi.security.authn.x509.helpers.ns.GlobusNamespacesParser
All Implemented Interfaces:
NamespacesParser

public class GlobusNamespacesParser extends Object implements NamespacesParser
Parses a single .signing_policy file and returns NamespacePolicy object. Only the simplified parsing of the EACL format is implemented, in a similar way is in case of a native Globus implementation. However there are differences. First of all the format of this file is defined in a very imprecise way.

The parsing is done in the following way:

  • as a whitespace the space and tab characters are used; a separator may contain an arbitrary number of those, below only one space was used for clarity.
  • all empty lines, whitespace only lines and lines beginning with '#' are ignored
  • the first line like this is searched: access_id_CA X509 'ANY_STRING' other are ignored. Line with the access_id_CA prefix and other ending causes an error.
  • after this line it is expected that the next significant line is : pos_rights globus CA:sign
  • next the line in the format: cond_subjects globus '"ANY_STRING" ["ANY_STRING"]' is expected. The trailing string need not to be enclosed in '' and in "", but if it is then the order of quotation must be preserved.
  • go to step 3.