Visualizza l'utilizzo delle chiavi

Questa pagina mostra come visualizzare le Google Cloud risorse all'interno della tua organizzazione protette dalle tue chiavi Cloud KMS. Il monitoraggio dell'utilizzo delle chiavi è disponibile solo all'interno delle risorse dell'organizzazione.

Puoi visualizzare le informazioni sulle risorse protette dalle tue chiavi su due livelli:

  • Le informazioni del riepilogo dell'utilizzo delle chiavi per ogni chiave includono il numero di risorse protette, progetti e prodotti Google Cloud unici che utilizzano la chiave. Questo livello di dettaglio è disponibile per chiunque disponga del ruolo visualizzatore Cloud KMS per la chiave.
  • Le informazioni sui dettagli di utilizzo della chiave identificano le risorse protette da questa chiave e che dipendono da essa. Questo livello di dettaglio è riservato ed è disponibile solo per gli account con il ruolo Cloud KMS Protected Resources Viewer nell'organizzazione.

Prima di iniziare

In questa pagina si presuppone che tu stia utilizzando Cloud KMS all'interno di una Google Cloud risorsa dell'organizzazione.

  1. Chiedi all'amministratore dell'organizzazione di concedere al tuo account di servizio Cloud KMS il ruolo Cloud KMS Organization Service Agent (cloudkms.orgServiceAgent) per la risorsa dell'organizzazione. Questo ruolo non è disponibile nella Google Cloud console, quindi devi utilizzare gcloud CLI per concederlo:

    Interfaccia a riga di comando gcloud

    gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
        --member=serviceAccount:service-org-ORGANIZATION_ID@gcp-sa-cloudkms.iam.gserviceaccount.com \
        --role=roles/cloudkms.orgServiceAgent
    

    Sostituisci ORGANIZATION_ID con l'ID numerico della tua organizzazione.

  2. Concedi il ruolo Cloud KMS Viewer (roles/cloudkms.viewer) a chiunque necessiti di visualizzare i riepiloghi dell'utilizzo delle chiavi. Per informazioni sulla concessione dei ruoli, consulta Gestire l'accesso.

  3. Concedi il ruolo Cloud KMS Protected Resources Viewer (roles/cloudkms.protectedResourcesViewer) sulla risorsa della tua organizzazione a chiunque debba visualizzare i dettagli sull'utilizzo delle chiavi. Questo ruolo non è disponibile nella Google Cloud console, quindi devi utilizzare gcloud CLI per concederlo:

    Interfaccia a riga di comando gcloud

    gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
        --member=user:USER_EMAIL \
        --role=roles/cloudkms.protectedResourcesViewer
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID: l'ID numerico della tua organizzazione.
    • USER_EMAIL: l'indirizzo email dell'utente.
  4. Attiva l'API Cloud KMS Inventory.

    Abilitare l'API

Visualizzare le informazioni sull'utilizzo delle chiavi

Console

  1. Nella Google Cloud console, vai alla pagina Inventario chiavi.

    Vai a Inventario chiavi

  2. (Facoltativo) Per filtrare l'elenco di chiavi, inserisci i termini di ricerca nella casella Filtro filter_list e premi Invio. Ad esempio, puoi filtrare per località, gruppo di chiavi, stato o altre proprietà delle chiavi.

  3. Fai clic sul nome della chiave per cui vuoi visualizzare le informazioni sull'utilizzo.

  4. Fai clic sulla scheda Monitoraggio dell'utilizzo.

  5. (Facoltativo) Per filtrare l'elenco delle risorse protette, inserisci i termini di ricerca nella casella filter_list Filtro e premi Invio.

Vengono visualizzati il riepilogo e i dettagli dell'utilizzo della chiave selezionata.

Interfaccia a riga di comando gcloud

Per utilizzare Cloud KMS sulla riga di comando, esegui l'installazione o l'upgrade alla versione più recente di Google Cloud CLI.

Per visualizzare il riepilogo dell'utilizzo delle chiavi, utilizza il metodo get-protected-resources-summary:

gcloud kms inventory get-protected-resources-summary \
    --keyname  projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME \

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene la chiave automatizzata.
  • LOCATION: la posizione di Cloud KMS della raccolta di chiavi.
  • KEY_RING: il nome del mazzo di chiavi che contiene la chiave.
  • KEY_NAME: il nome della chiave per cui vuoi visualizzare il riepilogo dell'utilizzo.

Per visualizzare i dettagli sull'utilizzo delle chiavi, utilizza il metodo 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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene la chiave automatizzata.
  • LOCATION: la posizione di Cloud KMS della raccolta di chiavi.
  • KEY_RING: il nome del mazzo di chiavi che contiene la chiave.
  • KEY_NAME: il nome della chiave per cui vuoi visualizzare i dettagli sull'utilizzo.
  • ORGANIZATION_ID: l'ID numerico della tua organizzazione.

API

Questi esempi utilizzano curl come client HTTP per dimostrare l'utilizzo dell'API. Per ulteriori informazioni sul controllo dell'accesso, consulta Accedere all'API Cloud KMS.

Per visualizzare il riepilogo dell'utilizzo delle chiavi, utilizza il metodo 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"

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene la chiave automatizzata.
  • LOCATION: la posizione di Cloud KMS della raccolta di chiavi.
  • KEY_RING: il nome del mazzo di chiavi che contiene la chiave.
  • KEY_NAME: il nome della chiave per cui vuoi visualizzare il riepilogo dell'utilizzo.
  • CALLING_PROJECT_ID: l'ID del progetto da cui stai chiamando l'API KMS Inventory.

Per visualizzare i dettagli sull'utilizzo delle chiavi, utilizza il metodo 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"

Sostituisci quanto segue:

  • ORGANIZATION_ID: l'ID numerico della tua organizzazione.
  • PROJECT_ID: l'ID del progetto che contiene la chiave automatizzata.
  • LOCATION: la posizione di Cloud KMS della raccolta di chiavi.
  • KEY_RING: il nome del mazzo di chiavi che contiene la chiave.
  • KEY_NAME: il nome della chiave per cui vuoi visualizzare i dettagli sull'utilizzo.
  • CALLING_PROJECT_ID: l'ID del progetto da cui stai chiamando l'API KMS Inventory.

Dettagli sull'utilizzo della chiave

I dettagli sull'utilizzo delle risorse protette criptate con la chiave selezionata includono quanto segue:

  • Nome: il nome della Google Cloud risorsa protetta dalla chiave selezionata.
  • Project (Progetto): il nome del progetto che contiene la risorsa protetta.
  • Versione chiave crittografia: la versione della chiave utilizzata per criptare questa risorsa. Alcune risorse protette non riportano la versione della chiave di crittografia.
  • Prodotto Cloud: il Google Cloud prodotto associato a questa risorsa.
  • Tipo di risorsa: il tipo di risorsa protetta, ad esempio Bucket (Cloud Storage) o Disco (Compute Engine).
  • Località: la Google Cloud regione associata alla risorsa.
  • Data di creazione: l'ora in cui è stata creata la risorsa.
  • Etichette: un insieme di coppie chiave-valore associate alla risorsa.

Elenca le versioni delle chiavi che proteggono una risorsa

Se una risorsa è protetta da più versioni di chiavi, potresti non essere in grado di visualizzare l'elenco completo delle versioni di chiavi nella scheda Monitoraggio dell'utilizzo.

Per elencare le versioni delle chiavi che proteggono una risorsa, utilizza gcloud CLI per eseguire il seguente comando:

gcloud beta kms inventory search-protected-resources \
  --keyname=KEY_NAME \
  --scope=organizations/ORGANIZATION_ID \
  --filter="name:RESOURCE_NAME" \
  --flatten="cryptoKeyVersions" \
  --format="value(cryptoKeyVersions)"

Sostituisci quanto segue:

  • KEY_NAME: il nome della chiave per cui vuoi elencare le versioni.
  • ORGANIZATION_ID: l'ID numerico della tua organizzazione.
  • RESOURCE_NAME: il nome della risorsa per la quale vuoi elencare le versioni delle chiavi.

Limitazioni

Quando utilizzi il monitoraggio dell'utilizzo delle chiavi, tieni presente quanto segue:

  • Il monitoraggio dell'utilizzo delle chiavi è disponibile solo per l'utilizzo delle chiavi CMEK. Se utilizzi una versione della chiave nelle tue applicazioni all'interno o all'esterno di Google Cloud, questo utilizzo non è incluso nella scheda Monitoraggio dell'utilizzo.
  • Alcune risorse CMEK non vengono monitorate. Per i tipi di risorse non elencati in Tipi di risorse monitorate, le informazioni sull'utilizzo delle chiavi potrebbero non essere incluse nei dettagli sull'utilizzo delle chiavi. Ad esempio, l'utilizzo delle chiavi da parte di Datastream per criptare le risorse ConnectionProfile (datastream.googleapis.com/ConnectionProfile) non viene mostrato nella scheda Monitoraggio dell'utilizzo.
  • I dati potrebbero subire ritardi. Ad esempio, se crei una nuova risorsa protetta, la risorsa protetta e la versione della chiave associata non vengono aggiunte immediatamente alla scheda Monitoraggio dell'utilizzo.
  • I dati sull'utilizzo delle chiavi di Cloud Storage sono soggetti alle seguenti limitazioni aggiuntive:
    • I dati sull'utilizzo delle chiavi vengono aggregati dagli oggetti ai bucket. I nomi degli oggetti non vengono visualizzati. Un bucket viene mostrato come che utilizza una chiave se contiene almeno un oggetto che utilizza la chiave.
    • Il monitoraggio dell'utilizzo delle chiavi potrebbe non essere completo per i bucket che contengono oggetti protetti con oltre 4000 versioni di chiavi univoche.
  • I dettagli del monitoraggio dell'utilizzo delle chiavi sono solo a scopo informativo. Esegui la tua due diligence utilizzando altre fonti prima di apportare modifiche che potrebbero comportare interruzioni o perdita di dati. Non disattivare o distruggere le versioni delle chiavi in base solo alle informazioni di monitoraggio dell'utilizzo delle chiavi.

Tipi di risorse monitorate

Sono supportati i seguenti tipi di risorse:

    Servizio Risorsa
    AI Applications discoveryengine.googleapis.com/DataStore
    AlloyDB per PostgreSQL alloydb.googleapis.com/Backup
    AlloyDB per PostgreSQL alloydb.googleapis.com/Cluster
    Hub 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
    Cloud Run Functions cloudfunctions.googleapis.com/CloudFunction
    Cloud Run Functions 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 for 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
    Istanze Vertex AI Workbench notebooks.googleapis.com/Instance
    Workflow workflows.googleapis.com/Workflow