Configurer des autorisations

Cette rubrique explique comment configurer les autorisations et les identifiants requis pour appeler l'API Cloud Asset Inventory.

Authentification

Pour pouvoir appeler l'API Cloud Asset Inventory, vous devez vous authentifier en tant qu'utilisateur final ou en tant que compte de service. Pour en savoir plus sur l'authentification, consultez la section Présentation de l'authentification.

Accorder les autorisations requises pour la gcloud CLI

Pour utiliser la gcloud CLI afin d'accéder à l'API Cloud Asset Inventory, vous devez accorder les autorisations nécessaires sur le parent de la ressource cible, qui peut être une organisation, un projet ou un dossier. Vous devez spécifier ce parent dans le champ parent de vos requêtes API.

Si votre compte dispose du rôle Propriétaire d'éléments Cloud (roles/cloudasset.owner) ou du rôle de base Propriétaire (roles/owner) sur le parent de la ressource, il dispose des autorisations suffisantes pour appeler l'API Cloud Asset Inventory et vous pouvez passer directement à la section Télécharger les identifiants. Pour en savoir plus sur les rôles Cloud Asset Inventory, consultez la section Rôles.

Attribution des rôles…

Pour attribuer un rôle à un compte, procédez comme suit avec la Google Cloud CLI. Découvrez comment installer et initialiser gcloud CLI.

Compte utilisateur

Pour attribuer les rôles nécessaires à un compte utilisateur, procédez comme suit :

  1. Pour vous connecter avec votre compte utilisateur, exécutez la commande suivante.

    gcloud auth login USER_ACCOUNT_EMAIL
    
  2. Attribuez à votre compte utilisateur le rôle Lecteur d'éléments Cloud (roles/cloudasset.viewer) ou Propriétaire d'éléments Cloud (roles/cloudasset.owner) sur la ressource racine (parente). Il peut s'agir du projet dans lequel l'API Cloud Asset Inventory est activée.

    Pour attribuer le rôle Lecteur d'éléments Cloud à votre compte utilisateur, exécutez la commande suivante.

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID \
        --member user:USER_ACCOUNT_EMAIL \
        --role roles/cloudasset.viewer
    

    Vous pouvez ajouter l'option --billing-project à la commande gcloud asset pour spécifier le projet de facturation dans lequel l'API Cloud Asset Inventory est activée.

    --billing-project PROJECT_ID
    

    Si vous spécifiez cette option, votre compte a besoin de l'autorisation serviceusage.services.use sur le projet PROJECT_ID. Consultez la section Comprendre les rôles pour obtenir la liste des rôles prédéfinis qui incluent cette autorisation.

Compte de service

Pour attribuer les rôles nécessaires à un compte de service, procédez comme suit : Pour en savoir plus sur les comptes de service, consultez la section Créer et gérer les comptes de service.

  1. Pour créer un compte de service, exécutez la commande suivante. Si vous possédez déjà un compte de service dans un projet pour lequel l'API Cloud Asset Inventory est activée, vous pouvez ignorer cette étape.

    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
        --display-name "SERVICE_ACCOUNT_DISPLAY_NAME"
    
  2. Attribuez à votre compte de service le rôle Lecteur d'éléments Cloud (roles/cloudasset.viewer) ou le rôle Propriétaire d'éléments Cloud (roles/cloudasset.owner) sur la ressource racine (parente). Ce projet peut être le même que celui où l'API Cloud Asset Inventory est activée.

    Pour attribuer le rôle Lecteur d'éléments cloud à votre compte de service, exécutez la commande suivante.

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID \
        --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
        --role roles/cloudasset.viewer