public final class AuthenticationScheme extends Object implements Serializable, StaticStructure
AuthenticationScheme
class defines constants for
authentication scheme identifiers for authentication mechanisms present in the
vAPI infrastructure shipped by VMware.
A third party extension can define and implements it's own authentication mechanism and define a constant in a different IDL file.
Modifier and Type | Field and Description |
---|---|
static String |
NO_AUTHENTICATION
Indicates that the request doesn't need any authentication.
|
static String |
SAML_BEARER_TOKEN
Indicates that the security context in a request is using a SAML bearer token
based authentication scheme.
|
static String |
SAML_HOK_TOKEN
Indicates that the security context in a request is using a SAML holder-of-key
token based authentication scheme.
|
static String |
SESSION_ID
Indicates that the security context in a request is using a session identifier
based authentication scheme.
|
static String |
USER_PASSWORD
Indicates that the security context in a request is using username/password
based authentication scheme.
|
Constructor and Description |
---|
AuthenticationScheme()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
<T extends Structure> |
_convertTo(Class<T> clazz)
Converts this structure into an instance of the provided class structure
if possible.
|
String |
_getCanonicalName()
Returns the canonical name of the structure.
|
static String |
_getCanonicalTypeName()
Returns the canonical type name.
|
static StructType |
_getClassType()
WARNING: Internal API, subject to change in future versions.
|
StructValue |
_getDataValue()
Returns this
Structure represented in the dynamic
DataValue model. |
DataValue |
_getDynamicField(String fieldName)
Get dynamic filed value.
|
Set<String> |
_getDynamicFieldNames()
Get the names of the dynamic fields in the structure.
|
StructType |
_getType()
WARNING: Internal API, subject to change in future versions.
|
boolean |
_hasTypeNameOf(Class<? extends Structure> clazz)
Checks that the runtime type name matches the type name from the binding
class.
|
static AuthenticationScheme |
_newInstance(StructValue structValue)
WARNING: Internal API, subject to change in future versions.
Returns new instance of this binding class and injects the provided data value. WARNING: The returned object is not fully initialized. |
void |
_setDynamicField(String fieldName,
DataValue fieldValue)
Sets a dynamic field value.
|
void |
_validate()
Validates the state of the discriminated unions and HasFieldsOf
restrictions (if any) in this Java language binding
Structure . |
boolean |
equals(Object obj) |
int |
hashCode() |
String |
toString()
Returns a string representation of this structure.
|
public static final String NO_AUTHENTICATION
public static final String SAML_BEARER_TOKEN
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
Sample security context in JSON format that matches the
specification: {
'schemeId':
'com.vmware.vapi.std.security.saml_bearer_token',
'token': 'the token itself'
}
vAPI runtime provide convenient factory methods that take SAML bearer token and
to create the security context that conforms to the above mentioned format.
public static final String SAML_HOK_TOKEN
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
created
and expires
timestamp of the request. The timestamp should
match the following format - YYYY-MM-DDThh:mm:ss.sssZ (e.g.
1878-03-03T19:20:30.451Z). Sample security context in JSON
format that matches the specification: {
'schemeId':
'com.vmware.vapi.std.security.saml_hok_token',
'signature': {
'alg':
'RS256',
'samlToken': ...,
'value': ...,}, 'timestamp': { 'created':
'2012-10-26T12:24:18.941Z', 'expires': '2012-10-26T12:44:18.941Z', } }
vAPI
runtime provide convenient factory methods that take SAML holder of key token
and private key to create the security context that conforms to the above
mentioned format.
public static final String SESSION_ID
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
{
'schemeId':
'com.vmware.vapi.std.security.session_id',
'sessionId': ....,
}
vAPI runtime
provides convenient factory methods that take session identifier as input
parameter and create a security context that conforms to the above format.public static final String USER_PASSWORD
In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:
Sample security context in JSON format that matches
the specification: {
'schemeId':
'com.vmware.vapi.std.security.user_password',
'userName': ....,
'password':
...
}
vAPI runtime provides convenient factory methods that take username
and password as input parameters and create a security context that conforms to
the above format.
public StructType _getType()
StaticStructure
StructType
instance representing the static bindings
type for this Structure
._getType
in interface StaticStructure
StructType
public StructValue _getDataValue()
Structure
Structure
represented in the dynamic
DataValue
model.
Attempts to change the returned StructValue
representation are not required to change the state of this structure.
Actually the behavior is implementation dependent and is unspecified.
In general the returned value shouldn't be changed.
_getDataValue
in interface Structure
StructValue
representing this structurepublic void _validate()
StaticStructure
Structure
.
More precisely, for each union: given value of the discriminant/tag
field (@UnionTag
in the IDL) of an union in this structure,
validates that:
_validate
in interface StaticStructure
public String toString()
StaticStructure
In general no code should depend on the format of the resulting string. E.g. there must be no attempts to parse for re-creation of the original instance.
toString
in interface StaticStructure
toString
in class Object
public boolean _hasTypeNameOf(Class<? extends Structure> clazz)
Structure
_hasTypeNameOf
in interface Structure
clazz
- type of the result structure. cannot be null.public <T extends Structure> T _convertTo(Class<T> clazz)
Structure
_convertTo
in interface Structure
clazz
- type of the result structure. cannot be null.CoreException
is thrown otherwise.public void _setDynamicField(String fieldName, DataValue fieldValue)
StaticStructure
_setDynamicField
in interface StaticStructure
fieldName
- canonical name of the dynamic field to setfieldValue
- the value of the fieldpublic DataValue _getDynamicField(String fieldName)
StaticStructure
_getDynamicField
in interface StaticStructure
fieldName
- the canonical name of the dynamic fieldDataValue
of the dynamic fieldpublic Set<String> _getDynamicFieldNames()
StaticStructure
_getDynamicFieldNames
in interface StaticStructure
public static StructType _getClassType()
StructType
instance representing the static bindings
type for this Structure
.public String _getCanonicalName()
Structure
org.example.FooBar
would turn into
org.example.foo_bar
._getCanonicalName
in interface Structure
public static String _getCanonicalTypeName()
_getCanonicalName()
.public static AuthenticationScheme _newInstance(StructValue structValue)
structValue
- the source of the data contained in the binding object. Could
contain more data than fields of this class can describe i.e.
newer version of the binding object. Could be null.StructType
Copyright © 2015. All Rights Reserved.