Chiavi di crittografia gestite dal cliente (CMEK)
Per impostazione predefinita, Google Cloud cripta automaticamente i dati quando sono in stato inattivo utilizzando chiavi di crittografia gestite da Google.
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) per Document AI. Anziché gestire le chiavi di crittografia che proteggono i tuoi dati, il processore Document AI è protetto utilizzando una chiave che controlli e gestisci in Cloud Key Management Service (KMS).
Questa guida descrive CMEK per Document AI. Per saperne di più su CMEK in generale, incluso quando e perché attivarlo, consulta la documentazione di Cloud Key Management Service.
Prerequisito
Il service agent Document AI deve disporre del ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS sulla chiave che utilizzi.
Il seguente esempio concede un ruolo che fornisce l'accesso a una chiave Cloud KMS:
gcloud
gcloud kms keys add-iam-policy-binding key \ --keyring key-ring \ --location location \ --project key_project_id \ --member serviceAccount:service-project_number@gcp-sa-prod-dai-core.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypter
Sostituisci key con il nome della chiave. Sostituisci key-ring con il nome del keyring in cui si trova la chiave. Sostituisci location con la posizione di Document AI per il portachiavi. Sostituisci key_project_id con il progetto per il portachiavi. Sostituisci project_number con il numero del tuo progetto.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI C#.
Per autenticarti in Document AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI Go.
Per autenticarti in Document AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI Java.
Per autenticarti in Document AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI Node.js.
Per autenticarti in Document AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
PHP
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI PHP.
Per autenticarti in Document AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI Python.
Per autenticarti in Document AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI Ruby.
Per autenticarti in Document AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Utilizzo di CMEK
Le impostazioni di crittografia sono disponibili quando crei un processore. Per utilizzare CMEK, seleziona l'opzione CMEK e una chiave.
La chiave CMEK viene utilizzata per tutti i dati associati al processore e alle relative risorse secondarie. Tutti i dati relativi ai clienti inviati al responsabile del trattamento vengono criptati automaticamente con la chiave fornita prima di essere scritti su disco.
Una volta creato un processore, non puoi modificarne le impostazioni di crittografia. Per utilizzare una chiave diversa, devi creare un nuovo processore.
Chiavi esterne
Puoi utilizzare Cloud External Key Manager (EKM) per creare e gestire chiavi esterne per criptare i dati all'interno di Google Cloud.
Quando utilizzi una chiave Cloud EKM, Google non ha alcun controllo sulla disponibilità della chiave gestita esternamente. Se richiedi l'accesso a una risorsa criptata con una chiave gestita esternamente e la chiave non è disponibile, Document AI rifiuterà la richiesta. Potrebbe verificarsi un ritardo massimo di 10 minuti prima di poter accedere alla risorsa dopo che la chiave diventa disponibile.
Per ulteriori considerazioni sull'utilizzo di chiavi esterne, consulta Considerazioni su EKM.
Risorse supportate da CMEK
Quando archivia una risorsa su disco, se vengono archiviati dati del cliente come parte della risorsa, Document AI cripta prima i contenuti utilizzando la chiave CMEK.
Risorsa | Materiale criptato |
---|---|
Processor |
N/A - nessun dato utente. Tuttavia, se specifichi una chiave CMEK durante la creazione del processore, questa deve essere valida. |
ProcessorVersion |
Tutti |
Evaluation |
Tutti |
API supportate da CMEK
Le API che utilizzano la chiave CMEK per la crittografia includono le seguenti:
Metodo | Crittografia |
---|---|
processDocument |
N/A - nessun dato salvato sul disco. |
batchProcessDocuments |
I dati vengono archiviati temporaneamente sul disco e criptati utilizzando una chiave effimera (vedi Conformità CMEK). |
trainProcessorVersion |
I documenti utilizzati per l'addestramento vengono criptati utilizzando la chiave KMS/CMEK fornita. |
evaluateProcessorVersion |
Le valutazioni vengono criptate utilizzando la chiave KMS/CMEK fornita. |
Le richieste API che accedono a risorse criptate non vanno a buon fine se la chiave è disabilitata o non è raggiungibile. Alcuni esempi sono:
Metodo | Decriptazione |
---|---|
getProcessorVersion |
Le versioni del processore addestrate utilizzando i dati dei clienti sono criptate. L'accesso richiede la decrittografia. |
processDocument |
L'elaborazione dei documenti utilizzando una versione del processore criptata richiede la decriptazione. |
Import Documents |
L'importazione di documenti con auto-labeling abilitato utilizzando una versione del processore criptata richiede la decriptazione. |
CMEK e Cloud Storage
Le API, come batchProcess
,
possono leggere e scrivere nei bucket Cloud Storage.
Tutti i dati scritti in Cloud Storage da Document AI vengono criptati utilizzando la chiave di crittografia configurata del bucket, che può essere diversa dalla chiave CMEK del processore.
Per maggiori informazioni, consulta la documentazione di CMEK per Cloud Storage.