2 * Copyright 2001-2007 Internet2
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 * @file saml/util/SAMLConstants.h
20 * SAML XML namespace constants
23 #ifndef __saml_xmlconstants_h__
24 #define __saml_xmlconstants_h__
26 #include <xmltooling/util/XMLConstants.h>
29 * SAML related constants.
31 namespace samlconstants {
33 /** Liberty PAOS XML Namespace ("urn:liberty:paos:2003-08") */
34 extern SAML_API const XMLCh PAOS_NS[];
36 /** Liberty PAOS QName prefix ("paos") */
37 extern SAML_API const XMLCh PAOS_PREFIX[];
39 /** SAML 1.X Assertion XML namespace ("urn:oasis:names:tc:SAML:1.0:assertion") */
40 extern SAML_API const XMLCh SAML1_NS[];
42 /** SAML 1.X Protocol XML namespace ("urn:oasis:names:tc:SAML:1.0:protocol") */
43 extern SAML_API const XMLCh SAML1P_NS[];
45 /** SAML 1.X Assertion QName prefix ("saml") */
46 extern SAML_API const XMLCh SAML1_PREFIX[];
48 /** SAML 1.X Protocol QName prefix ("samlp") */
49 extern SAML_API const XMLCh SAML1P_PREFIX[];
51 /** SAML 2.0 Version ("2.0") */
52 extern SAML_API const XMLCh SAML20_VERSION[];
54 /** SAML 2.0 Assertion XML namespace ("urn:oasis:names:tc:SAML:2.0:assertion") */
55 extern SAML_API const XMLCh SAML20_NS[];
57 /** SAML 2.0 Protocol XML namespace ("urn:oasis:names:tc:SAML:2.0:protocol") */
58 extern SAML_API const XMLCh SAML20P_NS[];
60 /** SAML 2.0 Metadata XML namespace ("urn:oasis:names:tc:SAML:2.0:metadata") */
61 extern SAML_API const XMLCh SAML20MD_NS[];
63 /** SAML 2.0 AuthnContext XML namespace ("urn:oasis:names:tc:SAML:2.0:ac") */
64 extern SAML_API const XMLCh SAML20AC_NS[];
66 /** SAML 2.0 Assertion QName prefix ("saml") */
67 extern SAML_API const XMLCh SAML20_PREFIX[];
69 /** SAML 2.0 Protocol QName prefix ("samlp") */
70 extern SAML_API const XMLCh SAML20P_PREFIX[];
72 /** SAML 2.0 Metadata QName prefix ("md") */
73 extern SAML_API const XMLCh SAML20MD_PREFIX[];
75 /** SAML 2.0 AuthnContext QName prefix ("ac") */
76 extern SAML_API const XMLCh SAML20AC_PREFIX[];
78 /** SAML 2.0 Enhanced Client/Proxy SSO Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:SSO:ecp") */
79 extern SAML_API const XMLCh SAML20ECP_NS[];
81 /** SAML 2.0 Enhanced Client/Proxy SSO Profile QName prefix ("ecp") */
82 extern SAML_API const XMLCh SAML20ECP_PREFIX[];
84 /** SAML 2.0 DCE PAC Attribute Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:attribute:DCE") */
85 extern SAML_API const XMLCh SAML20DCE_NS[];
87 /** SAML 2.0 DCE PAC Attribute Profile QName prefix ("DCE") */
88 extern SAML_API const XMLCh SAML20DCE_PREFIX[];
90 /** SAML 2.0 X.500 Attribute Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:attribute:X500") */
91 extern SAML_API const XMLCh SAML20X500_NS[];
93 /** SAML 2.0 X.500 Attribute Profile QName prefix ("x500") */
94 extern SAML_API const XMLCh SAML20X500_PREFIX[];
96 /** SAML 2.0 XACML Attribute Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:attribute:XACML") */
97 extern SAML_API const XMLCh SAML20XACML_NS[];
99 /** SAML 2.0 XACML Attribute Profile QName prefix ("xacmlprof") */
100 extern SAML_API const XMLCh SAML20XACML_PREFIX[];
102 /** SAML 1.x Metadata Profile XML Namespace ("urn:oasis:names:tc:SAML:profiles:v1metadata") */
103 extern SAML_API const XMLCh SAML1MD_NS[];
105 /** SAML 1.x Metadata Profile QName prefix ("saml1md") */
106 extern SAML_API const XMLCh SAML1MD_PREFIX[];
108 /** SAML 1.0 Protocol Enumeration constant ("urn:oasis:names:tc:SAML:1.0:protocol") */
109 extern SAML_API const XMLCh SAML10_PROTOCOL_ENUM[];
111 /** SAML 1.1 Protocol Enumeration constant ("urn:oasis:names:tc:SAML:1.1:protocol") */
112 extern SAML_API const XMLCh SAML11_PROTOCOL_ENUM[];
114 /** SAML Query Requester Metadata Extension XML Namespace ("urn:oasis:names:tc:SAML:metadata:ext:query") */
115 extern SAML_API const XMLCh SAML20MD_QUERY_EXT_NS[];
117 /** SAML Query Requester Metadata Extension QName prefix ("query") */
118 extern SAML_API const XMLCh SAML20MD_QUERY_EXT_PREFIX[];
120 /** SAML Third-Party Request Protocol Extension XML Namespace ("urn:oasis:names:tc:SAML:protocol:ext:third-party") */
121 extern SAML_API const XMLCh SAML20P_THIRDPARTY_EXT_NS[];
123 /** SAML Third-Party Request Protocol Extension QName prefix ("query") */
124 extern SAML_API const XMLCh SAML20P_THIRDPARTY_EXT_PREFIX[];
126 /** SAML 1.x SOAP binding ("urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding") */
127 extern SAML_API const char SAML1_BINDING_SOAP[];
129 /** SAML 1.x Browser Artifact profile ("urn:oasis:names:tc:SAML:1.0:profiles:artifact-01") */
130 extern SAML_API const char SAML1_PROFILE_BROWSER_ARTIFACT[];
132 /** SAML 1.x Browser POST profile ("urn:oasis:names:tc:SAML:1.0:profiles:browser-post") */
133 extern SAML_API const char SAML1_PROFILE_BROWSER_POST[];
135 /** SAML 2.0 SOAP binding ("urn:oasis:names:tc:SAML:2.0:bindings:SOAP") */
136 extern SAML_API const char SAML20_BINDING_SOAP[];
138 /** SAML 2.0 HTTP-Artifact binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact") */
139 extern SAML_API const char SAML20_BINDING_HTTP_ARTIFACT[];
141 /** SAML 2.0 HTTP-POST binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST") */
142 extern SAML_API const char SAML20_BINDING_HTTP_POST[];
144 /** SAML 2.0 HTTP-POST-SimpleSign binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign") */
145 extern SAML_API const char SAML20_BINDING_HTTP_POST_SIMPLESIGN[];
147 /** SAML 2.0 HTTP-Redirect binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect") */
148 extern SAML_API const char SAML20_BINDING_HTTP_REDIRECT[];
150 /** SAML 2.0 HTTP-Redirect DEFLATE URL encoding ("urn:oasis:names:tc:SAML:2.0:bindings:URL-Encoding:DEFLATE") */
151 extern SAML_API const char SAML20_BINDING_URL_ENCODING_DEFLATE[];
154 #endif /* __saml_xmlconstants_h__ */