Chiavi di crittografia gestite dal cliente (CMEK)

Per impostazione predefinita, tutti i dati inattivi in Firestore in modalità Datastore sono criptati utilizzando Crittografia predefinita di Google. Firestore in modalità Datastore gestisce e gestisce questa crittografia per conto tuo senza che tu debba fare altro.

Se hai requisiti normativi o di conformità specifici relativi alle chiavi che proteggono i tuoi dati, puoi utilizzare le chiavi di crittografia gestite dal cliente (CMEK) Firestore in modalità Datastore. Invece di lasciare che sia Google a gestire le chiavi di crittografia che proteggono dati, il database Firestore in modalità Datastore è protetto tramite una chiave controllare e gestire in Cloud Key Management Service (Cloud KMS).

Questa pagina descrive CMEK per Firestore in modalità Datastore. Per ulteriori informazioni su CMEK in generale, ad esempio quando e perché abilitarlo, vedi le Documentazione di Cloud KMS. Per istruzioni sull'esecuzione Per attività correlate a CMEK con Firestore in modalità Datastore, vedi Utilizzare CMEK.

Funzionalità

  • Controllo dei dati: CMEK consente di gestire l'accesso alla chiave KMS. Puoi ruotare, disabilitare ed eliminare la chiave utilizzata per criptare i dati at-rest nel tuo database Firestore in modalità Datastore.
  • Prestazioni: CMEK non influisce sulle SLA (accordo sul livello del servizio) di Firestore.
  • Verificabilità: se abilitare l'audit logging per Cloud KMS, tutte le operazioni sulla chiave sono registrate e sono visibili in Cloud Logging.
  • Vincoli dei criteri dell'organizzazione: puoi utilizzare Vincoli dei criteri dell'organizzazione CMEK per specificare i requisiti di conformità della crittografia per Firestore nei database in modalità Datastore che fa parte della tua organizzazione.

Prezzi

Cloud KMS addebita i costi della chiave e di eventuali operazioni eseguite utilizzando quella chiave. Consulta Prezzi di Cloud KMS per i dettagli.

I costi delle operazioni ti vengono addebitati quando Firestore in modalità Datastore richiede Chiave Cloud KMS per eseguire un'operazione di crittografia o decriptazione. La crittografia/decrittografia non è sincronizzata con la tua richiesta. Viene effettuata ogni 5 di minuti eseguendo il polling di Cloud KMS. I costi sono generalmente bassi, dato che numero previsto di operazioni crittografiche generate da Firestore in modalità Datastore. Costi per Cloud Audit Logs rappresentano una spesa aggiuntiva, ma si prevede che generalmente basso, dato il numero previsto di operazioni crittografiche.

Non sono previsti costi aggiuntivi per Firestore in modalità Datastore per l'utilizzo del database protetto da CMEK continueranno a essere applicati i prezzi di Firestore in modalità Datastore.

Se revochi la chiave in un database, il costo di archiviazione verrà addebitato in base al dimensioni dell'ultimo giorno in cui la chiave era disponibile. Continuerai a incorrere i costi di archiviazione a quelle dimensioni del database finché non viene eliminato o torna disponibile.

Cosa è protetto con CMEK

Quando crei un database protetto da CMEK Firestore, viene utilizzata la chiave Cloud KMS. per proteggere i dati at-rest. Sono inclusi i dati archiviati su disco o Flash. Si applicano alcune eccezioni. I seguenti tipi di dati sono criptati con Google per crittografia predefinita e non in base alla chiave CMEK:

  • Dati in transito o in memoria
  • Metadati del database

Come viene gestito uno stato di una chiave non disponibile

Le operazioni di crittografia e decriptazione non vengono eseguite per ogni richiesta di dati. Invece, il sistema Firestore esegue il polling di Cloud Key Management Service ogni 5 minuti per verificare se sia ancora disponibile ed esegue operazioni di crittografia e decriptazione se sia disponibile. Se il sistema rileva che la chiave non è disponibile, entro 10 minuti, per qualsiasi chiamata successiva al database Firestore, incluse letture, scritture e query, restituisce un errore FAILED_PRECONDITION con il messaggio The customer-managed encryption key required by the requested resource is not accessible. Se il database ha criteri di durata (TTL) ed eventuali scadenze vengono superati quando la chiave non è disponibile, eliminazione dei dati per TTL subiranno un ritardo finché la chiave non verrà reintegrata. Se il database ha prestazioni le operazioni in corso saranno interessate nel seguente modo:

  • Le operazioni di importazione o esportazione dei dati smetteranno di funzionare progressi e essere contrassegnato come Failed. Le operazioni non riuscite non saranno nuovo tentativo se la chiave viene reintegrata.
  • Operazioni di creazione dell'indice e operazioni che attivano nuovo TTL norme interromperanno i progressi. Le operazioni interrotte un nuovo tentativo se la chiave viene reintegrata.

Le chiavi sono considerate non disponibili in tutte le situazioni che non consentono intenzionalmente a Firestore di accedere alla chiave. tra cui:

Se la chiave viene reintegrata, l'operazione di polling rileva che la chiave è disponibile di nuovo. L'accesso viene riattivato in genere entro pochi minuti, ma in alcuni casi alcune ore, in rari casi. Alcune operazioni su Cloud KMS di chiavi, come la disattivazione o l'eliminazione di una chiave, possono richiedere fino a 3 ore per la propagazione. Firestore rilevare eventuali modifiche fino a quando non saranno effettive in Cloud KMS.

Il reintegro di una chiave comporta quanto segue, a seconda della situazione:

  • Riattivazione di una versione della chiave disattivata.
  • Ripristinare la versione di una chiave eliminata. Prima di essere eliminata definitivamente, viene pianificata una versione della chiave la distruzione di massa. Puoi ripristinare una chiave solo durante il periodo in cui è presente la versione è pianificata l'eliminazione. Non puoi ripristinare una chiave che è già stata distrutte definitivamente.
  • Riautorizzare il Autorizzazione dell'agente di servizio Firestore per accedere alla chiave.

Considerazioni chiave esterne

Quando utilizzi una chiave Cloud EKM, Google non ha alcun controllo sulle la disponibilità della chiave gestita esternamente. e il sistema partner di Google.

Se non è disponibile una chiave gestita esternamente, Firestore in modalità Datastore continua a supportare operazioni di database complete utilizzando una versione della chiave memorizzata nella cache, per un un'ora.

Dopo un'ora, se Firestore in modalità Datastore non riesce ancora a connettersi a Cloud KMS, Firestore in modalità Datastore inizia a mettere offline il database come misura protettiva. Le chiamate al database non andranno a buon fine con un FAILED_PRECONDITION che include ulteriori dettagli.

Per ulteriori informazioni, consulta la documentazione di Cloud External Key Manager considerazioni sull'uso di chiavi esterne.

Limitazioni

  • La modifica di una chiave per un database protetto da CMEK non è supportata. la rotazione della chiave, l'abilitazione e la disabilitazione.
  • Le pianificazioni dei backup e le operazioni di ripristino non sono supportate per la protezione da CMEK o Microsoft SQL Server. Puoi usare il recupero point-in-time (PITR). per il ripristino di emergenza.
  • Supporto dei database protetti da CMEK Key Visualizer solo per entità e dei documenti, non dei dati di indice.
  • Non puoi abilitare CMEK sui database esistenti. Puoi attivare CMEK solo su nuovi e devi abilitarlo quando lo crei. A eseguire la migrazione dei dati da un database non CMEK esistente a un database protetto da CMEK, esporta i dati e importali in un nuovo database protetto da CMEK.
  • Il monitoraggio delle chiavi non è supportato per il database protetto da CMEK.
  • Durante l'anteprima, Firestore supporterà un numero limitato di database protetti da CMEK.

Passaggi successivi