Questo documento fornisce informazioni su come utilizzare le chiavi Cloud KMS di Cloud Key Management Service create manualmente per criptare i dischi e altre risorse di archiviazione. Le chiavi gestite in Cloud KMS sono chiamate chiavi di crittografia gestite dal cliente (CMEK).
Puoi utilizzare i CMEK per criptare le risorse Compute Engine, ad esempio dischi, immagini macchina, snapshot istantanei e snapshot standard.
Scopri di più sull'utilizzo delle chiavi di crittografia fornite dal cliente (CSEK) per la crittografia dischi e altre risorse di archiviazione, Crittografia dei dischi con chiavi di crittografia fornite dal cliente.
Scopri di più sulla crittografia del disco.
Prima di iniziare
- Comprendi dischi, immagini, snapshot di dischi permanenti e di macchine virtuali (VM).
- Decidi se eseguire Compute Engine e Cloud KMS nello stesso progetto Google Cloud o in progetti diversi. Per informazioni sugli ID progetto e sui numeri di progetto Google Cloud, consulta Identificazione dei progetti.
- Per il progetto Google Cloud che esegue Cloud KMS, esegui la
seguenti:
-
Enable the Cloud KMS API.
-
-
Se non l'hai ancora fatto, configura l'autenticazione.
Autenticazione è
Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine come segue.
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
KMS_PROJECT_ID
: l'ID del tuo progetto Google Cloud che esegue Cloud KMS (anche se si tratta stesso progetto che esegue Compute Engine)PROJECT_NUMBER
: il numero del progetto (non l'ID progetto Google Cloud) del tuo progetto Google Cloud in esecuzione le risorse Compute EngineNon puoi criptare le risorse esistenti con le CMEK. Puoi criptare solo dischi, immagini e snapshot con CMEK quando li crei.
Quando crei un disco da uno snapshot istantaneo criptato con CMEK, devi specificare la chiave utilizzata per criptare il disco di origine. Non devi specificare la chiave quando lavori con altre risorse criptate con CMEK, come le copie dei dischi e gli snapshot standard.
Non puoi utilizzare le tue chiavi con i dischi SSD locali perché le chiavi sono gestite dall'infrastruttura Google Cloud ed eliminate quando la VM viene arrestata.
Le risorse a livello di regione (dischi) possono essere criptate solo da una chiave in una delle seguenti località Cloud KMS:
- Una chiave nella stessa regione del disco
- Una chiave multiregionale nella stessa località geografica del disco
- Una chiave nella posizione globale.
Ad esempio, un disco nella zona
us-west1-a
può essere criptato da una chiave nella località globale, regioneus-west1
ous
a più regioni.Le risorse globali (come immagini e snapshot) possono essere criptate con chiavi in qualsiasi posizione. Per ulteriori informazioni, vedi Tipi di località per Cloud KMS.
La crittografia di un disco, uno snapshot o un'immagine con una chiave è permanente. Non puoi rimuovere la crittografia dalla risorsa o modificare la chiave utilizzata. L'unico modo per rimuovere la crittografia o modificare le chiavi è creare una copia della risorsa specificando una nuova opzione di crittografia.
La modalità riservata per Hyperdisk Bilanciato eredita le limitazioni dell'hyperdisk esistenti, e prevede le seguenti limitazioni aggiuntive:
- Puoi collegare i dischi Hyperdisk bilanciati in modalità riservata solo alle VM N2D con VM riservate o nodi Google Kubernetes Engine riservati nelle seguenti regioni:
europe-west4
us-central1
us-east4
us-east5
us-south1
us-west4
- Non puoi sospendere o riprendere l'istanza di una macchina virtuale (VM) con collegamento Modalità riservata per i dischi Hyperdisk bilanciati.
- Non puoi utilizzare i pool di archiviazione Hyperdisk con la modalità riservata per Hyperdisk Balanced.
- Non puoi creare immagini personalizzate dalla modalità riservata per i dischi Hyperdisk bilanciati.
- Puoi collegare i dischi Hyperdisk bilanciati in modalità riservata solo alle VM N2D con VM riservate o nodi Google Kubernetes Engine riservati nelle seguenti regioni:
- Nella console Google Cloud, vai alla pagina Dischi.
- Fai clic su Crea disco e inserisci le proprietà del nuovo disco.
- In Crittografia, seleziona Chiave gestita dal cliente.
- Nel menu a discesa, seleziona la chiave Cloud KMS che vuoi utilizzare per criptare questo disco.
- Per creare il disco, fai clic su Crea.
DISK_NAME
: il nome del nuovo discoKMS_PROJECT_ID
: il progetto proprietario Chiave Cloud KMSREGION
: la regione in cui si trova la chiaveKEY_RING
: il nome del keyring che include la chiaveKEY
: il nome della chiave utilizzata per criptare il discoPROJECT_ID
: l'ID del Progetto Google Cloud che esegue Compute EngineZONE
: la zona in cui creare la VMMACHINE_TYPE
: il tipo di macchina, ad esempioc3-standard-4
KMS_PROJECT_ID
: il progetto proprietario della chiave Cloud KMSREGION
: la regione in cui si trova il discoKEY_RING
: il nome del keyring che include la chiaveKEY
: il nome della chiave utilizzata per cripta il discoSOURCE_IMAGE
: l'immagine da utilizzare per la creazione della VM, ad esempioprojects/debian-cloud/global/images/debian-11-bullseye-v20231115
PROJECT_ID
: l'ID del progetto Google Cloud che esegue Compute EngineZONE
: la zona in cui creare il discoSOURCE_IMAGE
: l'immagine da utilizzare durante la creazione del disco, ad esempioprojects/debian-cloud/global/images/debian-11-bullseye-v20231115
DISK_NAME
: un nome per il nuovo discoKMS_PROJECT_ID
: il progetto proprietario Chiave Cloud KMSREGION
: la regione in cui si trova il discoKEY_RING
: il nome del keyring che include la chiaveKEY
: il nome della chiave utilizzata per cripta il discoDISK_TYPE
: il tipo di disco da creare- Nella console Google Cloud, vai alla pagina Dischi.
- Fai clic su Crea disco e inserisci le proprietà del nuovo disco.
- Nella sezione Impostazioni del disco, scegli Hyperdisk equilibrato per il tipo di disco.
- Facoltativo. Modifica le Dimensioni del disco, le IOPS sottoposte a provisioning e Impostazioni di Velocità effettiva sottoposta a provisioning per il disco.
- Nella sezione Crittografia, seleziona Chiave Cloud KMS.
- Nell'elenco delle chiavi, seleziona la chiave Cloud HSM che vuoi utilizzare per criptare questo disco.
- Nella sezione Confidential Computing, seleziona Abilita i servizi di Confidential Computing.
- Per creare il disco, fai clic su Crea.
DISK_NAME
: il nome del nuovo discoKMS_PROJECT_ID
: il progetto proprietario della chiave Cloud HSMREGION
: la regione in cui si trova la chiaveKEY_RING
: il nome del keyring che include la chiaveKEY
: il nome della chiave utilizzata per criptare il discoDISK_TYPE
: il tipo di disco da creare, ad esempiohyperdisk-balanced
PROJECT_ID
: l'ID del progetto Google Cloud in esecuzione su Compute EngineZONE
: la zona in cui creare la VMMACHINE_TYPE
: il tipo di macchina, ad esempion2d-standard-4
KMS_PROJECT_ID
: il progetto proprietario Chiave Cloud HSMREGION
: la regione in cui si trova il discoKEY_RING
: il nome del keyring che include la chiaveKEY
: il nome della chiave utilizzata per criptare il discoSOURCE_IMAGE
: l'immagine che supporta Confidential VM da utilizzare durante la creazione della VM, ad esempioprojects/debian-cloud/global/images/debian-11-bullseye-v20231115
PROJECT_ID
: l'ID del progetto Google Cloud che esegue Compute EngineZONE
: la zona in cui creare il discoSOURCE_IMAGE
: l'immagine che supporta Confidential VM durante la creazione dell'oggetto disco, ad esempioprojects/debian-cloud/global/images/debian-11-bullseye-v20231115
DISK_NAME
: un nome per il nuovo discoKMS_PROJECT_ID
: il progetto proprietario Chiave Cloud HSMREGION
: la regione in cui si trova il discoKEY_RING
: il nome del keyring che include la chiaveKEY
: il nome della chiave utilizzata per cripta il discoDISK_TYPE
: il tipo di disco da creare, per ad esempiohyperdisk-balanced
.- Nella console Google Cloud, vai alla pagina Snapshot.
- Fai clic su Crea snapshot.
- In Disco di origine, scegli il disco di origine per lo snapshot. La viene criptato automaticamente con la stessa chiave utilizzata disco di origine.
Per creare uno snapshot nella posizione predefinita o personalizzata configurata nelle impostazioni dello snapshot, utilizza il comando
gcloud compute snapshots create
.gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk-zone=SOURCE_ZONE \ --source-disk=SOURCE_DISK_NAME \ --snapshot-type=SNAPSHOT_TYPE
-
In alternativa, per eseguire l'override delle impostazioni dello snapshot e creare uno snapshot in una posizione di archiviazione personalizzata, includi
--storage-location
per indicare dove archiviare lo snapshot.gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk-zone=SOURCE_ZONE \ --source-disk=SOURCE_DISK_NAME \ --snapshot-type=SNAPSHOT_TYPE \ --storage-location=STORAGE_LOCATION
Sostituisci quanto segue:
- SNAPSHOT_NAME: un nome per lo snapshot.
- SOURCE_ZONE: la zona del disco di origine.
- SOURCE_DISK_NAME: il nome del volume del disco da cui vuoi creare uno snapshot.
- SNAPSHOT_TYPE: il tipo di snapshot, STANDARD o ARCHIVE.
Se il tipo di snapshot non è specificato, viene creato uno snapshot
STANDARD
. -
STORAGE_LOCATION: Facoltativo: il campo Cloud Storage (più regioni) o la regione di Cloud Storage in cui archiviare lo snapshot. Puoi specificare una sola posizione di archiviazione.
Utilizza il parametro
--storage-location
solo quando vuoi eseguire l'override del località di archiviazione predefinita o personalizzata configurata nello snapshot impostazioni.
-
Per creare uno snapshot nella posizione predefinita o personalizzata configurato nelle impostazioni dello snapshot, effettua una richiesta
POST
Metodosnapshots.insert
:POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/KEY_REGION/keyRings/KEY_RING/cryptoKeys/SNAPSHOT_KEY" }, "snapshotType": "SNAPSHOT_TYPE" }
-
In alternativa, per eseguire l'override delle impostazioni dello snapshot e creare uno snapshot in una posizione di archiviazione personalizzata, effettua una richiesta
POST
snapshots.insert
e includi la proprietàstorageLocations
nella tua richiesta:POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots { "name": "SNAPSHOT_NAME", "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME", "snapshotEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/KEY_REGION/keyRings/KEY_RING/cryptoKeys/SNAPSHOT_KEY" }, "snapshotType": "SNAPSHOT_TYPE", "storageLocations": [ "STORAGE_LOCATION" ], }
- DESTINATION_PROJECT_ID: l'ID del progetto in cui vuoi creare lo snapshot.
- SNAPSHOT_NAME: un nome per lo snapshot.
- SOURCE_PROJECT_ID: l'ID del progetto del disco di origine.
- SOURCE_ZONE: la zona del disco di origine.
- SOURCE_DISK_NAME: il nome del disco da cui vuoi creare uno snapshot.
- KMS_PROJECT_ID: il progetto che contiene la chiave di crittografia archiviata in Cloud Key Management Service.
- KEY_REGION: la regione in cui si trova la chiave Cloud KMS.
- KEY_RING: il nome del keyring che contiene la chiave Cloud KMS.
- SNAPSHOT_KEY: il nome della chiave Cloud KMS utilizzata per criptare il disco di origine.
- SNAPSHOT_TYPE: il tipo di snapshot, STANDARD o ARCHIVE.
Se il tipo di snapshot non è specificato, viene creato uno snapshot
STANDARD
. -
STORAGE_LOCATION: Facoltativo: il campo Cloud Storage (più regioni) o la regione di Cloud Storage in cui archiviare lo snapshot. Puoi specificare una sola località di archiviazione.
Utilizza il parametro
storageLocations
solo se vuoi eseguire l'override della posizione di archiviazione predefinita personalizzata o predefinita configurata nelle impostazioni dello snapshot. - Nella console Google Cloud, vai alla pagina Immagini.
- Fai clic su Crea immagine.
- In Disco di origine, seleziona il disco di cui vuoi creare un'immagine.
- Per Crittografia, seleziona Chiave gestita dal cliente.
- Nel menu a discesa, seleziona la chiave Cloud KMS che vuoi da utilizzare per criptare questa immagine.
- Continua con la procedura di creazione dell'immagine.
IMAGE_NAME
: il nome dell'immagine che stai creandoSOURCE_DISK
: il nome del disco per creare uno snapshot diKMS_PROJECT_ID
: il progetto che contiene Chiave Cloud KMSREGION
: la regione in cui si trova la chiave Cloud KMS che si trova inKEY_RING
: il keyring che contiene Chiave Cloud KMSKEY
: il nome della chiave da utilizzare per criptare il nuovo discoPROJECT_ID
: il progetto per creare l'immagine criptata nelIMAGE_NAME
: il nome dell'immagine che stai creandoKMS_PROJECT_ID
: il progetto che contiene Chiave Cloud KMSREGION
: la regione in cui si trova la chiave Cloud KMS che si trova inKEY_RING
: il keyring che contiene Chiave Cloud KMSKEY
: il nome della chiave utilizzata per cripta il disco di origine- Nella console Google Cloud, vai alla pagina Dischi.
- Fai clic su Crea disco e inserisci le proprietà del nuovo disco.
- Per Tipo di origine, seleziona lo snapshot o l'immagine che vuoi utilizzare.
(Facoltativo) Se vuoi specificare una nuova chiave di crittografia, per Crittografia, specifica il tipo di chiave di crittografia da utilizzare e fornisci le informazioni sulla chiave di crittografia.
Se vuoi rimuovere la chiave di crittografia gestita dal cliente o fornita dal cliente, per Crittografia, utilizza il valore predefinito Chiave di crittografia gestita da Google.
Continua con la procedura di creazione del disco permanente.
DISK_NAME
: il nome del nuovo discoSNAPSHOT_NAME
: il nome dello snapshot criptatoPer utilizzare un'immagine anziché uno snapshot, sostituisci
--source-snapshot SNAPSHOT_NAME
con--image IMAGE_NAME
.KMS_PROJECT_ID
: facoltativo: il progetto che contiene la chiave Cloud KMSREGION
: facoltativo, la regione in cui si trova la chiave Cloud KMSKEY_RING
: facoltativo: il keyring che contiene la Chiave Cloud KMSKEY
: (facoltativo) il nome della chiave Cloud KMS da utilizzare per criptare il nuovo discoPer criptare il nuovo disco, puoi eseguire una delle seguenti operazioni:
- Per specificare una nuova chiave di crittografia gestita dal cliente, utilizza il
--kms-key
flag. - Per utilizzare la chiave predefinita di proprietà di Google e gestita da Google, non includere il flag
--kms-key
.
- Per specificare una nuova chiave di crittografia gestita dal cliente, utilizza il
PROJECT_ID
: il progetto in cui creare il nuovo discoZONE
: la zona in cui creare il nuovo discoDISK_NAME
: il nome del nuovo discoSNAPSHOT_PROJECT_ID
: il progetto che contiene istantaneaSNAPSHOT_NAME
: il nome dello snapshot criptatoPer utilizzare un'immagine anziché uno snapshot, sostituisci
sourceSnapshot
consourceImage
.KMS_PROJECT_ID
: facoltativo, il progetto che contiene la chiave Cloud KMSREGION
: facoltativo, la regione in cui si trova la chiave Cloud KMSKEY_RING
: facoltativo: il keyring che contiene la Chiave Cloud KMSKEY
: (facoltativo) il nome della chiave Cloud KMS da utilizzare per criptare il nuovo discoSe includi
diskEncryptionKey
, il disco è criptato con della chiave Cloud KMS specificata. Se non includidiskEncryptionKey
, il disco viene criptato utilizzando una chiave di proprietà di Google e gestita da Google.Nella console Google Cloud, vai alla pagina Crea un'istanza.
Specifica i dettagli della VM e nella sezione Disco di avvio, fai clic su Cambia. Poi:
- Fai clic su Dischi esistenti.
- Nell'elenco Disco, seleziona un disco esistente da collegare alla VM.
- Fai clic su Seleziona.
Continua con il processo di creazione della VM.
VM_NAME
: il nome della VM che stai creandoDISK_NAME
: il nome del disco criptatoPROJECT_ID
: il progetto in cui creare la nuova VMZONE
: la zona in cui creare la nuova VMDISK_ALIAS
: un nome univoco del dispositivo da utilizzare come disco nella directory/dev/disk/by-id/google-*
della VM che esegue Sistema operativo Linux. Questo nome può essere utilizzato per fare riferimento al disco per operazioni come il montaggio o il ridimensionamento dall'interno dell'istanza. In caso contrario specifica il nome di un dispositivo, la VM sceglie un nome di dispositivo predefinito a cui applicare questo disco, nel formatopersistent-disk-x
, dovex
è un numero assegnati da Compute Engine. Questo campo è valido solo per e volumi Persistent Disk.DISK_NAME
: il nome del disco criptato- Crea uno snapshot del disco criptato.
- Utilizza il nuovo snapshot criptato per creare un nuovo disco permanente.
- Ruota la chiave Cloud KMS.
- Crea uno snapshot del disco criptato.
- Utilizza il nuovo snapshot per creare un nuovo disco con la chiave ruotata nel passaggio precedente.
- Sostituisci il disco collegato alla VM che utilizza la chiave di crittografia precedente.
- Le VM con i dischi collegati non possono avviarsi. Se hai attivato Arresto delle VM alla revoca della chiave, poi VM con dischi collegati che la chiave contribuisce a proteggere l'arresto.
- Non è possibile collegare i dischi alle VM né creare snapshot per queste.
- Non è possibile utilizzare gli snapshot per creare un disco.
- Le immagini non possono essere utilizzate per creare un disco.
- Inizia a creare una VM che includa un disco protetto da una chiave Cloud KMS.
- Apri il menu Networking, dischi, sicurezza, gestione, single-tenancy.
- Espandi la sezione Gestione.
- In Criterio di revoca della chiave di crittografia gestita dal cliente (CMEK), Seleziona Arresta.
- Inizia a creare un nuovo modello di istanza che includa un disco è protetto da una chiave Cloud KMS.
- Apri il menu Networking, dischi, sicurezza, gestione, single tenancy.
- Espandi la sezione Gestione.
- In Criterio di revoca della chiave di crittografia gestita dal cliente (CMEK), Seleziona Arresto.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Ruoli obbligatori
per assicurarti che l'agente di servizio Compute Engine disponga delle risorse necessarie autorizzazioni per proteggere le risorse usando chiavi Cloud KMS, chiedi all'amministratore di concedere all'agente di servizio Compute Engine Ruolo IAM Autore crittografia/decrittografia CryptoKey Cloud KMS (
roles/cloudkms.cryptoKeyEncrypterDecrypter
) per il tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.L'amministratore potrebbe anche essere in grado di fornire all'agente di servizio Compute Engine le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.
Compute Engine Service Agent ha il seguente formato:
service-PROJECT_NUMBER@compute-system.iam.gserviceaccount.com
Puoi utilizzare Google Cloud CLI per assegnare il ruolo:
gcloud projects add-iam-policy-binding KMS_PROJECT_ID \ --member serviceAccount:service-PROJECT_NUMBER@compute-system.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypter
Sostituisci quanto segue:
Specifiche di crittografia
Le chiavi Cloud KMS utilizzate per proteggere i dati in Compute Engine sono chiavi AES-256. Queste chiavi sono chiavi di crittografia della chiave e criptano le chiavi di crittografia dei dati che criptano i dati, non i dati stessi.
I dati sui dischi sono criptati utilizzando chiavi di proprietà e gestite da Google. Per le specifiche relative alla crittografia predefinita in Google Cloud, consulta Crittografia at-rest predefinita nella documentazione Sicurezza.
Con la modalità riservata per Hyperdisk Balanced e Cloud HSM, la chiave di crittografia dei dati (DEK) offre funzionalità aggiuntive con enclave basate su hardware.
Limitazioni
Creazione di chiavi manuale o automatica
Puoi creare le chiavi Cloud KMS manualmente o utilizzare Autokey di Cloud KMS. Autokey semplifica la creazione e la gestione delle chiavi Cloud KMS automatizzando il provisioning e l'assegnazione. Con Autokey, non è necessario eseguire il provisioning anelli, chiavi e account di servizio. Vengono generati invece della domanda come parte della creazione di risorse di Compute Engine. Per ulteriori informazioni, consulta la panoramica di Autokey.
Crea manualmente keyring e chiave
Per il progetto Google Cloud che esegue Cloud KMS, crea un keyring e una chiave come descritto in Creare keyring e chiavi.
Cripta un nuovo Persistent Disk con CMEK
Puoi criptare un nuovo disco permanente fornendo una chiave durante la creazione della VM o del disco.
Console
gcloud
Crea un disco criptato utilizzando Comando
gcloud compute disks create
, e specificare la chiave usando il flag--kms-key
.gcloud compute disks create DISK_NAME \ --kms-key projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY
Sostituisci quanto segue:
REST
Crea una richiesta
POST
Metodoinstances.insert
. Per criptare un disco, utilizza la proprietàdiskEncryptionKey
con il metodo proprietàkmsKeyName
. Ad esempio, puoi criptare un nuovo disco durante la creazione della VM con la tua chiave Cloud KMS utilizzando quanto segue:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "type": "PERSISTENT", "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY" }, "initializeParams": { "sourceImage": "SOURCE_IMAGE" }, "boot": true } ], ... }
Sostituisci quanto segue:
Analogamente, puoi utilizzare Metodo
disks.insert
per creare un nuovo Persistent Disk autonomo e criptarlo con Chiave Cloud KMS:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks?sourceImage=SOURCE_IMAGE { "name": "DISK_NAME", "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY" }, "type": "projects/PROJECT_ID/zones/ZONE/diskTypes/DISK_TYPE" }
Sostituisci quanto segue:
Creare un volume Hyperdisk bilanciato in modalità Confidenziale
Per creare un nuovo Hyperdisk in modalità riservata con Console Google Cloud, Google Cloud CLI o REST.
Console
gcloud
Esegui la crittografia di un nuovo disco con la modalità Confidenziale per Hyperdisk Balanced utilizzando il comando
gcloud compute disks create
. Attiva la modalità riservata con il flag--confidential-compute
e specifica la chiave usando il flag--kms-key
.gcloud compute disks create DISK_NAME \ --type=hyperdisk-balanced \ --kms-key projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY \ --confidential-compute
Sostituisci quanto segue:
REST
Crea una richiesta
POST
Metodoinstances.insert
. Per criptare un disco con la modalità riservata per Hyperdisk Balanced, utilizza la proprietàdiskEncryptionKey
conkmsKeyName
e imposta il flagenableConfidentialCompute
. Ad esempio, puoi criptare un nuovo disco durante la creazione della VM con la tua chiave Cloud HSM utilizzando quanto segue:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "type": "DISK_TYPE", "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY" }, "initializeParams": { "sourceImage": "SOURCE_IMAGE", "enableConfidentialCompute": true }, "boot": true } ], "networkInterfaces": [ { "network": "global/networks/default" } ] }
Sostituisci quanto segue:
Analogamente, puoi utilizzare il metodo
disks.insert
per creare una nuova modalità riservata per Hyperdisk bilanciato:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks?sourceImage=SOURCE_IMAGE { "name": "DISK_NAME", "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY" }, "type": "projects/PROJECT_ID/zones/ZONE/diskTypes/DISK_TYPE", "enableConfidentialCompute": true }
Sostituisci quanto segue:
Crea uno snapshot da un disco criptato con CMEK
Per contribuire a proteggere uno snapshot creato da un disco criptato con CMEK, devi utilizzare la stessa chiave di crittografia utilizzata per criptare il disco.
Non puoi creare uno snapshot che utilizza una chiave CMEK, a meno che anche il disco di origine non utilizzi la chiave CMEK. Inoltre, non puoi convertire i dischi o gli snapshot con crittografia CMEK della crittografia predefinita di Google Cloud, a meno che crea un'immagine disco completamente nuova e un nuovo disco permanente.
Gli snapshot dei dischi criptati con CMEK sono incrementali.
Console
gcloud
Per la crittografia gestita dal cliente, la chiave Cloud KMS utilizzata per criptare il disco viene utilizzato anche per criptare lo snapshot.
Puoi creare lo snapshot nel criterio della località di archiviazione definito dalle tue impostazioni di snapshot o utilizzando una località di archiviazione alternativa di tua scelta. Per ulteriori informazioni, vedi Scegli la località di archiviazione degli snapshot.
REST
Puoi creare lo snapshot nel criterio di località di archiviazione definita dal tuo impostazioni snapshot oppure utilizzando una posizione di archiviazione alternativa di tua scelta. Per ulteriori informazioni, consulta Scegliere la posizione di archiviazione degli snapshot.
Sostituisci quanto segue:
Cripta un'immagine importata con CMEK
Puoi criptare una nuova immagine quando importi un'immagine personalizzata in Compute Engine. Prima di poter importare un'immagine, devi creare e comprimere un file immagine del disco e caricare il file compresso su Cloud Storage.
Console
gcloud
Per importare e criptare un'immagine, utilizza la classe Comando
gcloud compute images create
. Per la crittografia gestita dal cliente, specifica la chiave Cloud KMS per dell'immagine.gcloud compute images create IMAGE_NAME \ --source-disk=SOURCE_DISK \ --kms-key projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY
Sostituisci quanto segue:
REST
Per criptare un'immagine importata, crea una richiesta
POST
al metodoimages.insert
. Specifica l'URI del file compresso, aggiungi la proprietàimageEncryptionKey
alla richiesta di creazione dell'immagine e specifica la chiave per criptare l'immagine nella proprietàkmsKeyName
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images { "rawDisk": { "source": "http://storage.googleapis.com/example-image/example-image.tar.gz" }, "name": "IMAGE_NAME", "sourceType": "RAW", "imageEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY" } }
Sostituisci quanto segue:
Crea un Persistent Disk da uno snapshot criptato con CMEK
Per creare un nuovo Persistent Disk autonomo da uno snapshot criptato, segui questi passaggi: seguenti:
Console
gcloud
Utilizza il comando
gcloud compute disks create
per creare un nuovo disco permanente autonomo da uno snapshot criptato.gcloud compute disks create DISK_NAME \ --source-snapshot SNAPSHOT_NAME \ --kms-key projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY
Sostituisci quanto segue:
REST
Crea una richiesta
POST
Metodocompute.disks.insert
per creare un nuovo Persistent Disk autonomo da uno snapshot criptato. Utilizza la proprietàsourceSnapshot
per specificare l'istantanea.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks { "name": "DISK_NAME", "sourceSnapshot": "projects/SNAPSHOT_PROJECT_ID/global/snapshots/SNAPSHOT_NAME", "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY" } }
Sostituisci quanto segue:
Collegamento di un disco di avvio criptato con CMEK a una nuova VM
Console
gcloud
Per collegare un disco criptato quando crei una nuova VM, utilizza il metodo Comando
gcloud compute instances create
. Utilizza il flag--disk
per specificare il disco di avvio criptato, come mostrato in nell'esempio seguente:gcloud compute instances create VM_NAME \ ... --disk name=DISK_NAME,boot=yes
Sostituisci quanto segue:
REST
Crea una richiesta
POST
al metodocompute.instances.insert
. Utilizza la proprietàdisks
per specificare il disco di avvio criptato, come mostrato nell'esempio seguente:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { ... "disks": [ { "deviceName": "DISK_ALIAS", "source": "projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME" } ] }
Sostituisci quanto segue:
Rimuovere la chiave di crittografia Cloud KMS da un disco permanente
Puoi decriptare i contenuti di un disco criptato e creare un nuovo disco che utilizzi la crittografia predefinita di Google Cloud. Per impostazione predefinita, Google Cloud cripta tutti i dati at-rest.
Dopo aver creato il nuovo disco permanente, viene utilizzata la crittografia predefinita di Google Cloud per proteggere i contenuti del disco. Anche gli snapshot creati da quel disco devono utilizzare la crittografia predefinita.
Ruota la chiave di crittografia di Cloud KMS per un disco
Ruota la chiave utilizzata per criptare il disco creandone uno nuovo che utilizzi una nuova versione della chiave Cloud KMS. La rotazione delle chiavi è una best practice per rispettino le prassi di sicurezza standardizzate. Per ruotare le chiavi, procedi nel seguente modo:
Quando crei il nuovo disco, viene utilizzata la nuova versione della chiave la crittografia. Tutti gli snapshot creati da questo disco utilizzano la versione più recente della chiave principale.
Quando ruoti una chiave, i dati criptati con versioni precedenti della chiave non vengono automaticamente ricriptata. Per ulteriori informazioni, vedi Ricrittografia dei dati. La rotazione di una chiave non disattiva o disattiva automaticamente elimina una versione esistente della chiave.
Impatto della disattivazione o dell'eliminazione dei CMEK
Disabilitata o eliminazione una chiave di crittografia ha i seguenti effetti sulle seguenti risorse che la chiave aiuta a proteggere:
Se disattivi il tasto, puoi invertire gli effetti precedenti abilitando la chiave. Se elimini la chiave, non puoi annullare gli effetti precedenti.
Configura l'arresto delle VM alla revoca della chiave Cloud KMS
Puoi configurare la VM in modo che si arresti automaticamente quando revochi la Chiave Cloud KMS che aiuta a proteggere un Persistent Disk collegato a la VM. Puoi revocarlo tramite disattivazione o l'eliminazione li annotino. Con questa impostazione abilitata, la VM si arresta entro 7 ore dalla chiave revoca.
Se riattivi la chiave, puoi riavviare la VM con il disco collegato che la chiave contribuisce a proteggere. La VM non si riavvia automaticamente dopo aver attivato la chiave.
Console
Per configurare l'arresto di una VM quando viene revocata una chiave Cloud KMS, esegui la seguenti:
gcloud
Utilizza la
gcloud compute instances create
per creare una VM includi--key-revocation-action-type=stop
.gcloud compute instances create
VM_NAME
\ --imageIMAGE
\ --key-revocation-action-type=stopREST
Utilizza il metodo
instances.insert
per creare una VM e imposta la proprietà"keyRevocationActionType"
su"STOP"
. L'esempio seguente crea la VM da un'immagine pubblica.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name": "
VM_NAME
", "disks": [ { "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot": true } ], "keyRevocationActionType": "STOP" }In alternativa, puoi configurare modello di istanza per creare VM che si arrestano al momento della revoca della chiave Google Cloud CLI o REST.
Console
Puoi utilizzare un modello di istanza per creare VM che si arrestano quando un La chiave Cloud KMS è stata revocata.
gcloud
Crea un modello di istanza utilizzando Comando
gcloud compute instance-templates create
, e includi--key-revocation-action-type=stop
.gcloud compute instance-templates create
INSTANCE_TEMPLATE_NAME
\ --key-revocation-action-type=stopREST
Crea una richiesta POST al metodo
instanceTemplates.insert
. Nel corpo della richiesta, devi definire esplicitamente tutti i campi di configurazione obbligatori. Se vuoi che le VM create da questo modello all'arresto alla revoca della chiave, specifica"keyRevocationActionType":"STOP"
. Ad esempio, un modello di istanza con i campi obbligatori minimi che creerà VM che si arrestano in caso di revoca della chiave ha il seguente aspetto:POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instanceTemplates { "name": "example-template", "properties": { "machineType": "e2-standard-4", "networkInterfaces": [ { "network": "global/networks/default", "accessConfigs": [ { "name": "external-IP", "type": "ONE_TO_ONE_NAT" } ] } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-11" } } ], "keyRevocationActionType": "STOP" } }Dopo aver creato una VM configurata per l'arresto in caso di revoca di Cloud KMS, crea e collega un disco permanente criptato con una chiave Cloud KMS.
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-10-24 UTC.
-