VMware vSphere Automation SDK for .NET 6.5.0

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Static Public Attributes
vmware::vapi::std::AuthenticationScheme Class Reference

The AuthenticationScheme class defines constants for authentication scheme identifiers for authentication mechanisms present in the vAPI infrastructure shipped by VMware. More...

List of all members.

## Public Member Functions
| AuthenticationScheme ()
| Creates a default new instance.
vmware.vapi.bindings.type.StructType | _GetType ()
vmware.vapi.data.StructValue | _GetDataValue ()
void | _Validate ()
bool | _HasTypeNameOf< T > ()
T | _ConvertTo< T > ()
override bool | Equals (object obj)
override int | GetHashCode ()
override string | ToString ()
## Static Public Attributes
static readonly string | NO_AUTHENTICATION = "com.vmware.vapi.std.security.no_authentication"
| Indicates that the request doesn't need any authentication.
static readonly string | SAML_BEARER_TOKEN = "com.vmware.vapi.std.security.saml_bearer_token"
| Indicates that the security context in a request is using a SAML bearer token based authentication scheme.
static readonly string | SAML_HOK_TOKEN = "com.vmware.vapi.std.security.saml_hok_token"
| Indicates that the security context in a request is using a SAML holder-of-key token based authentication scheme.
static readonly string | SESSION_ID = "com.vmware.vapi.std.security.session_id"
| Indicates that the security context in a request is using a session identifier based authentication scheme.
static readonly string | USER_PASSWORD = "com.vmware.vapi.std.security.user_pass"
| Indicates that the security context in a request is using username/password based authentication scheme.
static readonly string | OAUTH_ACCESS_TOKEN = "com.vmware.vapi.std.security.oauth"
| Indicates that the security context in a request is using OAuth2 based authentication scheme.

## Detailed Description

The 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.

## Constructor & Destructor Documentation

vmware::vapi::std::AuthenticationScheme::AuthenticationScheme | ( |  | ) | `[inline]`

Creates a default new instance.

## Member Function Documentation

T vmware::vapi::std::AuthenticationScheme::_ConvertTo< T > | ( |  | ) | `[inline]`

Type Constraints

  T | : | vmware.vapi.bindings.IStructure |

vmware.vapi.data.StructValue vmware::vapi::std::AuthenticationScheme::_GetDataValue | ( |  | ) | `[inline]`

vmware.vapi.bindings.type.StructType vmware::vapi::std::AuthenticationScheme::_GetType | ( |  | ) | `[inline]`

bool vmware::vapi::std::AuthenticationScheme::_HasTypeNameOf< T > | ( |  | ) | `[inline]`

Type Constraints

  T | : | vmware.vapi.bindings.IStructure |

void vmware::vapi::std::AuthenticationScheme::_Validate | ( |  | ) | `[inline]`

override bool vmware::vapi::std::AuthenticationScheme::Equals | ( | object | obj | ) | `[inline]`

override int vmware::vapi::std::AuthenticationScheme::GetHashCode | ( |  | ) | `[inline]`

override string vmware::vapi::std::AuthenticationScheme::ToString | ( |  | ) | `[inline]`

## Member Data Documentation

readonly string vmware::vapi::std::AuthenticationScheme::NO_AUTHENTICATION = "com.vmware.vapi.std.security.no_authentication"`[static]`

Indicates that the request doesn't need any authentication.

readonly string vmware::vapi::std::AuthenticationScheme::OAUTH_ACCESS_TOKEN = "com.vmware.vapi.std.security.oauth"`[static]`

Indicates that the security context in a request is using OAuth2 based authentication scheme.

In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:

- The scheme identifier - com.vmware.vapi.std.security.oauth
- Valid OAuth2 access token - This is usually acquired by OAuth2 Authorization Server after successful authentication of the end user.

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.

readonly string vmware::vapi::std::AuthenticationScheme::SAML_BEARER_TOKEN = "com.vmware.vapi.std.security.saml_bearer_token"`[static]`

Indicates that the security context in a request is using a SAML bearer token based authentication scheme.

In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:

- The scheme identifier: com.vmware.vapi.std.security.saml_bearer_token
- The token itself

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.

readonly string vmware::vapi::std::AuthenticationScheme::SAML_HOK_TOKEN = "com.vmware.vapi.std.security.saml_hok_token"`[static]`

Indicates that the security context in a request is using a SAML holder-of-key token based authentication scheme.

In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:

- The scheme identifier: com.vmware.vapi.std.security.saml_hok_token
- Signature of the request: This includes - algorithm used for signing the request, SAML holder of key token and signature digest
- Request timestamp: This includes the `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.

readonly string vmware::vapi::std::AuthenticationScheme::SESSION_ID = "com.vmware.vapi.std.security.session_id"`[static]`

Indicates that the security context in a request is using a session identifier based authentication scheme.

In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:

- The scheme identifier - com.vmware.vapi.std.security.session_id
- Valid session identifier - This is usually returned by a login method of a session manager interface for a particular vAPI service of this authentication scheme

Sample security context in JSON format that matches the specification: `{ '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.

readonly string vmware::vapi::std::AuthenticationScheme::USER_PASSWORD = "com.vmware.vapi.std.security.user_pass"`[static]`

Indicates that the security context in a request is using username/password based authentication scheme.

In this scheme, the following pieces of information has to be passed in the SecurityContext structure in the execution context of the request:

- The scheme identifier - com.vmware.vapi.std.security.user_pass
- Username
- Password

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.

The documentation for this class was generated from the following file:

- AuthenticationScheme.cs