VOMS-Lite

 view release on metacpan or  search on metacpan

lib/VOMS/Lite/SAMLHelper.pm  view on Meta::CPAN

#!/usr/bin/perl
package VOMS::Lite::SAMLHelper;

use 5.004;
use strict;
use XML::Parser;
use Data::Dumper;
require Exporter;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
@ISA = qw(Exporter);
%EXPORT_TAGS = ( );
@EXPORT_OK = qw(  );
@EXPORT = ( );
$VERSION = '0.20';

####
# %knownns
# namespaces known about and corresponding local naming shorthand
#
my %knownns=( 'urn:oasis:names:tc:SAML:1.0:assertion' => 'saml1',
              'urn:oasis:names:tc:SAML:1.0:protocol' => 'saml1p',
              'http://www.w3.org/2000/09/xmldsig#' => 'ds',
              'urn:oasis:names:tc:SAML:2.0:assertion' => 'saml2',
              'urn:oasis:names:tc:SAML:2.0:protocol' => 'saml2p',
              'http://www.w3.org/2001/04/xmlenc#' => 'xenc'
            );

####
# %attributes
# local friendlynames for attributes that might appear in a SAML Assertion
#
my %attributes = ( 
# eduPerson Attributes
qw|
  urn:oid:1.3.6.1.4.1.5923.1.1.2                        eduPerson
  urn:mace:dir:attribute-def:eduPerson                  eduPerson
  urn:oid:1.3.6.1.4.1.5923.1.1.1.1                      eduPersonAffiliation
  urn:mace:dir:attribute-def:eduPersonAffiliation       eduPersonAffiliation
  urn:oid:1.3.6.1.4.1.5923.1.1.1.7                      eduPersonEntitlement
  urn:mace:dir:attribute-def:eduPersonEntitlement       eduPersonEntitlement
  urn:oid:1.3.6.1.4.1.5923.1.1.1.2                      eduPersonNickname
  urn:mace:dir:attribute-def:eduPersonNickname          eduPersonNickname
  urn:oid:1.3.6.1.4.1.5923.1.1.1.3                     	eduPersonOrgDN
  urn:mace:dir:attribute-def:eduPersonOrgDN            	eduPersonOrgDN
  urn:oid:1.3.6.1.4.1.5923.1.1.1.4                      eduPersonOrgUnitDN
  urn:mace:dir:attribute-def:eduPersonOrgUnitDN         eduPersonOrgUnitDN
  urn:oid:1.3.6.1.4.1.5923.1.1.1.5                      eduPersonPrimaryAffiliation
  urn:mace:dir:attribute-def:eduPersonPrimaryAffiliation eduPersonPrimaryAffiliation
  urn:oid:1.3.6.1.4.1.5923.1.1.1.8                      eduPersonPrimaryOrgUnitDN
  urn:mace:dir:attribute-def:eduPersonPrimaryOrgUnitDN  eduPersonPrimaryOrgUnitDN
  urn:oid:1.3.6.1.4.1.5923.1.1.1.6                      eduPersonPrincipalName
  urn:mace:dir:attribute-def:eduPersonPrincipalName     eduPersonPrincipalName
  urn:oid:1.3.6.1.4.1.5923.1.1.1.9                      eduPersonScopedAffiliation
  urn:mace:dir:attribute-def:eduPersonScopedAffiliation eduPersonScopedAffiliation
  urn:oid:1.3.6.1.4.1.5923.1.1.1.10                     eduPersonTargetedID
  urn:mace:dir:attribute-def:eduPersonTargetedID        eduPersonTargetedID
|,
# eduOrg Attributes
qw|
  urn:oid:1.3.6.1.4.1.5923.1.2.2                        eduOrg
  urn:mace:dir:attribute-def:eduOrg                     eduOrg
  urn:oid:1.3.6.1.4.1.5923.1.2.1.2                      eduOrgHomePageURI
  urn:mace:dir:attribute-def:eduOrgHomePageURI          eduOrgHomePageURI
  urn:oid:1.3.6.1.4.1.5923.1.2.1.3                      eduOrgIdentityAuthNPolicyURI
  urn:mace:dir:attribute-def:eduOrgIdentityAuthNPolicyURI eduOrgIdentityAuthNPolicyURI
  urn:oid:1.3.6.1.4.1.5923.1.2.1.4                      eduOrgLegalName
  urn:mace:dir:attribute-def:eduOrgLegalName            eduOrgLegalName
  urn:oid:1.3.6.1.4.1.5923.1.2.1.5                      eduOrgSuperiorURI
  urn:mace:dir:attribute-def:eduOrgSuperiorURI          eduOrgSuperiorURI
  urn:oid:1.3.6.1.4.1.5923.1.2.1.6                      eduOrgWhitePagesURI
  urn:mace:dir:attribute-def:eduOrgWhitePagesURI        eduOrgWhitePagesURI
|,
# VOMS Attributes
qw|
  http://dci-sec.org/saml/attribute/virtual-organization VOMSVO
  http://authz-interop.org/xacml/subject/voms-fqan      VOMSFQAN
  http://dci-sec.org/saml/attribute/group               VOMSGroup
  http://dci-sec.org/saml/attribute/group/primary       VOMSPrimaryGroup
  http://dci-sec.org/saml/attribute/role                VOMSRole
|, 
# Others
qw|



( run in 0.918 second using v1.01-cache-2.11-cpan-71847e10f99 )