Cette page explique comment supprimer et annuler la suppression de comptes de service à l'aide de l'API Cloud IAM (Cloud Identity and Access Management), de la console Google Cloud et de l'outil de ligne de commande gcloud
.
Avant de commencer
Enable the IAM API.
Configurez l'authentification.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
C++
Pour utiliser les exemples C++ de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local dans la documentation sur l'authentification Google Cloud.
C#
Pour utiliser les exemples .NET de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local dans la documentation sur l'authentification Google Cloud.
Go
Pour utiliser les exemples Go de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local dans la documentation sur l'authentification Google Cloud.
Java
Pour utiliser les exemples Java de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local dans la documentation sur l'authentification Google Cloud.
Python
Pour utiliser les exemples Python de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local dans la documentation sur l'authentification Google Cloud.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.
Consultez la documentation relative aux comptes de service IAM.
Rôles requis
Pour obtenir les autorisations nécessaires pour gérer les comptes de service, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet :
- Pour afficher les comptes de service : Afficher les comptes de service (
roles/iam.serviceAccountViewer
) - Pour modifier les comptes de service : Administrateur de compte de service (
roles/iam.serviceAccountAdmin
)
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur ces rôles, consultez la section Rôles des comptes de service.
Les rôles de base IAM contiennent également les autorisations nécessaires pour gérer les comptes de service. Les rôles de base ne doivent pas être attribués dans un environnement de production, mais ils peuvent être attribués dans un environnement de développement ou de test.
Répertorier les comptes de service
Vous pouvez répertorier les comptes de service gérés par l'utilisateur d'un projet pour vous aider à auditer les comptes de service et les clés, ou dans le cadre d'un outil personnalisé de gestion des comptes de service.
Vous ne pouvez pas répertorier les agents de service ni les autres comptes de service gérés par Google qui peuvent apparaître dans la stratégie d'autorisation et les journaux d'audit de votre projet. Les comptes de service gérés par Google ne sont pas situés dans votre projet et vous ne pouvez pas y accéder directement.
Console
Dans Google Cloud Console, accédez à la page Comptes de service.
Sélectionnez un projet.
La page Comptes de service répertorie tous les comptes de service gérés par l'utilisateur dans le projet que vous avez sélectionné.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Exécutez la commande
gcloud iam service-accounts list
pour répertorier tous les comptes de service d'un projet.Commande :
gcloud iam service-accounts list
La sortie correspond à la liste de tous les comptes de service gérés par l'utilisateur dans le projet :
NAME EMAIL SA_DISPLAY_NAME_1 SA_NAME_1@PROJECT_ID.iam.gserviceaccount.com SA_DISPLAY_NAME_2 SA_NAME_2@PROJECT_ID.iam.gserviceaccount.com
C++
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM C++.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
C#
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM C#.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM Go.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM Java.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM Python.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
REST
La méthode
serviceAccounts.list
répertorie tous les comptes de service gérés par l'utilisateur dans votre projet.Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID de votre projet Google Cloud. Les ID de projet sont des chaînes alphanumériques, telles quemy-project
.
Méthode HTTP et URL :
GET https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "accounts": [ { "name": "projects/my-project/serviceAccounts/sa-1@my-project.iam.gserviceaccount.com", "projectId": "my-project", "uniqueId": "123456789012345678901", "email": "sa-1@my-project.iam.gserviceaccount.com", "description": "My first service account", "displayName": "Service account 1", "etag": "BwUpTsLVUkQ=", "oauth2ClientId": "987654321098765432109" }, { "name": "projects/my-project/serviceAccounts/sa-2@my-project.iam.gserviceaccount.com", "projectId": "my-project", "uniqueId": "234567890123456789012", "email": "sa-2@my-project.iam.gserviceaccount.com", "description": "My second service account", "displayName": "Service account 2", "etag": "UkQpTwBVUsL=", "oauth2ClientId": "876543210987654321098" } ] }
Modifier un compte de service
Le nom d'affichage (nom convivial) et la description d'un compte de service permettent généralement d'obtenir des informations supplémentaires le concernant, telles que sa finalité ou une personne à contacter.
Console
Dans Google Cloud Console, accédez à la page Comptes de service.
Sélectionnez un projet.
Cliquez sur l'adresse e-mail du compte de service que vous souhaitez renommer.
Saisissez le nouveau nom dans le champ Nom, puis cliquez sur Enregistrer.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Exécutez la commande
gcloud iam service-accounts update
pour mettre à jour un compte de service.Commande :
gcloud iam service-accounts update \ SA_NAME@PROJECT_ID.iam.gserviceaccount.com \ --description="UPDATED_SA_DESCRIPTION" \ --display-name="UPDATED_DISPLAY_NAME"
La sortie confirme le changement de nom du compte de service :
description: UPDATED_SA_DESCRIPTION displayName: UPDATED_DISPLAY_NAME name: projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com
C++
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM C++.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
C#
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM C#.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM Go.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM Java.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour IAM, consultez la page Bibliothèques clientes IAM. Pour en savoir plus, consultez la documentation de référence de l'API Cloud IAM Python.
Pour vous authentifier auprès d'IAM, configurez le service Identifiants par défaut de l'application. Pour plus d'informations, consultez la section Avant de commencer.
REST
La méthode
serviceAccounts.patch
met à jour un compte de service.Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID de votre projet Google Cloud. Les ID de projet sont des chaînes alphanumériques, telles quemy-project
.SA_ID
: ID de votre compte de service. Il peut s'agir de l'adresse e-mail du compte de service au formatSA_NAME@PROJECT_ID.iam.gserviceaccount.com
ou de l'ID numérique unique du compte de service.SA_NAME
: ID alphanumérique de votre compte de service. Ce nom doit comporter entre 6 et 30 caractères. Il peut inclure des caractères alphanumériques minuscules et des tirets.- Remplacez au moins l'un des éléments suivants :
UPDATED_DISPLAY_NAME
: nouveau nom à afficher pour votre compte de service.UPDATED_DESCRIPTION
: nouvelle description de votre compte de service.
Méthode HTTP et URL :
PATCH https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_ID
Corps JSON de la requête :
{ "serviceAccount": { "email": "SA_NAME@PROJECT_ID.iam.gserviceaccount.com", "displayName": "UPDATED_DISPLAY_NAME", "description": "UPDATED_DESCRIPTION" }, "updateMask": "displayName,description" }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com", "displayName": "My updated service account", "description": "An updated description of my service account" }
Étapes suivantes
- Découvrez comment désactiver et activer les comptes de service.
- Examinez le processus permettant d'attribuer des rôles Cloud IAM à tous les types de comptes principaux, y compris les comptes de service.
- Découvrez comment utiliser les recommandations de rôle pour réduire le champ d'application des autorisations de tous les comptes principaux, y compris des comptes de service.
- Découvrez comment associer des comptes de service aux ressources.
Faites l'essai
Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
Essai gratuitSauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/11/22 (UTC).