View Javadoc
1   /**
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements. See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership. The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License. You may obtain a copy of the License at
9    *
10   * http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied. See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  
20  package org.apache.wss4j.common.saml.builder;
21  
22  
23  /**
24   * Class SAML1Constants provides static constant definitions associated with
25   * the SAML v1.x specification.
26   */
27  public final class SAML1Constants {
28  
29      //
30      // NAME ID FORMAT
31      //
32  
33      public static final String NAMEID_FORMAT_UNSPECIFIED =
34          "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified";
35  
36      public static final String NAMEID_FORMAT_EMAIL_ADDRESS =
37          "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress";
38  
39      public static final String NAMEID_FORMAT_X509_SUBJECT_NAME =
40          "urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName";
41  
42      public static final String NAMEID_FORMAT_WINDOWS_DQN =
43          "urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName";
44  
45      //
46      // SUBJECT CONFIRMATION
47      //
48  
49      /**
50       * Assertion Bearer Confirmation Method Identifier
51       */
52      public static final String CONF_BEARER =
53          "urn:oasis:names:tc:SAML:1.0:cm:bearer";
54  
55      /**
56       * Holder of Key Confirmation Method Identifier
57       */
58      public static final String CONF_HOLDER_KEY =
59          "urn:oasis:names:tc:SAML:1.0:cm:holder-of-key";
60  
61      /**
62       * Sender Vouches Confirmation Method Identifier
63       */
64      public static final String CONF_SENDER_VOUCHES =
65          "urn:oasis:names:tc:SAML:1.0:cm:sender-vouches";
66  
67      //
68      // AUTH METHOD
69      //
70  
71      /**
72       * The authentication was performed by means of a password.
73       */
74      public static final String AUTH_METHOD_PASSWORD =
75          "urn:oasis:names:tc:SAML:1.0:am:password";
76  
77      /**
78       * The authentication was performed by means of the Kerberos protocol [RFC 1510],
79       * an instantiation of the Needham-Schroeder symmetric key authentication mechanism [Needham78].
80       */
81      public static final String AUTH_METHOD_KERBEROS = "urn:ietf:rfc:1510";
82  
83      /**
84       * The authentication was performed by means of Secure Remote Password protocol as specified in
85       * [RFC 2945].
86       */
87      public static final String AUTH_METHOD_SRP = "urn:ietf:rfc:2945";
88  
89      /**
90       * The authentication was performed by means of an unspecified hardware token.
91       */
92      public static final String AUTH_METHOD_HARDWARE_TOKEN =
93          "urn:oasis:names:tc:SAML:1.0:am:HardwareToken";
94  
95      /**
96       * The authentication was performed using either the SSL or TLS protocol with certificate
97       * based client authentication. TLS is described in [RFC 2246].
98       */
99      public static final String AUTH_METHOD_TLS_CLIENT = "urn:ietf:rfc:2246";
100 
101     /**
102      * The authentication was performed by some (unspecified) mechanism on a key authenticated by
103      * means of an X.509 PKI [X.500][PKIX]. It may have been one of the mechanisms for which a more
104      * specific identifier has been defined.
105      */
106     public static final String AUTH_METHOD_X509 =
107         "urn:oasis:names:tc:SAML:1.0:am:X509-PKI";
108 
109     /**
110      * The authentication was performed by some (unspecified) mechanism on a key authenticated by
111      * means of a PGP web of trust [PGP]. It may have been one of the mechanisms for which a more
112      * specific identifier has been defined.
113      */
114     public static final String AUTH_METHOD_PGP =
115         "urn:oasis:names:tc:SAML:1.0:am:PGP";
116 
117     /**
118      * The authentication was performed by some (unspecified) mechanism on a key authenticated by
119      * means of a SPKI PKI [SPKI]. It may have been one of the mechanisms for which a more specific
120      * identifier has been defined.
121      */
122     public static final String AUTH_METHOD_SPKI =
123         "urn:oasis:names:tc:SAML:1.0:am:SPKI";
124 
125     /**
126      * The authentication was performed by some (unspecified) mechanism on a key authenticated by
127      * means of a XKMS trust service [XKMS]. It may have been one of the mechanisms for which a more
128      * specific identifier has been defined.
129      */
130     public static final String AUTH_METHOD_XKMS =
131         "urn:oasis:names:tc:SAML:1.0:am:XKMS";
132 
133     /**
134      * The authentication was performed by means of an XML digital signature [RFC 3075].
135      */
136     public static final String AUTH_METHOD_DSIG = "urn:ietf:rfc:3075";
137 
138     /**
139      * The authentication was performed by an unspecified means.
140      */
141     public static final String AUTH_METHOD_UNSPECIFIED =
142         "urn:oasis:names:tc:SAML:1.0:am:unspecified";
143 
144     private SAML1Constants() {
145         // Complete
146     }
147 }