A partire da VMware Cloud Director 10.3.1, è possibile generare ed emettere token di accesso API. Si viene autenticati utilizzando le rispettive procedure consigliate di sicurezza, incluso l'utilizzo dell'autorizzazione a due fattori, utilizzando i token di accesso API è possibile concedere l'accesso per la building automation rispetto a VMware Cloud Director.
I token di accesso sono elementi che le applicazioni client utilizzano per effettuare richieste API per conto di un utente. Le applicazioni necessitano di token di accesso per l'autenticazione. Quando un token di accesso scade, per ottenere i token di accesso, le applicazioni possono utilizzare i token API. I token API non scadono.
Quando utilizzano i token di accesso, le applicazioni non possono eseguire determinate attività.
- Modificare la password dell'utente
- Eseguire attività di gestione degli utenti
- Crea altri token
- Visualizzare o revocare altri token
Quando accedono a VMware Cloud Director utilizzando un token di accesso API, le applicazioni dispongono solo dei diritti di visualizzazione per le seguenti risorse.
- Utente
- Gruppo
- Ruoli
- Ruoli globali
- Bundle di diritti
- Token: Gestisci
- Token: Gestisci tutto
In modo simile alla generazione di un token API dell'utente, è possibile creare un account di servizio utilizzando l'API di VMware Cloud Director. La richiesta API per la creazione di un account di servizio utilizza lo stesso endpoint dell'API di creazione di un token API dell'utente, ma la presenza del campo software_id
indica lo scopo di creare un account di servizio.
Prerequisiti
L'autenticazione con un token API utilizza lo standard di "aggiornamento di un token di accesso" specificato nella sezione 6 di OAuth 2.0 RFC 6749 per consentire l'accesso a VMware Cloud Director come applicazione OAuth. Il token di accesso restituito coincide con un token di accesso di VMware Cloud Director e le applicazioni client possono utilizzarlo per effettuare chiamate API successive a VMware Cloud Director. Per creare una richiesta conforme a RFC OAuth 2.0, è necessario conoscere le informazioni contenute nella sezione 6 dell'RFC 6749 in merito all'aggiornamento di un token di accesso.
Procedura
Esempio
POST https://host_name/oauth/provider/token Accept: application/json Content-Type: application/x-www-form-urlencoded Content-Length: 71 grant_type=refresh_token&refresh_token=Generated_API_TokenRisposta:
HTTP/1.1 200 OK Content-Type: application/json { "access_token":"Generated_Access_Token", "token_type":"Bearer", "expires_in":2592000, "refresh_token":null }Richiesta utilizzando il token di accesso generato:
GET https://host_name/api/org Accept: application/*+xml;version=36.1 Authorization: Bearer Generated_Access_TokenRisposta:
HTTP/1.1 200 OK Content-Type: application/vnd.vmware.vcloud.orglist+xml;version=36.1 X-VMWARE-VCLOUD-REQUEST-EXECUTION-TIME: 41 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <OrgList xmlns="http://www.vmware.com/vcloud/v1.5" xmlns:vmext="http://www.vmware.com/vcloud/extension/v1.5" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingData" xmlns:common="http://schemas.dmtf.org/wbem/wscim/1/common" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:vmw="http://www.vmware.com/schema/ovf" xmlns:ovfenv="http://schemas.dmtf.org/ovf/environment/1" xmlns:ns9="http://www.vmware.com/vcloud/versions" href="https://host_name/api/org/" type="application/vnd.vmware.vcloud.orgList+xml"> <Org href="https://host_name/api/org/a93c9db9-7471-3192-8d09-a8f7eeda85f9" type="application/vnd.vmware.vcloud.org+xml" name="System"/> </OrgList>
Operazioni successive
- Se si desidera che i tenant possano generare token, è necessario assegnare ai ruoli tenant il diritto Gestisci token API personale dell'utente.
- Per impostazione predefinita, i tenant visualizzano solo i token che creano. Per consentire agli amministratori dell'organizzazione di visualizzare e revocare i token degli altri utenti tenant dell'organizzazione, è necessario concedere loro il diritto Gestisci token API di tutti gli utenti. Gli amministratori con il diritto Gestisci token API di tutti gli utenti possono visualizzare solo i nomi dei token degli altri utenti, non i token stessi.
- Per revocare uno qualsiasi dei token, passare alla pagina Preferenze utente e fare clic sui puntini verticali accanto al token.
- Per revocare i token di altri utenti, nella barra di navigazione superiore, in Amministrazione, accedere alle impostazioni di controllo degli accessi per gli utenti. Quando si seleziona un utente specifico, è possibile anche visualizzarne i token di accesso e revocarli.
- Se è necessario identificare gli eventi attivati utilizzando un token di accesso API, nel registro eventi viene visualizzata la riga seguente nella sezione
additionalProperties
di un evento."currentContext.refreshTokenId": "<UUID_of_the_token_that_performed_the_action>",