1 /* $Id$
2  *
3  * Lasso - A free implementation of the Liberty Alliance specifications.
4  *
5  * Copyright (C) 2004-2007 Entr'ouvert
6  * http://lasso.entrouvert.org
7  *
8  * Authors: See AUTHORS file in top-level directory.
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, see <http://www.gnu.org/licenses/>.
22  *
23  */
24 
25 /*
26  * This header file copy part of the SOAP 1.1 specification you can found there:
27  * http://www.w3.org/TR/soap12-part1/
28  * whom copyright is:
29  * Copyright © 2007 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and
30  * document use rules apply.
31  */
32 
33 
34 /**
35  * SECTION:idwsf-strings
36  * @short_description: Useful string constants
37  *
38  **/
39 
40 #ifndef __LASSO_IDWSF_STRINGS_H__
41 #define __LASSO_IDWSF_STRINGS_H__
42 
43 /*****************************************************************************/
44 /* Liberty Alliance ID-WSF                                                   */
45 /*****************************************************************************/
46 
47 /* Liberty Security Mechanisms - 1st version */
48 #define LASSO_SECURITY_MECH_NULL   "urn:liberty:security:2003-08:null:null"
49 
50 #define LASSO_SECURITY_MECH_X509   "urn:liberty:security:2005-02:null:X509"
51 #define LASSO_SECURITY_MECH_SAML   "urn:liberty:security:2005-02:null:SAML"
52 #define LASSO_SECURITY_MECH_BEARER "urn:liberty:security:2005-02:null:Bearer"
53 
54 #define LASSO_SECURITY_MECH_TLS        "urn:liberty:security:2003-08:TLS:null"
55 #define LASSO_SECURITY_MECH_TLS_X509   "urn:liberty:security:2005-02:TLS:X509"
56 #define LASSO_SECURITY_MECH_TLS_SAML   "urn:liberty:security:2005-02:TLS:SAML"
57 #define LASSO_SECURITY_MECH_TLS_BEARER "urn:liberty:security:2005-02:TLS:Bearer"
58 
59 #define LASSO_SECURITY_MECH_CLIENT_TLS        "urn:liberty:security:2003-08:ClientTLS:null"
60 #define LASSO_SECURITY_MECH_CLIENT_TLS_X509   "urn:liberty:security:2005-02:ClientTLS:X509"
61 #define LASSO_SECURITY_MECH_CLIENT_TLS_SAML   "urn:liberty:security:2005-02:ClientTLS:SAML"
62 #define LASSO_SECURITY_MECH_CLIENT_TLS_BEARER "urn:liberty:security:2005-02:ClientTLS:Bearer"
63 
64 
65 /* Liberty Security Mechanisms - latest version */
66 
67 #define LASSO_SECURITY11_MECH_X509   "urn:liberty:security:2005-02:null:X509"
68 #define LASSO_SECURITY11_MECH_SAML   "urn:liberty:security:2005-02:null:SAML"
69 #define LASSO_SECURITY11_MECH_BEARER "urn:liberty:security:2005-02:null:Bearer"
70 
71 #define LASSO_SECURITY11_MECH_TLS_X509   "urn:liberty:security:2005-02:TLS:X509"
72 #define LASSO_SECURITY11_MECH_TLS_SAML   "urn:liberty:security:2005-02:TLS:SAML"
73 #define LASSO_SECURITY11_MECH_TLS_BEARER "urn:liberty:security:2005-02:TLS:Bearer"
74 
75 /* liberty wsf prefix & href */
76 /**
77  * LASSO_DISCO_HREF:
78  *
79  * Namespace for FIXME
80  *
81  */
82 #define LASSO_DISCO_HREF          "urn:liberty:disco:2003-08"
83 /**
84  * LASSO_DISCO_PREFIX:
85  *
86  * Preferred prefix for namespace of FIXME
87  *
88  */
89 #define LASSO_DISCO_PREFIX        "disco"
90 
91 /**
92  * LASSO_EP_HREF:
93  *
94  * Namespace for FIXME
95  *
96  */
97 #define LASSO_EP_HREF   "urn:liberty:id-sis-ep:2003-08"
98 /**
99  * LASSO_EP_PREFIX:
100  *
101  * Preferred prefix for namespace of FIXME
102  *
103  */
104 #define LASSO_EP_PREFIX "ep"
105 
106 /**
107  * LASSO_PP10_HREF:
108  *
109  * Namespace for ID-SIS Personal Profile
110  *
111  */
112 #define LASSO_PP10_HREF   "urn:liberty:id-sis-pp:2003-08"
113 /**
114  * LASSO_PP10_PREFIX:
115  *
116  * Preferred prefix for namespace of ID-SIS Personal Profile
117  *
118  */
119 #define LASSO_PP10_PREFIX "pp10"
120 
121 /**
122  * LASSO_PP11_HREF:
123  *
124  * Namespace for ID-SIS Personal Profile
125  *
126  */
127 #define LASSO_PP11_HREF   "urn:liberty:id-sis-pp:2005-05"
128 /**
129  * LASSO_PP11_PREFIX:
130  *
131  * Preferred prefix for namespace of ID-SIS Personal Profile
132  *
133  */
134 #define LASSO_PP11_PREFIX "pp11"
135 
136 /**
137  * LASSO_IS_HREF:
138  *
139  * Namespace for FIXME
140  *
141  */
142 #define LASSO_IS_HREF "urn:liberty:is:2003-08"
143 /**
144  * LASSO_IS_PREFIX:
145  *
146  * Preferred prefix for namespace of FIXME
147  *
148  */
149 #define LASSO_IS_PREFIX "is"
150 
151 /**
152  * LASSO_SA_HREF:
153  *
154  * Namespace for FIXME
155  *
156  */
157 #define LASSO_SA_HREF "urn:liberty:sa:2004-04"
158 /**
159  * LASSO_SA_PREFIX:
160  *
161  * Preferred prefix for namespace of FIXME
162  *
163  */
164 #define LASSO_SA_PREFIX "sa"
165 
166 /**
167  * LASSO_SEC_HREF:
168  *
169  * Namespace for FIXME
170  *
171  */
172 #define LASSO_SEC_HREF "urn:liberty:sec:2003-08"
173 /**
174  * LASSO_SEC_PREFIX:
175  *
176  * Preferred prefix for namespace of FIXME
177  *
178  */
179 #define LASSO_SEC_PREFIX "sec"
180 
181 #define LASSO_SA_SASL_SERVICE_NAME "idwsf"
182 
183 /* Interaction Service (interact attribute of is:UserInteraction element ) */
184 #define LASSO_IS_INTERACT_ATTR_INTERACT_IF_NEEDED "is:interactIfNeeded"
185 #define LASSO_IS_INTERACT_ATTR_DO_NOT_INTERACT "is:doNotInteract"
186 #define LASSO_IS_INTERACT_ATTR_DO_NOT_INTERACT_FOR_DATA "is:doNotInteractForData"
187 
188 /* status code */
189 #define LASSO_DISCO_STATUS_CODE_OK "OK"
190 #define LASSO_DISCO_STATUS_CODE_DISCO_OK "disco:OK"
191 #define LASSO_DISCO_STATUS_CODE_FAILED "Failed"
192 #define LASSO_DISCO_STATUS_CODE_REMOVE_ENTRY "RemoveEntry"
193 #define LASSO_DISCO_STATUS_CODE_FORBIDDEN "Forbidden"
194 #define LASSO_DISCO_STATUS_CODE_NO_RESULTS "NoResults"
195 #define LASSO_DISCO_STATUS_CODE_DIRECTIVES "Directive"
196 
197 #define LASSO_DST_STATUS_CODE_OK "OK"
198 #define LASSO_DST_STATUS_CODE_FAILED "Failed"
199 #define LASSO_DST_STATUS_CODE_PARTIAL "Partial"
200 #define LASSO_DST_STATUS_CODE_ACTION_NOT_AUTHORIZED "ActionNotAuthorized"
201 #define LASSO_DST_STATUS_CODE_ACTION_NOT_SUPPORTED "ActionNotSupported"
202 #define LASSO_DST_STATUS_CODE_ALL_RETURNED "AllReturned"
203 #define LASSO_DST_STATUS_CODE_CHANGE_HISTORY_NOT_SUPPORTED "ChangeHistoryNotSupported"
204 #define LASSO_DST_STATUS_CODE_CHANGED_SINCE_RETURNS_ALL "ChangedSinceReturnsAll"
205 #define LASSO_DST_STATUS_CODE_DATA_TOO_LONG "DataTooLong"
206 #define LASSO_DST_STATUS_CODE_EXISTS_ALREADY "ExistsAlready"
207 #define LASSO_DST_STATUS_CODE_EXTENSION_NOT_SUPPORTED "ExtensionNotSupported"
208 #define LASSO_DST_STATUS_CODE_INVALID_DATA "InvalidData"
209 #define LASSO_DST_STATUS_CODE_INVALID_RESOURCE_ID "InvalidResourceID"
210 #define LASSO_DST_STATUS_CODE_INVALID_SELECT "InvalidSelect"
211 #define LASSO_DST_STATUS_CODE_MISSING_NEW_DATA_ELEMENT "MissingNewDataElement"
212 #define LASSO_DST_STATUS_CODE_MISSING_RESOURCE_ID_ELEMENT "MissingResourceIDElement"
213 #define LASSO_DST_STATUS_CODE_MISSING_SELECT "MissingSelect"
214 #define LASSO_DST_STATUS_CODE_MODIFIED_SINCE "ModifiedSince"
215 #define LASSO_DST_STATUS_CODE_NO_MORE_ELEMENTS "NoMoreElements"
216 #define LASSO_DST_STATUS_CODE_NO_MULTIPLE_ALLOWED "NoMultipleAllowed"
217 #define LASSO_DST_STATUS_CODE_NO_MULTIPLE_RESOURCES "NoMultipleResources"
218 #define LASSO_DST_STATUS_CODE_TIME_OUT "TimeOut"
219 #define LASSO_DST_STATUS_CODE_UNEXPECTED_ERROR "UnexpectedError"
220 
221 #define LASSO_SA_STATUS_CODE_OK "OK"
222 #define LASSO_SA_STATUS_CODE_CONTINUE "continue"
223 #define LASSO_SA_STATUS_CODE_ABORT "abort"
224 
225 /*****************************************************************************/
226 /* SOAP BINDING                                                              */
227 /*****************************************************************************/
228 
229 /**
230  * LASSO_SOAP_BINDING_HREF:
231  *
232  * Namespace for FIXME
233  *
234  */
235 #define LASSO_SOAP_BINDING_HREF          "urn:liberty:sb:2003-08"
236 /**
237  * LASSO_SOAP_BINDING_PREFIX:
238  *
239  * Preferred prefix for namespace of FIXME
240  *
241  */
242 #define LASSO_SOAP_BINDING_PREFIX        "sb"
243 
244 /**
245  * LASSO_SOAP_BINDING_EXT_HREF:
246  *
247  * Namespace for FIXME
248  *
249  */
250 #define LASSO_SOAP_BINDING_EXT_HREF "urn:liberty:sb:2004-04"
251 /**
252  * LASSO_SOAP_BINDING_EXT_PREFIX:
253  *
254  * Preferred prefix for namespace of FIXME
255  *
256  */
257 #define LASSO_SOAP_BINDING_EXT_PREFIX "sbe"
258 
259 #define LASSO_SOAP_BINDING_PROCESS_CONTEXT_PRINCIPAL_OFFLINE \
260 	"urn:liberty:sb:2003-08:ProcessingContext:PrincipalOffline"
261 #define LASSO_SOAP_BINDING_PROCESS_CONTEXT_PRINCIPAL_ONLINE \
262 	"urn:liberty:sb:2003-08:ProcessingContext:PrincipalOnline"
263 #define LASSO_SOAP_BINDING_PROCESS_CONTEXT_SIMULATE \
264 	"urn:liberty:sb:2003-08:ProcessingContext:Simulate"
265 
266 #define LASSO_SOAP_FAULT_STRING_SERVER "Server Error"
267 #define LASSO_SOAP_FAULT_STRING_IDENTITY_NOT_FOUND "Identity not found"
268 
269 
270 /*****************************************************************************/
271 /* WS-*                                                                      */
272 /*****************************************************************************/
273 
274 /**
275  * LASSO_WSSE_HREF:
276  *
277  * Namespace for FIXME
278  *
279  */
280 #define LASSO_WSSE_HREF "http://schemas.xmlsoap.org/ws/2002/07/secext"
281 /**
282  * LASSO_WSSE_PREFIX:
283  *
284  * Preferred prefix for namespace of FIXME
285  *
286  */
287 #define LASSO_WSSE_PREFIX "wsse"
288 
289 /**
290  * LASSO_WSSE1_HREF:
291  *
292  * Namespace for WS-Security 1.0
293  *
294  */
295 #define LASSO_WSSE1_HREF \
296 	"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
297 /**
298  * LASSO_WSSE1_PREFIX:
299  *
300  * Preferred prefix for namespace of WS-Security 1.0
301  *
302  */
303 #define LASSO_WSSE1_PREFIX "wsse"
304 
305 /**
306  * LASSO_WSSE11_HREF:
307  *
308  * Namespace for WS-Security 1.1
309  */
310 #define LASSO_WSSE11_HREF \
311 	"http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd"
312 
313 /* LASSO_WSSE11_PREFIX:
314  *
315  * Preferred prefix for namespace of WS-Security 1.1
316  *
317  */
318 #define LASSO_WSSE11_PREFIX "wsse"
319 
320 /**
321  * LASSO_WSSE_SECEXT_FAULT_CODE_UNSUPPORTED_SECURITY_TOKEN:
322  *
323  * Fault code for WS-Security tokens handling
324  */
325 #define LASSO_WSSE_SECEXT_FAULT_CODE_UNSUPPORTED_SECURITY_TOKEN \
326 	"wsse:UnsupportedSecurityToken"
327 
328 /**
329  * LASSO_WSSE_SECEXT_FAULT_CODE_UNSUPPORTED_ALGORITHM:
330  *
331  * Fault code for WS-Security tokens handling
332  */
333 #define LASSO_WSSE_SECEXT_FAULT_CODE_UNSUPPORTED_ALGORITHM \
334 	"wsse:UnsupportedAlgorithm"
335 
336 /**
337  * LASSO_WSSE_SECEXT_FAULT_CODE_INVALID_SECURITY:
338  *
339  * Fault code for WS-Security tokens handling
340  */
341 #define LASSO_WSSE_SECEXT_FAULT_CODE_INVALID_SECURITY \
342 	"wsse:InvalidSecurity"
343 
344 /**
345  * LASSO_WSSE_SECEXT_FAULT_CODE_INVALID_SECURITY_TOKEN:
346  *
347  * Fault code for WS-Security tokens handling
348  */
349 #define LASSO_WSSE_SECEXT_FAULT_CODE_INVALID_SECURITY_TOKEN \
350 	"wsse:InvalidSecurityToken"
351 
352 /**
353  * LASSO_WSSE_SECEXT_FAULT_CODE_FAILED_AUTHENTICATION:
354  *
355  * Fault code for WS-Security tokens handling
356  */
357 #define LASSO_WSSE_SECEXT_FAULT_CODE_FAILED_AUTHENTICATION \
358 	"wsse:FailedAuthentication"
359 
360 /**
361  * LASSO_WSSE_SECEXT_FAULT_CODE_FAILED_CHECK:
362  *
363  * Fault code for WS-Security tokens handling
364  */
365 #define LASSO_WSSE_SECEXT_FAULT_CODE_FAILED_CHECK \
366 	"wsse:FailedCheck"
367 
368 /**
369  * LASSO_WSSE_SECEXT_FAULT_CODE_SECURITY_TOKEN_UNAVAILABLE:
370  *
371  * Fault code for WS-Security tokens handling
372  */
373 #define LASSO_WSSE_SECEXT_FAULT_CODE_SECURITY_TOKEN_UNAVAILABLE \
374 	"wsse:SecurityTokenUnavailable"
375 
376 /*
377  * Username token profile
378  */
379 
380 /**
381  * LASSO_WSSE_USERNAME_TOKEN_PROFILE_HREF:
382  */
383 #define LASSO_WSSE_USERNAME_TOKEN_PROFILE_HREF \
384 	"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0"
385 
386 /**
387  * LASSO_WSSE_USERNAME_TOKEN_PROFILE_PASSWORD_DIGEST:
388  *
389  * Identifier for a UsernameToken of type PasswordDigest
390  */
391 #define LASSO_WSSE_USERNAME_TOKEN_PROFILE_PASSWORD_DIGEST \
392 	LASSO_WSSE_USERNAME_TOKEN_PROFILE_HREF "#PasswordDigest"
393 
394 /**
395  * LASSO_WSSE_USERNAME_TOKEN_PROFILE_PASSWORD_TEXT:
396  *
397  * Identifier for a UsernameToken of type PasswordText
398  */
399 #define LASSO_WSSE_USERNAME_TOKEN_PROFILE_PASSWORD_TEXT \
400 	LASSO_WSSE_USERNAME_TOKEN_PROFILE_HREF "#PasswordText"
401 
402 /* WS-Addressing */
403 /**
404  * LASSO_WSA_HREF:
405  *
406  * Namespace for FIXME
407  *
408  */
409 #define LASSO_WSA_HREF "http://www.w3.org/2005/08/addressing"
410 /**
411  * LASSO_WSA_PREFIX:
412  *
413  * Preferred prefix for namespace of FIXME
414  *
415  */
416 #define LASSO_WSA_PREFIX "wsa"
417 
418 /**
419  * LASSO_WSA_ELEMENT_MESSAGE_ID:
420  *
421  * Name of the element representing SOAP MessageID in the WS-Addressing specification.
422  */
423 #define LASSO_WSA_ELEMENT_MESSAGE_ID "MessageID"
424 /**
425  * LASSO_WSA_ELEMENT_RELATES_TO:
426  *
427  * Name of the element representing SOAP messages inter-relationships in the WS-Addressing
428  * specification.
429  */
430 #define LASSO_WSA_ELEMENT_RELATES_TO "RelatesTo"
431 
432 /* WS-Utility */
433 /**
434  * LASSO_WSU_HREF:
435  *
436  * Namespace for FIXME
437  *
438  */
439 #define LASSO_WSU_HREF \
440 	"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
441 /**
442  * LASSO_WSU_PREFIX:
443  *
444  * Preferred prefix for namespace of FIXME
445  *
446  */
447 #define LASSO_WSU_PREFIX "wsu"
448 
449 #endif /* __LASSO_IDWSF_STRINGS_H__ */
450 
451