2 * Licensed to the University Corporation for Advanced Internet
3 * Development, Inc. (UCAID) under one or more contributor license
4 * agreements. See the NOTICE file distributed with this work for
5 * additional information regarding copyright ownership.
7 * UCAID licenses this file to you under the Apache License,
8 * Version 2.0 (the "License"); you may not use this file except
9 * in compliance with the License. You may obtain a copy of the
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing,
15 * software distributed under the License is distributed on an
16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
17 * either express or implied. See the License for the specific
18 * language governing permissions and limitations under the License.
22 * @file shibsp/lite/SAMLConstants.h
24 * SAML XML namespace constants.
27 #ifndef __shibsp_xmlconstants_h__
28 #define __shibsp_xmlconstants_h__
30 #include <shibsp/base.h>
31 #include <xercesc/util/XercesDefs.hpp>
34 * SAML related constants.
36 namespace samlconstants {
38 /** Liberty PAOS XML Namespace ("urn:liberty:paos:2003-08") */
39 extern SHIBSP_API const XMLCh PAOS_NS[];
41 /** Liberty PAOS QName prefix ("paos") */
42 extern SHIBSP_API const XMLCh PAOS_PREFIX[];
44 /** SAML 1.X Assertion XML namespace ("urn:oasis:names:tc:SAML:1.0:assertion") */
45 extern SHIBSP_API const XMLCh SAML1_NS[];
47 /** SAML 1.X Protocol XML namespace ("urn:oasis:names:tc:SAML:1.0:protocol") */
48 extern SHIBSP_API const XMLCh SAML1P_NS[];
50 /** SAML 1.X Assertion QName prefix ("saml") */
51 extern SHIBSP_API const XMLCh SAML1_PREFIX[];
53 /** SAML 1.X Protocol QName prefix ("samlp") */
54 extern SHIBSP_API const XMLCh SAML1P_PREFIX[];
56 /** SAML 2.0 Version ("2.0") */
57 extern SHIBSP_API const XMLCh SAML20_VERSION[];
59 /** SAML 2.0 Assertion XML namespace ("urn:oasis:names:tc:SAML:2.0:assertion") */
60 extern SHIBSP_API const XMLCh SAML20_NS[];
62 /** SAML 2.0 Protocol XML namespace ("urn:oasis:names:tc:SAML:2.0:protocol") */
63 extern SHIBSP_API const XMLCh SAML20P_NS[];
65 /** SAML 2.0 Metadata XML namespace ("urn:oasis:names:tc:SAML:2.0:metadata") */
66 extern SHIBSP_API const XMLCh SAML20MD_NS[];
68 /** SAML 2.0 AuthnContext XML namespace ("urn:oasis:names:tc:SAML:2.0:ac") */
69 extern SHIBSP_API const XMLCh SAML20AC_NS[];
71 /** SAML 2.0 Assertion QName prefix ("saml") */
72 extern SHIBSP_API const XMLCh SAML20_PREFIX[];
74 /** SAML 2.0 Protocol QName prefix ("samlp") */
75 extern SHIBSP_API const XMLCh SAML20P_PREFIX[];
77 /** SAML 2.0 Metadata QName prefix ("md") */
78 extern SHIBSP_API const XMLCh SAML20MD_PREFIX[];
80 /** SAML 2.0 AuthnContext QName prefix ("ac") */
81 extern SHIBSP_API const XMLCh SAML20AC_PREFIX[];
83 /** SAML 2.0 Enhanced Client/Proxy SSO Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:SSO:ecp") */
84 extern SHIBSP_API const XMLCh SAML20ECP_NS[];
86 /** SAML 2.0 Enhanced Client/Proxy SSO Profile QName prefix ("ecp") */
87 extern SHIBSP_API const XMLCh SAML20ECP_PREFIX[];
89 /** SAML 2.0 DCE PAC Attribute Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:attribute:DCE") */
90 extern SHIBSP_API const XMLCh SAML20DCE_NS[];
92 /** SAML 2.0 DCE PAC Attribute Profile QName prefix ("DCE") */
93 extern SHIBSP_API const XMLCh SAML20DCE_PREFIX[];
95 /** SAML 2.0 X.500 Attribute Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:attribute:X500") */
96 extern SHIBSP_API const XMLCh SAML20X500_NS[];
98 /** SAML 2.0 X.500 Attribute Profile QName prefix ("x500") */
99 extern SHIBSP_API const XMLCh SAML20X500_PREFIX[];
101 /** SAML 2.0 XACML Attribute Profile XML Namespace ("urn:oasis:names:tc:SAML:2.0:profiles:attribute:XACML") */
102 extern SHIBSP_API const XMLCh SAML20XACML_NS[];
104 /** SAML 2.0 XACML Attribute Profile QName prefix ("xacmlprof") */
105 extern SHIBSP_API const XMLCh SAML20XACML_PREFIX[];
107 /** SAML 1.x Metadata Profile XML Namespace ("urn:oasis:names:tc:SAML:profiles:v1metadata") */
108 extern SHIBSP_API const XMLCh SAML1MD_NS[];
110 /** SAML 1.x Metadata Profile QName prefix ("saml1md") */
111 extern SHIBSP_API const XMLCh SAML1MD_PREFIX[];
113 /** SAML 1.0 Protocol Enumeration constant ("urn:oasis:names:tc:SAML:1.0:protocol") */
114 extern SHIBSP_API const XMLCh SAML10_PROTOCOL_ENUM[];
116 /** SAML 1.1 Protocol Enumeration constant ("urn:oasis:names:tc:SAML:1.1:protocol") */
117 extern SHIBSP_API const XMLCh SAML11_PROTOCOL_ENUM[];
119 /** SAML Query Requester Metadata Extension XML Namespace ("urn:oasis:names:tc:SAML:metadata:ext:query") */
120 extern SHIBSP_API const XMLCh SAML20MD_QUERY_EXT_NS[];
122 /** SAML Query Requester Metadata Extension QName prefix ("query") */
123 extern SHIBSP_API const XMLCh SAML20MD_QUERY_EXT_PREFIX[];
125 /** SAML Third-Party Request Protocol Extension XML Namespace ("urn:oasis:names:tc:SAML:protocol:ext:third-party") */
126 extern SHIBSP_API const XMLCh SAML20P_THIRDPARTY_EXT_NS[];
128 /** SAML Third-Party Request Protocol Extension QName prefix ("thrpty") */
129 extern SHIBSP_API const XMLCh SAML20P_THIRDPARTY_EXT_PREFIX[];
131 /** SAML Attribute Extension XML Namespace ("urn:oasis:names:tc:SAML:attribute:ext") */
132 extern SHIBSP_API const XMLCh SAML20_ATTRIBUTE_EXT_NS[];
134 /** SAML Attribute Extension QName prefix ("ext") */
135 extern SHIBSP_API const XMLCh SAML20_ATTRIBUTE_EXT_PREFIX[];
137 /** SAML Metadata Extension for Algorithm Support XML Namespace ("urn:oasis:names:tc:SAML:metadata:algsupport") */
138 extern SHIBSP_API const XMLCh SAML20MD_ALGSUPPORT_NS[];
140 /** SAML Metadata Extension for Algorithm Support QName prefix ("alg") */
141 extern SHIBSP_API const XMLCh SAML20MD_ALGSUPPORT_PREFIX[];
143 /** SAML Metadata Extension for Entity Attributes XML Namespace ("urn:oasis:names:tc:SAML:metadata:attribute") */
144 extern SHIBSP_API const XMLCh SAML20MD_ENTITY_ATTRIBUTE_NS[];
146 /** SAML Metadata Extension for Entity Attributes QName prefix ("mdattr") */
147 extern SHIBSP_API const XMLCh SAML20MD_ENTITY_ATTRIBUTE_PREFIX[];
149 /** SAML Metadata Extension for Discovery and Login UI XML Namespace ("urn:oasis:names:tc:SAML:metadata:ui") */
150 extern SHIBSP_API const XMLCh SAML20MD_UI_NS[];
152 /** SAML Metadata Extension for Discovery and Login UI QName prefix ("mdui") */
153 extern SHIBSP_API const XMLCh SAML20MD_UI_PREFIX[];
155 /** SAML Condition for Delegation Restriction XML Namespace ("urn:oasis:names:tc:SAML:2.0:conditions:delegation") */
156 extern SHIBSP_API const XMLCh SAML20_DELEGATION_CONDITION_NS[];
158 /** SAML Condition for Delegation Restriction QName prefix ("del") */
159 extern SHIBSP_API const XMLCh SAML20_DELEGATION_CONDITION_PREFIX[];
161 /** SAML 1.x SOAP binding ("urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding") */
162 extern SHIBSP_API const char SAML1_BINDING_SOAP[];
164 /** SAML 1.x Browser Artifact profile ("urn:oasis:names:tc:SAML:1.0:profiles:artifact-01") */
165 extern SHIBSP_API const char SAML1_PROFILE_BROWSER_ARTIFACT[];
167 /** SAML 1.x Browser POST profile ("urn:oasis:names:tc:SAML:1.0:profiles:browser-post") */
168 extern SHIBSP_API const char SAML1_PROFILE_BROWSER_POST[];
170 /** SAML 2.0 SOAP binding ("urn:oasis:names:tc:SAML:2.0:bindings:SOAP") */
171 extern SHIBSP_API const char SAML20_BINDING_SOAP[];
173 /** SAML 2.0 PAOS binding ("urn:oasis:names:tc:SAML:2.0:bindings:PAOS") */
174 extern SHIBSP_API const char SAML20_BINDING_PAOS[];
176 /** SAML 2.0 URI binding ("urn:oasis:names:tc:SAML:2.0:bindings:URI") */
177 extern SHIBSP_API const char SAML20_BINDING_URI[];
179 /** SAML 2.0 HTTP-Artifact binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact") */
180 extern SHIBSP_API const char SAML20_BINDING_HTTP_ARTIFACT[];
182 /** SAML 2.0 HTTP-POST binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST") */
183 extern SHIBSP_API const char SAML20_BINDING_HTTP_POST[];
185 /** SAML 2.0 HTTP-POST-SimpleSign binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign") */
186 extern SHIBSP_API const char SAML20_BINDING_HTTP_POST_SIMPLESIGN[];
188 /** SAML 2.0 HTTP-Redirect binding ("urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect") */
189 extern SHIBSP_API const char SAML20_BINDING_HTTP_REDIRECT[];
191 /** SAML 2.0 HTTP-Redirect DEFLATE URL encoding ("urn:oasis:names:tc:SAML:2.0:bindings:URL-Encoding:DEFLATE") */
192 extern SHIBSP_API const char SAML20_BINDING_URL_ENCODING_DEFLATE[];
195 #endif /* __shibsp_xmlconstants_h__ */