Você pode gerar e emitir tokens de acesso à 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
- 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
Exemplo
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_TokenResposta:
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_TokenResposta:
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>",