A partir do VMware Cloud Director 10.3.1, você pode gerar e emitir tokens de acesso de API. Usando esses tokens de API, você é autenticado de acordo com suas respectivas práticas recomendadas de segurança, incluindo a aplicação da autorização de dois fatores, e pode conceder acesso para automação de compilação no VMware Cloud Director.

Tokens de acesso são artefatos que os aplicativos cliente usam para fazer solicitações de API em nome de um usuário. Aplicativos precisam de tokens de acesso para autenticação. Quando um token de acesso expira, para obter tokens de acesso, os aplicativos podem usar tokens de API. Tokens de API não expiram.

Ao usar tokens de acesso, os aplicativos não podem realizar determinadas tarefas.

  • Alterar a senha do usuário
  • Realizar tarefas de gerenciamento de usuários
  • Criar mais tokens
  • Exibir ou revogar outros tokens

Ao acessar o VMware Cloud Director usando um token de acesso de API, os aplicativos têm apenas direitos de exibição para os seguintes recursos.

  • Usuário
  • Grupo
  • Funções
  • Funções globais
  • Pacotes de direitos
Os aplicativos que acessam o VMware Cloud Director usando um token de acesso de API não têm os direitos a seguir.
  • Token: Gerenciar
  • Token: Gerenciar Tudo

Semelhante à geração de um token de API do usuário, você pode criar uma conta de serviço usando a API do VMware Cloud Director. A solicitação de API para criar uma conta de serviço usa o mesmo endpoint de API que a criação de um token de API do usuário, mas a presença do campo software_id indica a intenção de criar uma conta de serviço.

Pré-requisitos

A autenticação com um token de API usa o padrão em "Atualizando um token de acesso", conforme especificado na RFC 6749 Seção 6 do OAuth 2.0 para permitir o acesso ao VMware Cloud Director como aplicativo OAuth. O token de acesso retornado é igual ao token de acesso do VMware Cloud Director, e os aplicativos cliente podem usá-lo para fazer chamadas de API subsequentes ao VMware Cloud Director. Para fazer uma solicitação compatível com a RFC do OAuth 2.0, familiarize-se com as informações na Solicitação de comentários (RFC) 6749, Seção 6 sobre como atualizar um token de acesso.

Procedimento

  1. No canto superior direito da barra de navegação, clique no seu nome de usuário e selecione Preferências do usuário.
  2. Na seção Tokens de Acesso, clique em Novo.
  3. Insira um nome para o token e clique em Criar.
    O token de API gerado é exibido. Você deve copiar o token, pois ele aparece apenas uma vez. Depois que você clicar em OK, não poderá recuperar esse token novamente, apenas poderá revogá-lo.
  4. Faça uma solicitação compatível com a RFC do OAuth 2.0 ao endpoint de API https://site.cloud.example.com/oauth/provider/token.
    Chave Valor
    grant_type refresh_token
    refresh_token Generated_refresh_token
    A solicitação retorna um token de acesso que os aplicativos podem usar para realizar tarefas no VMware Cloud Director. O token continuará válido mesmo depois que o usuário fizer logout. Quando um token de acesso expirar, o aplicativo poderá obter mais tokens de acesso usando o token de API.

Exemplo

Solicitação:
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_Token
Resposta:
HTTP/1.1 200 OK
Content-Type: application/json

{
   "access_token":"Generated_Access_Token",
   "token_type":"Bearer",
   "expires_in":2592000,
   "refresh_token":null
}
Solicitação usando o token de acesso gerado:
GET https://host_name/api/org
Accept: application/*+xml;version=36.1
Authorization: Bearer Generated_Access_Token
Resposta:
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>

O que Fazer Depois

  • Se quiser que os tenants possam gerar tokens, você deverá conceder às funções de tenant o direito Gerenciar o próprio token de API do usuário.
  • Por padrão, os tenants visualizam apenas os tokens que eles criam. Para permitir que os administradores da organização vejam e revoguem os tokens dos outros usuários do tenant na organização, você deve conceder a eles o direito Gerenciar tokens de API de todos os usuários. Os administradores com o direito Gerenciar tokens de API de todos os usuários podem ver apenas os nomes dos tokens de outros usuários, não os tokens propriamente ditos.
  • Para revogar qualquer um dos seus tokens, navegue até a página Preferências do usuário e clique nas reticências verticais ao lado do token.
  • Para revogar os tokens de outros usuários, na barra de navegação superior, em Administração, navegue até as configurações de controle de acesso dos usuários. Ao selecionar um usuário específico, você também pode ver seus tokens de acesso e revogá-los.
  • Se você precisar identificar eventos acionados usando um token de acesso de API, no log de eventos, a seguinte linha aparecerá na seção additionalProperties de um evento.
    "currentContext.refreshTokenId": "<UUID_of_the_token_that_performed_the_action>",