File Coverage

blib/lib/URN/OASIS/SAML2.pm
Criterion Covered Total %
statement 123 123 100.0
branch n/a
condition n/a
subroutine 41 41 100.0
pod n/a
total 164 164 100.0


line stmt bran cond sub pod time code
1             # vim: tw=120
2             package URN::OASIS::SAML2;
3             our $VERSION = '0.003';
4 1     1   68986 use warnings;
  1         10  
  1         30  
5 1     1   5 use strict;
  1         2  
  1         21  
6              
7             # ABSTRACT: Constants for urn:oasis SAML2 implementations
8              
9 1     1   4 use Exporter qw(import);
  1         2  
  1         143  
10              
11             my @binding = qw(
12             BINDING_HTTP_POST
13             BINDING_HTTP_ARTIFACT
14             BINDING_HTTP_REDIRECT
15             BINDING_SOAP
16             BINDING_POAS
17             BINDING_REVERSE_SOAP
18             );
19              
20             my @class = qw(
21             CLASS_UNSPECIFIED
22             CLASS_PASSWORD_PROTECTED
23             CLASS_M2FA_UNREGISTERED
24             CLASS_M2FA_CONTRACT
25             CLASS_SMARTCARD
26             CLASS_SMARTCARD_PKI
27             );
28              
29             my @nameid = qw(
30             NAMEID_FORMAT
31             NAMEID_FORMAT_ENTITY
32             NAMEID_EMAIL
33             NAMEID_TRANSIENT
34             NAMEID_PERSISTENT
35             );
36              
37             my @urn = qw(
38             URN_ASSERTION
39             URN_METADATA
40             URN_PROTOCOL
41             URN_SIGNATURE
42             URN_ENCRYPTION
43             URN_PROTOCOL_ARTIFACT_RESPONSE
44             URN_PROTOCOL_LOGOUT_REQUEST
45             URN_PROTOCOL_RESPONSE
46             );
47              
48             my @ns = qw(
49             NS_ASSERTION
50             NS_METADATA
51             NS_PROTOCOL
52             NS_SIGNATURE
53             NS_ENCRYPTION
54             );
55              
56             my @status = qw(
57             STATUS_AUTH_FAILED
58             STATUS_REQUESTER
59             STATUS_REQUEST_DENIED
60             STATUS_RESPONDER
61             STATUS_SUCCESS
62             );
63              
64             our @EXPORT_OK = (@binding, @class, @nameid, @ns, @urn, @status);
65              
66             our %EXPORT_TAGS = (
67             all => \@EXPORT_OK,
68             bindings => \@binding,
69             binding => \@binding,
70             classes => \@class,
71             class => \@class,
72             nameid => \@nameid,
73             urn => \@urn,
74             ns => \@ns,
75             status => \@status,
76             );
77              
78 1     1   6 use constant base => 'urn:oasis:names:tc:SAML:';
  1         1  
  1         97  
79 1     1   5 use constant saml2 => base . '2.0:';
  1         2  
  1         51  
80 1     1   6 use constant saml1_1 => base . '1.1:';
  1         1  
  1         43  
81              
82 1     1   4 use constant URN_ASSERTION => saml2 . 'assertion';
  1         2  
  1         52  
83 1     1   5 use constant NS_ASSERTION => 'saml';
  1         2  
  1         56  
84              
85 1     1   5 use constant URN_METADATA => saml2 . 'metadata';
  1         1  
  1         36  
86 1     1   4 use constant NS_METADATA => 'md';
  1         2  
  1         73  
87              
88 1     1   5 use constant URN_PROTOCOL => saml2 . 'protocol';
  1         2  
  1         35  
89 1     1   4 use constant NS_PROTOCOL => 'samlp';
  1         1  
  1         43  
90              
91 1     1   5 use constant URN_SIGNATURE => 'http://www.w3.org/2000/09/xmldsig#';
  1         1  
  1         46  
92 1     1   5 use constant NS_SIGNATURE => 'ds';
  1         2  
  1         35  
93              
94 1     1   4 use constant URN_ENCRYPTION => 'http://www.w3.org/2001/04/xmlenc#';
  1         2  
  1         55  
95 1     1   7 use constant NS_ENCRYPTION => 'xenc';
  1         1  
  1         46  
96              
97 1     1   5 use constant URN_PROTOCOL_ARTIFACT_RESPONSE => URN_PROTOCOL . ':ArtifactResponse';
  1         2  
  1         40  
98 1     1   4 use constant URN_PROTOCOL_LOGOUT_REQUEST => URN_PROTOCOL . ':LogoutRequest';
  1         1  
  1         47  
99 1     1   5 use constant URN_PROTOCOL_RESPONSE => URN_PROTOCOL . ':Response';
  1         3  
  1         45  
100              
101 1     1   5 use constant BINDING_HTTP_POST => saml2 . 'bindings:HTTP-POST';
  1         1  
  1         40  
102 1     1   6 use constant BINDING_HTTP_ARTIFACT => saml2 . 'bindings:HTTP-Artifact';
  1         1  
  1         46  
103 1     1   4 use constant BINDING_HTTP_REDIRECT => saml2 . 'bindings:HTTP-Redirect';
  1         2  
  1         61  
104 1     1   6 use constant BINDING_SOAP => saml2 . 'bindings:SOAP';
  1         2  
  1         49  
105 1     1   5 use constant BINDING_POAS => saml2 . 'bindings:POAS';
  1         1  
  1         34  
106 1     1   4 use constant BINDING_REVERSE_SOAP => BINDING_POAS;
  1         1  
  1         54  
107              
108 1     1   5 use constant CLASS_UNSPECIFIED => saml2 . 'ac:classes:unspecified';
  1         1  
  1         46  
109 1     1   5 use constant CLASS_PASSWORD_PROTECTED => saml2 . 'ac:classes:PasswordProtectedTransport';
  1         1  
  1         46  
110 1     1   4 use constant CLASS_M2FA_UNREGISTERED => saml2 . 'ac:classes:MobileTwoFactorUnregistered';
  1         2  
  1         48  
111 1     1   5 use constant CLASS_M2FA_CONTRACT => saml2 . 'ac:classes:MobileTwoFactorContract';
  1         2  
  1         44  
112 1     1   5 use constant CLASS_SMARTCARD => saml2 . 'ac:classes:Smartcard';
  1         2  
  1         47  
113 1     1   6 use constant CLASS_SMARTCARD_PKI => saml2 . 'ac:classes:SmartcardPKI';
  1         1  
  1         63  
114              
115 1     1   6 use constant NAMEID_FORMAT => saml1_1 . 'nameid-format';
  1         1  
  1         39  
116 1     1   4 use constant NAMEID_FORMAT_ENTITY => saml1_1 . 'nameid-format-entity';
  1         15  
  1         41  
117 1     1   5 use constant NAMEID_EMAIL => saml1_1 . 'nameid-format:emailAddress';
  1         1  
  1         44  
118 1     1   5 use constant NAMEID_TRANSIENT => saml1_1 . 'nameid-format:transient';
  1         1  
  1         45  
119 1     1   5 use constant NAMEID_PERSISTENT => saml1_1 . 'nameid-format:persistent';
  1         2  
  1         38  
120              
121 1     1   5 use constant STATUS_AUTH_FAILED => saml2 . 'status:AuthnFailed';
  1         1  
  1         42  
122 1     1   5 use constant STATUS_REQUESTER => saml2 . 'status:Requester';
  1         2  
  1         37  
123 1     1   4 use constant STATUS_REQUEST_DENIED => saml2 . 'status:RequestDenied';
  1         1  
  1         53  
124 1     1   5 use constant STATUS_RESPONDER => saml2 . 'status:Responder';
  1         2  
  1         44  
125 1     1   5 use constant STATUS_SUCCESS => saml2 . 'status:Success';
  1         2  
  1         58  
126              
127             1;
128              
129             __END__