Chiavi di crittografia gestite dal cliente (CMEK)

Per impostazione predefinita, tutti i dati at-rest in Firestore vengono criptati utilizzando Crittografia predefinita di Google. Firestore gestisce 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 Invece di lasciare che sia Google a gestire le chiavi di crittografia che proteggono dati, il database Firestore è protetto da una chiave controllare e gestire in Cloud Key Management Service (Cloud KMS).

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

Funzionalità

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 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. 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 per l'utilizzo del database protetto da CMEK continueranno a essere applicati i prezzi di Firestore.

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 una chiave gestita esternamente non è disponibile, Firestore continua a supportare operazioni di database complete utilizzando una versione della chiave memorizzata nella cache, per un un'ora.

Dopo un'ora, se Firestore non riesce ancora a connettersi Cloud KMS, Firestore 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