Pour accéder à Google Cloud, vous devez généralement la Google Cloud CLI. Cette page présente les options d'autorisation disponibles et explique comment gérer les comptes utilisés pour l'autorisation. Si vous utilisez une instance Compute Engine ou Cloud Shell, vous n'avez pas besoin d'autoriser la CLI gcloud.
Types de comptes
Pour autoriser la gcloud CLI à accéder Google Cloud, vous pouvez utiliser compte utilisateur ou compte de service.
Un compte utilisateur est un compte Google Cloud qui permet aux utilisateurs finaux de s'authentifier auprès de votre application. Pour les cas d'utilisation les plus courants, notamment de manière interactive à l'aide de la gcloud CLI, il est préférable d'utiliser un compte utilisateur pratique.
Un compte de service est un compte Google Cloud associé à votre projet Google Cloud plutôt qu'à un utilisateur spécifique. Vous pouvez utiliser le compte de service intégré disponible lorsque vous utilisez des fonctions Cloud Run, App Engine, Compute Engine ou Google Kubernetes Engine. Un compte de service est recommandé pour exécuter gcloud CLI des scripts sur plusieurs machines.
Choisir un type d'autorisation
Vous devez autoriser la Google Cloud CLI à gérer Google Cloud ressources. Google Cloud CLI et Google Cloud utilisent tous deux OAuth2 pour l'authentification et l'autorisation.
Choisissez l'un des types d'autorisation suivants :
Type | Description |
---|---|
Compte utilisateur | Recommandé si vous utilisez la CLI gcloud à partir de la ligne de commande ou si vous écrivez des scripts avec la CLI gcloud pour une utilisation sur une seule machine. |
Compte de service | Recommandé si vous installez et configurez la CLI gcloud dans le cadre d'un processus de déploiement de machine en production, ou pour utilisation sur des instances de machine virtuelle Compute Engine où tous les utilisateurs ont accès à root . |
Pour en savoir plus sur l'authentification dans Google Cloud, consultez la page Présentation de l'authentification.
Autoriser avec un compte utilisateur
Utilisez les commandes de CLI gcloud suivantes pour autoriser l'accès avec un compte utilisateur :
Commande | Description |
---|---|
gcloud init
|
Autorise l'accès et effectue d'autres étapes de configuration courantes. |
gcloud auth login
|
Autorise l'accès uniquement. |
Pendant la procédure d'autorisation, ces commandes obtiennent les identifiants du compte auprès de Google Cloud et les stockent sur le système local. Le compte spécifié devient alors le compte actif dans votre configuration. La gcloud CLI utilise les identifiants stockés pour accéder Google Cloud. Vous pouvez disposer d'un nombre illimité de comptes pour une seule installation de gcloud CLI, mais une seule est actif à la fois.
Run gcloud init (Exécuter gcloud init)
gcloud init
autorise l'accès et exécute d'autres étapes courantes de configuration. gcloud init
s'appuie sur un flux d'autorisation Web pour authentifier le compte utilisateur et accorder les autorisations d'accès.
Pour autoriser l'accès et exécuter d'autres étapes courantes de configuration :
Exécutez
gcloud init
:gcloud init
Ou, pour empêcher la commande d'ouvrir automatiquement un navigateur Web :
gcloud init --console-only
Le paramètre
--console-only
est utile si vous exécutez la commande sur un système distant viassh
et si vous n'avez pas accès à un navigateur sur ce système. Vous devez ensuite ouvrir manuellement l'URL fournie dans un navigateur sur votre système local pour terminer le processus d'autorisation.Suivez le flux d'autorisation basé sur le navigateur pour authentifier le compte et accorder les autorisations d'accès.
Pour en savoir plus sur gcloud init
, consultez la section Initialiser gcloud CLI.
Exécuter gcloud auth login
L'exécution de gcloud auth login
n'autorise que le compte utilisateur.
Pour autoriser l'accès sans effectuer d'autres étapes de configuration, utilisez l'une des options suivantes.
Si vous souhaitez autoriser la gcloud CLI sur une machine avec un navigateur, procédez comme suit.
Autorisez la gcloud CLI :
gcloud auth login
Suivez le flux d'autorisation basé sur le navigateur pour authentifier le compte et accorder les autorisations d'accès.
Si vous souhaitez autoriser la gcloud CLI sur une machine n'a pas de navigateur, et vous pouvez installer la gcloud CLI sur une autre machine avec un navigateur, utilisez l'indicateur
--no-browser
.Autorisez la gcloud CLI :
gcloud auth login --no-browser
Copiez la commande longue commençant par
gcloud auth login --remote-bootstrap="
.Collez et exécutez cette commande dans la ligne de commande d'un autre une machine qui dispose d'installations locales : navigateur Web gcloud CLI version 372.0 ou ultérieure.
Copiez la longue URL de sortie de la machine avec le navigateur Web.
Collez l'URL longue sur la première machine sous l'invite « Entrée » la sortie de la commande ci-dessus" et appuyez sur Entrée pour terminer une autorisation.
Si vous souhaitez autoriser la gcloud CLI sur une machine qui ne dispose pas de navigateur et que vous ne pouvez pas installer la gcloud CLI sur une autre machine avec un navigateur, utilisez l'indicateur
--no-launch-browser
. L'option--no-launch-browser
empêche la commande d'ouvrir automatiquement un navigateur Web.Autorisez la gcloud CLI :
gcloud auth login --no-launch-browser
Copiez l'URL longue commençant par
https://accounts.google.com/o/oauth2/auth...
Collez cette URL dans le navigateur d'une autre machine fiable disposant d'un navigateur Web.
Copiez le code d'autorisation de la machine à l'aide du navigateur Web.
Collez le code d'autorisation sur la première machine à l'invite "Enter verification code" (Saisissez le code de validation), puis appuyez sur Entrée pour finaliser l'autorisation.
Si vous disposez déjà d'un jeton d'accès, utilisez l'un des éléments suivants pour transmettre le jeton d'accès à la gcloud CLI:
- Stockez le jeton d'accès dans un fichier et définissez son chemin d'accès à l'aide de l'option --access-token-file.
- Stockez le jeton d'accès dans un fichier et définissez son chemin d'accès dans la propriété auth/access_token_file.
- Définissez la variable d'environnement
CLOUDSDK_AUTH_ACCESS_TOKEN
sur la valeur du jeton d'accès.
Autoriser avec un compte de service
La commande gcloud auth login
permet
autoriser l'accès avec un compte de service à l'aide d'un fichier d'identifiants stocké
votre système de fichiers local. Ces identifiants peuvent être des identifiants utilisateur autorisés à usurper l'identité du compte de service, un fichier de configuration des identifiants pour la fédération d'identité de charge de travail ou une clé de compte de service.
Autoriser un compte de service à l'aide de l'emprunt d'identité de compte de service
Pour autoriser la gcloud CLI à Utiliser des identifiants de compte de service usurpés effectuer les opérations suivantes:
Dans la console Google Cloud, accédez à la page "Comptes de service".
Sélectionnez un compte existant ou créez un compte en cliquant sur Créer un compte de service.
-
Pour vous assurer que le compte principal dispose des autorisations nécessaires pour emprunter l'identité d'un compte de service, demandez à votre administrateur d'accorder au compte principal le rôle IAM Créateur de jetons du compte de service (
roles/iam.serviceAccountTokenCreator
) sur le compte de service. Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.Ce rôle prédéfini contient
iam.serviceAccounts.getAccessToken
les autorisations, qui est nécessaire pour pour emprunter l'identité d'un compte de service.Votre administrateur peut aussi attribuer au compte principal cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.
Autorisez la gcloud CLI avec votre identité utilisateur en exécutant
gcloud auth login
.Pour configurer gcloud CLI afin d'utiliser l'identité et l'accès fournis par un compte de service par défaut, utilisez la commande gcloud CLI config :
gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL
Pour arrêter d'utiliser les identifiants de compte de service usurpés avec la gcloud CLI par défaut, rétablissez l'indicateur à l'aide de la commande gcloud CLI config :
gcloud config unset auth/impersonate_service_account
Autoriser un compte de service à l'aide de la fédération d'identité de charge de travail
Pour autoriser la gcloud CLI avec un compte de service à l'aide d'outils de la fédération d'identité de charge de travail, procédez comme suit:
Dans la console Google Cloud, accédez à la page "Comptes de service".
Sélectionnez un compte existant ou créez un compte en cliquant sur Créer un compte de service.
Créez un fichier de configuration des identifiants pour la fédération d'identité de charge de travail en suivant les instructions de votre fournisseur d'identité compatible.
Pour activer votre compte de service, exécutez la commande suivante :
gcloud auth login
avec le Indicateur--cred-file
:gcloud auth login --cred-file=CONFIGURATION_FILE
Remplacez CONFIGURATION_FILE par le chemin d'accès à fichier de configuration des identifiants pour la fédération d'identité de charge de travail.
Autoriser un compte de service à l'aide d'une clé de compte de service
Pour autoriser la gcloud CLI avec un compte de service à l'aide d'un service clé de compte de service, procédez comme suit:
Dans la console Google Cloud, accédez à la page "Comptes de service".
Sélectionnez un compte existant ou créez un compte en cliquant sur Créer un compte de service.
Pour créer des clés de compte de service, consultez les instructions IAM pour Créez une clé de compte de service.
Pour activer votre compte de service, exécutez la commande suivante :
gcloud auth login
avec le--cred-file
:gcloud auth login --cred-file=KEY_FILE
Remplacez KEY_FILE par le chemin d'accès à une clé de compte de service .
Répertorier les comptes
Pour répertorier les comptes dont les identifiants sont stockés sur le système local, exécutez gcloud auth list
:
gcloud auth list
La CLI gcloud répertorie les comptes et indique celui qui est actif :
Credentialed accounts: - user-1@gmail.com (active) - user-2@gmail.com
Changer de compte actif
Pour changer de compte actif, exécutez gcloud config set
:
gcloud config set account ACCOUNT
où [ACCOUNT]
est l'adresse e-mail complète du compte.
Vous pouvez également changer de compte en créant une configuration distincte spécifiant le nouveau compte et en basculant entre les configurations :
gcloud config configurations activate CONFIGURATION
Si vous voulez changer le compte utilisé par la CLI gcloud au niveau d'un appel individuel, remplacez le compte actif à l'aide du paramètre --account
.
Définir la durée de session autorisée
En tant qu'administrateur, vous pouvez contrôler la durée pendant laquelle différents utilisateurs peuvent accéder à la CLI gcloud sans avoir à s'authentifier à nouveau. Par exemple, vous pouvez forcer les utilisateurs disposant de privilèges élevés à se réauthentifier plus fréquemment que les utilisateurs standards.
Pour en savoir plus, consultez Définissez la durée de session pour les services Google Cloud.
Révoquer des identifiants d'un compte
Vous pouvez révoquer les identifiants lorsque vous souhaitez interdire l'accès gcloud CLI par un compte particulier. Vous n'avez pas besoin de révoquer les identifiants pour basculer entre les comptes.
Pour révoquer des identifiants, exécutez la commande gcloud auth revoke
suivante :
gcloud auth revoke ACCOUNT
Pour révoquer tous les accès à la gcloud CLI pour toutes les machines, procédez comme suit : Supprimez la gcloud CLI de la liste des applications ayant accès à votre compte.
Utiliser des fichiers d'identifiants
Trouver vos fichiers d'identifiants
Pour trouver l'emplacement de vos fichiers d'identifiants, exécutez la commande gcloud info
:
gcloud info
La CLI gcloud affiche les informations sur votre installation. Les fichiers d'identifiants sont stockés dans le répertoire de configuration de l'utilisateur :
User Config Directory: [/home/USERNAME/.config/gcloud]
Configurer les identifiants par défaut de l'application
La CLI gcloud permet de gérer les identifiants par défaut de l'application (ADC) avec le groupe de commandes gcloud auth application-default
. Pour mettre les identifiants utilisateur à la disposition d'ADC, exécutez gcloud auth application-default login
:
gcloud auth application-default login
Ces identifiants sont ne sont pas utilisées par la gcloud CLI. Pour découvrir d'autres façons de configurer ADC, consultez la page Configurer les identifiants par défaut de l'application.
unset GOOGLE_APPLICATION_CREDENTIALS
gcloud config unset auth/impersonate_service_account
gcloud auth application-default login
Étape suivante
- Pour en savoir plus sur l'authentification et Google Cloud, consultez Présentation de l'authentification
- Pour en savoir plus sur la personnalisation de la gcloud CLI, consultez la section Propriétés de la gcloud CLI.
- Pour en savoir plus sur la gestion d'ensembles nommés de propriétés de la gcloud CLI, consultez la section Configurations de la gcloud CLI.