Lister les dépendances de service
L'activation hiérarchique des services vous permet de gérer l'activation des services héritée de la hiérarchie des ressources Google Cloud . Pour en savoir plus, consultez la présentation.
De nombreux services Google Cloud ont besoin d'autres services pour fonctionner. Lorsque vous activez un service à l'aide de l'activation hiérarchique des services, ses dépendances requises sont automatiquement ajoutées à ConsumerPolicy. Un groupe de dépendances de service contient ces services sur lesquels repose le service, que vous pouvez lister pour mieux les comprendre et les gérer.
Ce document vous explique comment utiliser Google Cloud CLI pour lister les dépendances de service pour les projets, les dossiers et les organisations.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Si vous utilisez un projet existant pour ce guide, vérifiez que vous disposez des autorisations nécessaires pour suivre les instructions. Si vous avez créé un projet, vous disposez déjà des autorisations requises.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Service Usage API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable serviceusage.googleapis.com
-
Install the Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Si vous utilisez un projet existant pour ce guide, vérifiez que vous disposez des autorisations nécessaires pour suivre les instructions. Si vous avez créé un projet, vous disposez déjà des autorisations requises.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Service Usage API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable serviceusage.googleapis.com
- Si vous n'indiquez pas la ressource Google Cloud que vous souhaitez gérer, les commandes de ce document sont définies par défaut sur le projet actuel. Par exemple,
gcloud beta services groups list-members bigquery.googleapis.com dependenciesliste les membres du projet actuel.Vous pouvez récupérer l'ID du projet actuel :
gcloud config list --format='text(core.project)'
-
Lister les membres d'un groupe de dépendances :
serviceusage.groups.listMembers -
Affichez la liste des membres du groupe de dépendances étendu :
serviceusage.groups.listExpandedMembers SERVICE: nom du service pour lequel vous souhaitez lister les membres.GROUP: nom du groupe de dépendances de service dont vous souhaitez lister les membres. Le groupe principal accepté estdependencies.PROJECT_ID: ID de votre projetGoogle Cloud . Vous pouvez également omettre l'indicateur pour utiliser le projet actuel par défaut.SERVICE: nom du service pour lequel vous souhaitez lister les membres.GROUP: nom du groupe de dépendances de service dont vous souhaitez lister les membres. Le groupe principal accepté estdependencies.FOLDER_ID: l'Google Cloud ID de votre dossier.SERVICE: nom du service pour lequel vous souhaitez lister les membres.GROUP: nom du groupe de dépendances de service dont vous souhaitez lister les membres. Le groupe principal accepté estdependencies.ORGANIZATION_ID: Google Cloud ID de ressource de votre organisation.SERVICE: nom du service pour lequel vous souhaitez lister les membres.GROUP: nom du groupe de dépendances de service dont vous souhaitez lister les membres. Le groupe principal accepté estdependencies.PROJECT_ID: ID de votre projetGoogle Cloud . Vous pouvez également omettre l'indicateur pour utiliser le projet actuel par défaut.SERVICE: nom du service pour lequel vous souhaitez lister les membres.GROUP: nom du groupe de dépendances de service dont vous souhaitez lister les membres. Le groupe principal accepté estdependencies.FOLDER_ID: l'Google Cloud ID de votre dossier.SERVICE: nom du service pour lequel vous souhaitez lister les membres.GROUP: nom du groupe de dépendances de service dont vous souhaitez lister les membres. Le groupe principal accepté estdependencies.ORGANIZATION_ID: Google Cloud ID de ressource de votre organisation.- Liste des dépendances directes du service BigQuery pour le projet actuel :
gcloud beta services groups list-members bigquery.googleapis.com dependencies
Résultat :
NAME: services/analyticshub.googleapis.com REASON: BigQuery depends on this group to allow users to exchange data and analytics assets. NAME: services/bigquery.googleapis.com REASON: The service representing BigQuery which owns this dependency group and depends on the other members of this group. NAME: services/bigqueryconnection.googleapis.com REASON: BigQuery depends on this group to allow users to manage connections to external data sources. NAME: services/bigquerydatapolicy.googleapis.com REASON: BigQuery depends on this group to allow users to manage their data policies. ...
- Tentative de lister les dépendances du service de clés API sans groupe de dépendances de service correspondant :
gcloud beta services groups list-members apikeys.googleapis.com dependencies --project=test-project
Résultat :
Listed 0 items. - Liste des dépendances développées du service BigQuery pour le projet actuel :
gcloud beta services groups list-expanded-members bigquery.googleapis.com dependencies
Résultat :
services/analyticshub.googleapis.com services/bigquery.googleapis.com services/bigqueryconnection.googleapis.com services/bigquerydatapolicy.googleapis.com services/bigquerydatatransfer.googleapis.com services/bigquerymigration.googleapis.com services/bigqueryreservation.googleapis.com services/bigquerystorage.googleapis.com services/cloudresourcemanager.googleapis.com services/dataform.googleapis.com services/dataplex.googleapis.com
- Pour activer et désactiver des services, consultez Gérer l'activation des services.
- Pour gérer les règles, consultez Gérer les règles relatives aux consommateurs.
Rôles requis
Pour obtenir les autorisations nécessaires pour lister les dépendances de service, demandez à votre administrateur de vous accorder le rôle IAM Lecteur Service Usage (roles/serviceusage.serviceUsageViewer) sur votre ressource cible.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour lister les dépendances de service. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour lister les dépendances de service :
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Lister les membres d'un groupe de dépendances
Vous pouvez lister les membres directs d'un groupe de dépendances de service pour un projet, un dossier ou une organisation à l'aide de la commande gcloud beta services groups list-members.
Projet
gcloud beta services groups list-members SERVICE GROUP \
--project=PROJECT_ID
Remplacez les éléments suivants :
Dossier
gcloud beta services groups list-members SERVICE GROUP \
--folder=FOLDER_ID
Remplacez les éléments suivants :
Organisation
gcloud beta services groups list-members SERVICE GROUP \
--organization=ORGANIZATION_ID
Remplacez les éléments suivants :
Vous pouvez utiliser d'autres indicateurs pour filtrer et limiter la liste des membres.
Lister les membres d'un groupe de dépendances développé
Vous pouvez lister les membres développés d'un groupe de dépendances de service pour un projet, un dossier ou une organisation à l'aide de la commande gcloud beta services groups list-expanded-members.
Cette commande renvoie une liste aplatie de toutes les dépendances, y compris celles des groupes imbriqués, afin de fournir une liste complète et combinée de toutes les dépendances de service.
Projet
gcloud beta services groups list-expanded-members SERVICE GROUP \
--project=PROJECT_ID
Remplacez les éléments suivants :
Dossier
gcloud beta services groups list-expanded-members SERVICE GROUP \
--folder=FOLDER_ID
Remplacez les éléments suivants :
Organisation
gcloud beta services groups list-expanded-members SERVICE GROUP \
--organization=ORGANIZATION_ID
Remplacez les éléments suivants :
Vous pouvez utiliser d'autres indicateurs pour filtrer et limiter la liste des membres.