public final class AuthenticationScheme extends java.lang.Object implements java.io.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 | Class and Description |
---|---|
static class |
AuthenticationScheme.Builder
Builder class for
AuthenticationScheme . |
Modifier and Type | Field and Description |
---|---|
protected StructValue |
__dynamicStructureFields |
static java.lang.String |
NO_AUTHENTICATION
Indicates that the request doesn't need any authentication.
|
static java.lang.String |
OAUTH_ACCESS_TOKEN
Indicates that the security context in a request is using OAuth2 based
authentication scheme.
|
static java.lang.String |
SAML_BEARER_TOKEN
Indicates that the security context in a request is using a SAML bearer token
based authentication scheme.
|
static java.lang.String |
SAML_HOK_TOKEN
Indicates that the security context in a request is using a SAML holder-of-key
token based authentication scheme.
|
static java.lang.String |
SESSION_ID
Indicates that the security context in a request is using a session identifier
based authentication scheme.
|
static java.lang.String |
USER_PASSWORD
Indicates that the security context in a request is using username/password
based authentication scheme.
|
Modifier | Constructor and Description |
---|---|
|
AuthenticationScheme()
Default constructor.
|
protected |
AuthenticationScheme(StructValue __dynamicStructureFields) |
Modifier and Type | Method and Description |
---|---|
<T extends Structure> |
_convertTo(java.lang.Class<T> clazz)
Converts this structure into an instance of the provided class structure
if possible.
|
java.lang.String |
_getCanonicalName()
Returns the canonical name of the structure.
|
static java.lang.String |
_getCanonicalTypeName()
Returns the canonical type name.
|
static com.vmware.vapi.bindings.type.StructType |
_getClassType()
WARNING: Internal method, subject to change in future versions.
|
StructValue |
_getDataValue()
Returns this
Structure represented in the dynamic
DataValue model. |
DataValue |
_getDynamicField(java.lang.String fieldName)
Get dynamic filed value.
|
java.util.Set<java.lang.String> |
_getDynamicFieldNames()
Get the names of the dynamic fields in the structure.
|
com.vmware.vapi.bindings.type.StructType |
_getType()
WARNING: Internal method, subject to change in future versions.
|
boolean |
_hasTypeNameOf(java.lang.Class<? extends Structure> clazz)
Checks if the runtime type name of this structure matches the type
represented by the specified binding class.
|
static AuthenticationScheme |
_newInstance(StructValue structValue)
WARNING: Internal method, 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. |
static AuthenticationScheme |
_newInstance2(StructValue structValue)
WARNING: Internal method, subject to change in future versions.
Serves as a versioning mechanism. |
void |
_setDynamicField(java.lang.String fieldName,
DataValue fieldValue)
Sets a dynamic field value.
|
protected void |
_updateDataValue(StructValue structValue) |
void |
_validate()
Validates the state of the discriminated unions and HasFieldsOf
restrictions (if any) in this Java language binding
Structure . |
boolean |
equals(java.lang.Object obj) |
int |
hashCode() |
java.lang.String |
toString()
Returns a string representation of this structure.
|
public static final java.lang.String NO_AUTHENTICATION
public static final java.lang.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 java.lang.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 java.lang.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 java.lang.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_pass',
'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 static final java.lang.String OAUTH_ACCESS_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.oauth',
'accesstoken': ....
}
vAPI runtime
provides convenient factory methods that takes OAuth2 access token as input
parameter and creates a security context that conforms to the above format.
protected StructValue __dynamicStructureFields
public AuthenticationScheme()
protected AuthenticationScheme(StructValue __dynamicStructureFields)
public com.vmware.vapi.bindings.type.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 structureprotected void _updateDataValue(StructValue structValue)
public 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 boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.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 java.lang.Object
public boolean _hasTypeNameOf(java.lang.Class<? extends Structure> clazz)
Structure
This can be used as efficient check to determine if this instance
can be successfully converted
to the target
type.
_hasTypeNameOf
in interface Structure
clazz
- bindings class for the target structure; must not be null
public <T extends Structure> T _convertTo(java.lang.Class<T> clazz)
Structure
_convertTo
in interface Structure
clazz
- type of the result structure. cannot be null.CoreException
is thrown otherwise.public void _setDynamicField(java.lang.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(java.lang.String fieldName)
StaticStructure
_getDynamicField
in interface StaticStructure
fieldName
- the canonical name of the dynamic fieldDataValue
of the dynamic fieldpublic java.util.Set<java.lang.String> _getDynamicFieldNames()
StaticStructure
_getDynamicFieldNames
in interface StaticStructure
public static com.vmware.vapi.bindings.type.StructType _getClassType()
StructType
instance representing the static bindings
type for this Structure
.public java.lang.String _getCanonicalName()
Structure
org.example.FooBar
would turn into
org.example.foo_bar
._getCanonicalName
in interface Structure
public static java.lang.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
public static AuthenticationScheme _newInstance2(StructValue structValue)