Per impostazione predefinita, Filestore cripta i contenuti inattivi dei clienti. Filestore gestisce la crittografia per conto tuo senza che tu debba fare altro. Questa opzione è denominata crittografia predefinita di Google.
Se vuoi controllare le tue chiavi di crittografia, puoi utilizzare le chiavi di crittografia gestite dal cliente (CMEK) in Cloud KMS con servizi integrati con CMEK, incluso Filestore. L'utilizzo delle chiavi Cloud KMS ti consente di controllare il livello di protezione, la località, la pianificazione della rotazione, le autorizzazioni di utilizzo e di accesso e i limiti crittografici. Con Cloud KMS puoi inoltre visualizzare gli audit log e controllare i cicli di vita delle chiavi. Invece di Google, sei tu ad avere la proprietà e la gestione delle chiavi di crittografia della chiave (KEK) simmetriche che proteggono i tuoi dati. Puoi controllare e gestire queste chiavi in Cloud KMS.
Dopo aver configurato le risorse con le CMEK, l'esperienza di accesso alle risorse Filestore è simile all'utilizzo della crittografia predefinita di Google. Per saperne di più sulle opzioni di crittografia, vedi Chiavi di crittografia gestite dal cliente (CMEK).
Le chiavi CMEK sono supportate per l'utilizzo con le istanze e i backup Filestore.
Opzioni CMEK
Filestore supporta le chiavi CMEK archiviate come chiavi software, come chiavi hardware in un cluster HSM e come chiavi archiviate esternamente in Cloud External Key Manager (Cloud EKM).
Per ulteriori informazioni, consulta Cloud Key Management Service.
Interruzioni del servizio EKM
Per progettazione, le chiavi esterne sono gestite da una terza parte; in queste circostanze,Google Cloud non è responsabile della disponibilità delle chiavi.
Se Cloud Key Management Service (Cloud KMS)
riceve una notifica da External Key Manager (EKM)
che indica che una chiave esterna non è raggiungibile, gli utenti ricevono una notifica ekm_key_unreachable_detected. Per un massimo di un'ora, gli utenti hanno accesso limitato alle operazioni sull'istanza. Dopo un'ora, se lo stato della chiave rimane invariato, si applicano le seguenti azioni:
- La chiave è disattivata.
- Tutte le operazioni di crittografia e decrittografia non riescono.
- L'istanza Filestore è sospesa.
In alcuni casi, ad esempio un evento imprevisto come il riavvio di una VM, l'accesso all'istanza potrebbe essere interrotto prima di un'ora.
Le notifiche relative alle chiavi non raggiungibili possono essere visualizzate nella pagina dei dettagli dell'istanza Filestore:
Vai alla pagina Istanze di Filestore
Gli utenti ricevono anche notifiche ekm_key_unreachable_detected su una delle seguenti operazioni se eseguite entro un'ora dalla prima notifica segnalata:
- Ripristinare uno snapshot
- Crea un backup dell'istanza
- Eliminare un backup
- Ripristinare un'istanza da un backup
- Aggiornare o applicare una patch a un'istanza
Livelli supportati
La tabella seguente mostra i livelli di servizio di Filestore che supportano le CMEK:
| Livello | Supporto CMEK |
|---|---|
| HDD base | No |
| SSD base | No |
| A livello di zona | Sì |
| Regionale | Sì |
| Aziende | Sì |
Crea una chiave automatizzata e una chiave da utilizzare con l'istanza
Il keyring e la chiave possono trovarsi in un progetto diverso dall'istanza Filestore, ma devono trovarsi nella stessa località. Se hai già una chiave automatizzata e una chiave Cloud KMS che vuoi utilizzare con Filestore, passa alla sezione successiva. In caso contrario, segui le istruzioni riportate in Creazione di chiavi di crittografia simmetriche per creare un portachiavi e una chiave.
Concedi l'autorizzazione di accesso alla chiave al account di servizio Filestore
Prima di poter creare un'istanza Filestore che utilizza una CMEK, il
service account Filestore deve avere il ruolo Autore crittografia/decrittografia
CryptoKey Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter).
Un account di servizio Filestore viene creato la prima volta che crei un'istanza Filestore nel progetto. Se non hai ancora un account di servizio Filestore, esegui questo comando:
services identity creategcloud beta services identity create --service=file.googleapis.com --project=INSTANCE_PROJECT_NUMBER_OR_IDSostituisci INSTANCE_PROJECT_NUMBER_OR_ID con il numero o l'ID del progetto in cui vuoi creare l'istanza Filestore.
Assegna al account di servizio Filestore il ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS eseguendo il comando
projects add-iam-policy-binding:gcloud projects add-iam-policy-binding KMS_PROJECT_NUMBER_OR_ID \ --member serviceAccount:service-INSTANCE_PROJECT_NUMBER@cloud-filer.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypterSostituisci quanto segue:
- KMS_PROJECT_NUMBER_OR_ID con il numero o l'ID del progetto che contiene la chiave Cloud KMS che vuoi utilizzare.
- INSTANCE_PROJECT_NUMBER con il numero di progetto (non l'ID progetto) del progetto in cui vuoi creare l'istanza Filestore.
Crea un'istanza che utilizzi la chiave Cloud KMS
Console Google Cloud
Per creare un'istanza che utilizzi la chiave Cloud KMS per la crittografia dei dati:
Nella console Google Cloud , vai alla pagina Istanze Filestore.
Fai clic su Crea istanza.
Seleziona un livello di istanza che supporti le CMEK e compila tutti gli altri campi obbligatori e facoltativi come faresti normalmente.
Fai clic su Mostra opzioni avanzate.
Seleziona la casella di controllo Utilizza una chiave di crittografia gestita dal cliente (CMEK).
Seleziona la chiave Cloud KMS che vuoi utilizzare per l'istanza.
Fai clic su Crea.
gcloud CLI
Per creare un'istanza Filestore che utilizza la chiave Cloud KMS per la crittografia dei dati, specifica il flag --kms-key nel comando filestore instances create:
gcloud filestore instances create nfs-server \
--tier=<var>TIER</var> \
--location=us-central1 \
--file-share=name="vol1",capacity=1TiB \
--network=name="default" \
--kms-key=KMS_KEY
Sostituisci quanto segue:
- TIER con un livello Filestore che supporta le chiavi CMEK.
- KMS_KEY con il nome completo della chiave Cloud KMS che vuoi utilizzare. In alternativa, puoi specificare ogni argomento separatamente nel formato:
--kms-key=KMS_KEY : --kms-keyring=KEY_RING --kms-location=KMS_REGION --kms-project=KMS_PROJECT_NUMBER_OR_ID
Sostituisci quanto segue:
- KMS_KEY con il nome della chiave Cloud KMS.
- KMS_PROJECT_NUMBER_OR_ID con il numero o l'ID del progetto in cui viene creata la chiave.
- KMS_KEY_RING con il nome delle chiavi automatizzate.
- KMS_REGION con la regione del portachiavi. Il portachiavi e l'istanza devono trovarsi nella stessa regione.
Visualizzare un elenco di chiavi
Puoi ottenere un elenco di chiavi eseguendo il comando kms keys list:
gcloud kms keys list \
--project=KMS_PROJECT_NUMBER_OR_ID \
--keyring=KEY_RING \
--location=KMS_REGION
Sostituisci quanto segue:
- KMS_PROJECT_NUMBER_OR_ID con il numero o l'ID del progetto in cui viene creata la chiave.