Cette page vous explique comment afficher les ressources Google Cloud de votre organisation qui sont protégées par vos clés Cloud KMS. Le suivi de l'utilisation des clés n'est disponible que pour les ressources de l'organisation.
Vous pouvez afficher des informations sur les ressources que vos clés protègent à deux niveaux :
- Les informations du récapitulatif de l'utilisation des clés pour chaque clé incluent le nombre de ressources protégées, de projets et de produits Google Cloud uniques qui utilisent la clé. Ce niveau de détail est disponible pour toute personne disposant du rôle Lecteur Cloud KMS sur la clé.
- Les informations Détails de l'utilisation de la clé identifient les ressources protégées par cette clé et qui en dépendent. Ce niveau de détail est privilégié et n'est disponible que pour les comptes disposant du rôle Lecteur de ressources protégées Cloud KMS dans l'organisation.
Avant de commencer
Cette page suppose que vous utilisez Cloud KMS dans uneGoogle Cloud ressource d'organisation.
Demandez à l'administrateur de votre organisation d'attribuer à votre compte de service Cloud KMS le rôle Agent de service d'organisation Cloud KMS (
roles/cloudkms.orgServiceAgent
) sur la ressource de votre organisation. Ce rôle n'est pas disponible dans la console Google Cloud . Vous devez donc utiliser gcloud CLI pour l'attribuer :gcloud CLI
gcloud organizations add-iam-policy-binding ORGANIZATION_ID \ --member=serviceAccount:service-org-ORGANIZATION_ID@gcp-sa-cloudkms.iam.gserviceaccount.com \ --role=roles/cloudkms.orgServiceAgent
Remplacez
ORGANIZATION_ID
par l'ID numérique de votre organisation.Attribuez le rôle Lecteur Cloud KMS (
roles/cloudkms.viewer
) à toute personne ayant besoin de consulter les récapitulatifs d'utilisation des clés. Pour en savoir plus sur l'attribution de rôles, consultez Gérer les accès.Attribuez le rôle Lecteur de ressources protégées Cloud KMS (
roles/cloudkms.protectedResourcesViewer
) sur la ressource de votre organisation à toute personne ayant besoin de consulter les détails de l'utilisation des clés. Ce rôle n'est pas disponible dans la console Google Cloud . Vous devez donc utiliser gcloud CLI pour l'attribuer :gcloud CLI
gcloud organizations add-iam-policy-binding ORGANIZATION_ID \ --member=user:USER_EMAIL \ --role=roles/cloudkms.protectedResourcesViewer
Remplacez les éléments suivants :
ORGANIZATION_ID
: ID numérique de votre organisation.USER_EMAIL
: adresse e-mail de l'utilisateur.
Activez l'API Cloud KMS Inventory.
Afficher les informations sur l'utilisation des clés
Console
Dans la console Google Cloud , accédez à la page Inventaire des clés.
Facultatif : Pour filtrer la liste des clés, saisissez vos termes de recherche dans la zone Filtrer filter_list, puis appuyez sur Entrée. Par exemple, vous pouvez filtrer par emplacement, trousseau de clés, état ou d'autres propriétés des clés.
Cliquez sur le nom de la clé pour laquelle vous souhaitez afficher des informations sur l'utilisation.
Cliquez sur l'onglet Suivi de l'utilisation.
Facultatif : Pour filtrer la liste des ressources protégées, saisissez vos termes de recherche dans la zone Filtrer filter_list, puis appuyez sur Entrée.
Un récapitulatif et des détails sur l'utilisation de la clé s'affichent pour la clé sélectionnée.
gcloud CLI
Pour utiliser Cloud KMS sur la ligne de commande, commencez par installer ou mettre à jour Google Cloud CLI.
Pour afficher le récapitulatif de l'utilisation des clés, utilisez la méthode get-protected-resources-summary
:
gcloud kms inventory get-protected-resources-summary \ --keyname projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet contenant le trousseau de clés.LOCATION
: emplacement Cloud KMS du trousseau de clés.KEY_RING
: nom du trousseau de clés qui inclut la cléKEY_NAME
: nom de la clé pour laquelle vous souhaitez afficher le récapitulatif de l'utilisation.
Pour afficher les détails de l'utilisation d'une clé, utilisez la méthode search-protected-resources
:
gcloud kms inventory search-protected-resources \ --keyname projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME \ --scope=organizations/ORGANIZATION_ID
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet contenant le trousseau de clés.LOCATION
: emplacement Cloud KMS du trousseau de clés.KEY_RING
: nom du trousseau de clés qui inclut la cléKEY_NAME
: nom de la clé pour laquelle vous souhaitez afficher les détails d'utilisation.ORGANIZATION_ID
: ID numérique de votre organisation.
API
Ces exemples utilisent curl comme client HTTP pour démontrer l'utilisation de l'API. Pour en savoir plus sur le contrôle des accès, consultez la page Accéder à l'API Cloud KMS.
Pour afficher le récapitulatif de l'utilisation des clés, utilisez la méthode cryptoKeys.getProtectedResourcesSummary
:
curl "https://kmsinventory.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/protectedResourcesSummary"
--request "GET" \
--header "x-goog-user-project: CALLING_PROJECT_ID"
--header "Content-Type: application/json" \
--header "Authorization: Bearer TOKEN"
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet contenant le trousseau de clés.LOCATION
: emplacement Cloud KMS du trousseau de clés.KEY_RING
: nom du trousseau de clés qui inclut la cléKEY_NAME
: nom de la clé pour laquelle vous souhaitez afficher le récapitulatif de l'utilisation.CALLING_PROJECT_ID
: ID du projet à partir duquel vous appelez l'API KMS Inventory.
Pour afficher les détails de l'utilisation d'une clé, utilisez la méthode protectedResources.search
:
curl "https://kmsinventory.googleapis.com/v1/organizations/ORGANIZATION_ID/protectedResources:search?crypto_key=projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"
--request "GET" \
--header "x-goog-user-project: CALLING_PROJECT_ID"
--header "Content-Type: application/json" \
--header "Authorization: Bearer TOKEN"
Remplacez les éléments suivants :
ORGANIZATION_ID
: ID numérique de votre organisation.PROJECT_ID
: ID du projet contenant le trousseau de clés.LOCATION
: emplacement Cloud KMS du trousseau de clés.KEY_RING
: nom du trousseau de clés qui inclut la cléKEY_NAME
: nom de la clé pour laquelle vous souhaitez afficher les détails d'utilisation.CALLING_PROJECT_ID
: ID du projet à partir duquel vous appelez l'API KMS Inventory.
Détails de l'utilisation de la clé
Les détails d'utilisation des ressources protégées chiffrées avec la clé sélectionnée incluent les éléments suivants :
- Nom : nom de la ressource Google Cloud protégée par la clé sélectionnée.
- Projet : nom du projet contenant la ressource protégée.
- Version de la clé de chiffrement : version de la clé utilisée pour chiffrer cette ressource. Certaines ressources protégées n'indiquent pas la version de la clé cryptographique.
- Produit Cloud : produit Google Cloud associé à cette ressource.
- Type de ressource : type de ressource protégée (par exemple, "Bucket" pour Cloud Storage ou "Disque" pour Compute Engine).
- Location (Emplacement) : région Google Cloud associée à la ressource.
- Date de création : heure à laquelle la ressource a été créée.
- Labels : ensemble de paires clé-valeur associées à la ressource.
Lister les versions de clé qui protègent une ressource
Si une ressource est protégée par plusieurs versions de clé, il est possible que vous ne puissiez pas voir la liste complète des versions de clé dans l'onglet Suivi de l'utilisation.
Pour lister les versions de clé qui protègent une ressource, utilisez gcloud CLI pour exécuter la commande suivante :
gcloud beta kms inventory search-protected-resources \
--keyname=KEY_NAME \
--scope=organizations/ORGANIZATION_ID \
--filter="name:RESOURCE_NAME" \
--flatten="cryptoKeyVersions" \
--format="value(cryptoKeyVersions)"
Remplacez les éléments suivants :
KEY_NAME
: nom de la clé pour laquelle vous souhaitez lister les versions.ORGANIZATION_ID
: ID numérique de votre organisation.RESOURCE_NAME
: nom de la ressource pour laquelle vous souhaitez lister les versions de clé.
Limites
Lorsque vous utilisez le suivi de l'utilisation des clés, tenez compte des points suivants :
- Le suivi de l'utilisation des clés n'est disponible que pour les clés CMEK. Si vous utilisez une version de clé dans vos applications à l'intérieur ou à l'extérieur de Google Cloud, cette utilisation n'est pas incluse dans l'onglet Suivi de l'utilisation.
- Certaines ressources CMEK ne sont pas suivies. Pour les types de ressources qui ne figurent pas dans la liste Types de ressources suivis, les informations sur l'utilisation des clés ne sont pas incluses dans les détails de l'utilisation des clés. Par exemple, l'utilisation de clés par Datastream pour chiffrer les ressources
ConnectionProfile
(datastream.googleapis.com/ConnectionProfile
) n'est pas affichée dans l'onglet Suivi de l'utilisation. - Les données peuvent être retardées. Par exemple, si vous créez une ressource protégée, la ressource protégée et la version de clé associée ne sont pas immédiatement ajoutées à l'onglet Suivi de l'utilisation.
- Les données d'utilisation des clés Cloud Storage sont soumises aux limites supplémentaires suivantes :
- Les données d'utilisation des clés sont agrégées des objets aux buckets. Les noms des objets ne sont pas affichés. Un bucket est indiqué comme utilisant une clé s'il contient au moins un objet utilisant cette clé.
- Il est possible que le suivi de l'utilisation des clés ne soit pas complet pour les buckets contenant des objets protégés avec plus de 4 000 versions de clés uniques.
- Les informations de suivi de l'utilisation des clés sont fournies à titre informatif uniquement. Faites votre propre diligence raisonnable en utilisant d'autres sources avant d'apporter des modifications susceptibles d'entraîner des pannes ou une perte de données. Ne désactivez ni ne détruisez les versions de clés en vous basant uniquement sur les informations de suivi de l'utilisation des clés.
Types de ressources suivies
Les types de ressources suivants sont acceptés :
Service | Ressource |
---|---|
AI Applications | discoveryengine.googleapis.com/DataStore |
AlloyDB pour PostgreSQL | alloydb.googleapis.com/Backup |
AlloyDB pour PostgreSQL | alloydb.googleapis.com/Cluster |
Hub d'API Apigee | apihub.googleapis.com/ApiHubInstance |
Artifact Registry | artifactregistry.googleapis.com/Repository |
BigQuery | bigquery.googleapis.com/Dataset |
BigQuery | bigquery.googleapis.com/Model |
BigQuery | bigquery.googleapis.com/Table |
BigQuery | bigquerydatatransfer.googleapis.com/TransferConfig |
Bigtable | bigtableadmin.googleapis.com/Backup |
Bigtable | bigtableadmin.googleapis.com/Cluster |
Bigtable | bigtableadmin.googleapis.com/Table |
Cloud Composer | composer.googleapis.com/Environment |
Cloud Data Fusion | datafusion.googleapis.com/Instance |
API Cloud Healthcare | healthcare.googleapis.com/Dataset |
Cloud Logging | logging.googleapis.com/LogBucket |
Cloud Run | run.googleapis.com/Revision |
Fonctions Cloud Run | cloudfunctions.googleapis.com/CloudFunction |
Fonctions Cloud Run | cloudfunctions.googleapis.com/Function |
Cloud SQL | sqladmin.googleapis.com/BackupRun |
Cloud SQL | sqladmin.googleapis.com/Instance |
Cloud Storage | storage.googleapis.com/Bucket |
Cloud Workstations | workstations.googleapis.com/Workstation |
Cloud Workstations | workstations.googleapis.com/WorkstationConfig |
Compute Engine | compute.googleapis.com/Disk |
Compute Engine | compute.googleapis.com/Image |
Compute Engine | compute.googleapis.com/MachineImage |
Compute Engine | compute.googleapis.com/Snapshot |
Database Migration Service | datamigration.googleapis.com/MigrationJob |
Database Migration Service | datamigration.googleapis.com/ConnectionProfile |
Dataflow | dataflow.googleapis.com/Job |
Dataproc | dataproc.googleapis.com/Cluster |
Dataproc | dataproc.googleapis.com/Batch |
Dataproc Metastore | metastore.googleapis.com/Service |
Datastream | datastream.googleapis.com/Stream |
Document AI | documentai.googleapis.com/HumanReviewConfig |
Document AI | documentai.googleapis.com/Processor |
Document AI | documentai.googleapis.com/ProcessorVersion |
Filestore | file.googleapis.com/Instance |
Filestore | file.googleapis.com/Backup |
Firestore | firestore.googleapis.com/Database |
Firestore | datastore.googleapis.com/Database |
Google Agentspace Enterprise | discoveryengine.googleapis.com/DataStore |
Google Kubernetes Engine | container.googleapis.com/Cluster |
Looker (Google Cloud Core) | looker.googleapis.com/Instance |
Memorystore pour Redis | redis.googleapis.com/Instance |
Migrate to Virtual Machines | vmmigration.googleapis.com/Source |
Pub/Sub | pubsub.googleapis.com/Topic |
Secret Manager | secretmanager.googleapis.com/Secret |
Secret Manager | secretmanager.googleapis.com/SecretVersion |
Secure Source Manager | securesourcemanager.googleapis.com/Instance |
Spanner | spanner.googleapis.com/Database |
Vertex AI | aiplatform.googleapis.com/Dataset |
Vertex AI | aiplatform.googleapis.com/Featurestore |
Vertex AI | aiplatform.googleapis.com/Tensorboard |
Vertex AI | aiplatform.googleapis.com/BatchPredictionJob |
Vertex AI | aiplatform.googleapis.com/CustomJob |
Vertex AI | aiplatform.googleapis.com/Endpoint |
Vertex AI | aiplatform.googleapis.com/Model |
Vertex AI | aiplatform.googleapis.com/TrainingPipeline |
Vertex AI | aiplatform.googleapis.com/PipelineJob |
Vertex AI | aiplatform.googleapis.com/MetadataStore |
Instances Vertex AI Workbench | notebooks.googleapis.com/Instance |
Workflows | workflows.googleapis.com/Workflow |