À partir de VMware Cloud Director 10.3.1, vous pouvez générer et émettre des jetons d'accès d'API. Vous êtes authentifié conformément à vos meilleures pratiques de sécurité respectives, notamment l'utilisation de l'autorisation à deux facteurs. À l'aide des jetons d'accès d'API, vous pouvez accorder l'accès pour la création de l'automatisation par rapport à VMware Cloud Director.
Les jetons d'accès sont des artefacts que les applications clientes utilisent pour effectuer des demandes d'API au nom d'un utilisateur. Les applications ont besoin de jetons d'accès pour l'authentification. Lorsqu'un jeton d'accès expire, pour obtenir des jetons d'accès, les applications peuvent utiliser des jetons d'API. Les jetons d'API n'expirent pas.
Lors de l'utilisation de jetons d'accès, les applications ne peuvent pas effectuer certaines tâches.
- Modifier le mot de passe de l'utilisateur.
- Effectuer des tâches de gestion des utilisateurs
- Créer plus de jetons
- Afficher ou révoquer d'autres jetons
Lorsqu'elles accèdent à VMware Cloud Director à l'aide d'un jeton d'accès d'API, les applications disposent uniquement de droits d'affichage pour les ressources suivantes.
- Utilisateur
- Groupe
- Rôles
- Rôles globaux
- Bundles de droits
- Jeton : Gérer
- Jeton : Gérer tous
De la même manière que pour générer un jeton d'API utilisateur, vous pouvez créer un compte de service à l'aide de l'API VMware Cloud Director. La demande d'API pour la création d'un compte de service utilise le même point de terminaison d'API que la création d'un jeton d'API utilisateur, mais la présence du champ software_id
indique l'intention de créer un compte de service.
Conditions préalables
L'authentification à l'aide d'un jeton d'API utilise la norme « Actualisation d'un jeton d'accès » telle que spécifiée dans la Section 6 de la RFC 6749 OAuth 2.0 pour autoriser l'accès à VMware Cloud Director en tant qu'application OAuth. Le jeton d'accès renvoyé est le même qu'un jeton d'accès VMware Cloud Director. Les applications clientes peuvent l'utiliser pour effectuer par la suite des appels d'API à VMware Cloud Director. Pour effectuer une demande conforme à la RFC OAuth 2.0, familiarisez-vous avec les informations de la Section 6 de la RFC (Request for Comments) 6749 relatives à l'actualisation d'un jeton d'accès.
Procédure
Exemple
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_TokenRéponse :
HTTP/1.1 200 OK Content-Type: application/json { "access_token":"Generated_Access_Token", "token_type":"Bearer", "expires_in":2592000, "refresh_token":null }Demande à l'aide du jeton d'accès généré :
GET https://host_name/api/org Accept: application/*+xml;version=36.1 Authorization: Bearer Generated_Access_TokenRéponse :
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>
Que faire ensuite
- Si vous souhaitez que les locataires soient en mesure de générer des jetons, vous devez accorder aux rôles de locataires le droit Gérer le jeton d'API de l'utilisateur.
- Par défaut, les locataires voient uniquement les jetons qu'ils créent. Pour permettre aux administrateurs d'organisation d'afficher et de révoquer les jetons des autres utilisateurs locataires de l'organisation, vous devez leur accorder le droit Gérer les jetons d'API de tous les utilisateurs. Les administrateurs qui disposent du droit Gérer les jetons d'API de tous les utilisateurs peuvent voir uniquement les noms des jetons des autres utilisateurs, pas les jetons eux-mêmes.
- Pour révoquer l'un de vos jetons, accédez à la page Préférences utilisateur, puis cliquez sur les points de suspension verticaux en regard du jeton.
- Pour révoquer les jetons des autres utilisateurs, dans la barre de navigation supérieure, sous Administration, accédez aux paramètres de contrôle d'accès des utilisateurs. Lorsque vous sélectionnez un utilisateur spécifique, vous pouvez également voir ses jetons d'accès et les révoquer.
- Si vous devez identifier des événements déclenchés à l'aide d'un jeton d'accès d'API, la ligne suivante s'affiche dans le journal des événements dans la section
additionalProperties
d'un événement."currentContext.refreshTokenId": "<UUID_of_the_token_that_performed_the_action>",