Utilizzo delle chiavi di crittografia gestite dal cliente (CMEK)

Per impostazione predefinita, Colab Enterprise cripta i contenuti inattivi dei clienti. Colab Enterprise 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 i servizi integrati con CMEK, tra cui Colab Enterprise. L'utilizzo delle chiavi Cloud KMS ti consente di controllare il loro livello di protezione, la posizione, la pianificazione della rotazione, le autorizzazioni di utilizzo e accesso e i confini di crittografia. L'utilizzo di Cloud KMS ti consente inoltre di visualizzare gli audit log e controllare i cicli di vita delle chiavi. Invece che essere di proprietà e gestite da Google, le chiavi di crittografia della chiave (KEK) simmetriche che proteggono i tuoi dati sono sotto il tuo controllo e vengono gestite in Cloud KMS.

Dopo aver configurato le risorse con le CMEK, l'esperienza di accesso alle risorse di Colab Enterprise è simile all'utilizzo della crittografia predefinita di Google. Per saperne di più sulle opzioni di crittografia, consulta Chiavi di crittografia gestite dal cliente (CMEK).

Questa guida descrive come utilizzare CMEK per Colab Enterprise.

Per ulteriori informazioni su come utilizzare CMEK per Vertex AI, consulta la pagina CMEK di Vertex AI.

CMEK per Colab Enterprise

Puoi utilizzare CMEK per criptare i runtime e i file dei notebook (notebook) di Colab Enterprise.

Runtime

Quando esegui il codice in un notebook Colab Enterprise, un runtime esegue il codice su una o più istanze di macchine virtuali (VM) gestite da Colab Enterprise. Quando attivi le chiavi CMEK per i runtime di Colab Enterprise, la chiave che designi, anziché una chiave gestita da Google, viene utilizzata per criptare i dati su queste VM. La chiave CMEK cripta i seguenti tipi di dati:

  • La copia del codice sulle VM.
  • Tutti i dati caricati dal codice.
  • Eventuali dati temporanei salvati sul disco locale dal codice.

Puoi avviare, arrestare e eseguire l'upgrade del runtime senza influire sulla crittografia CMEK.

In generale, la chiave CMEK non cripta i metadati associati all'operazione, come il nome del runtime o il nome e la regione del notebook. Questi metadati vengono sempre criptati utilizzando il meccanismo di crittografia predefinito di Google.

Notebooks

I notebook Colab Enterprise vengono archiviati nei repository Dataform. Quando crei un notebook, Colab Enterprise crea automaticamente un repository Dataform nascosto dove viene archiviato il notebook. Poiché il repository è nascosto, non puoi modificarne le impostazioni di crittografia come faresti con altri repository Dataform.

Per utilizzare CMEK per i tuoi notebook, devi impostare una chiave CMEK predefinita di Dataform per il Google Cloud progetto che conterrà i tuoi notebook. Dopo aver impostato una chiave CMEK di Dataform predefinita, Dataform applica la chiave a tutti i nuovi repository creati nel progetto Google Cloud per impostazione predefinita, inclusi eventuali repository nascosti creati per l'archiviazione dei notebook.

La chiave CMEK predefinita di Dataform non viene applicata ai repository esistenti. Pertanto, se hai già dei notebook in quel progetto, non verranno criptati dalla chiave CMEK predefinita di Dataform. Per utilizzare CMEK con un notebook creato prima di impostare la chiave CMEK predefinita di Dataform per il progetto, puoi salvare il file del notebook come nuovo notebook Colab Enterprise.

Per scoprire di più sulle chiavi CMEK predefinite di Dataform, consulta Utilizzare le chiavi CMEK predefinite di Dataform.

Per utilizzare CMEK per i tuoi notebook, consulta Impostare una chiave CMEK predefinita per Dataform.

Chiavi supportate

Colab Enterprise supporta i seguenti tipi di chiavi CMEK:

La disponibilità delle chiavi varia in base al tipo di chiave e alla regione. Per ulteriori informazioni sulla disponibilità geografica delle chiavi CMEK, consulta Località Cloud KMS.

Restrizioni e limitazioni

Colab Enterprise supporta CMEK con le seguenti limitazioni:

  • La quota predefinita in Vertex AI è una chiave di crittografia per progetto e regione. Se devi registrare più di una chiave per una regione del tuo progetto, contatta il team degli Account Google per richiedere un aumento della quota per le configurazioni CMEK, fornendo una motivazione per cui hai bisogno di più di una chiave.

Quote di Cloud KMS e Colab Enterprise

Quando utilizzi CMEK in Colab Enterprise, i tuoi progetti possono consumare le quote per le richieste cryptographic di Cloud KMS. Le operazioni di crittografia e decrittografia che utilizzano le chiavi CMEK influiscono sulle quote di Cloud KMS solo se utilizzi chiavi hardware (Cloud HSM) o esterne (Cloud EKM). Per ulteriori informazioni, consulta Quote di Cloud KMS.

Configura CMEK per i tuoi runtime

Le sezioni seguenti descrivono come creare un keyring e una chiave in Cloud Key Management Service, concedere le autorizzazioni di crittografia e decrittografia di Colab Enterprise per la chiave e creare un modello di runtime configurato per l'utilizzo di CMEK. Qualsiasi runtime generato da Colab Enterprise da questo modello di runtime utilizza la crittografia CMEK.

Prima di iniziare

Questa guida presuppone che tu utilizzi due progetti Google Cloud distinti per configurare CMEK per i runtime di Colab Enterprise:

  • Un progetto per la gestione della chiave di crittografia (chiamato "progetto Cloud KMS").
  • Un progetto per accedere alle risorse di Colab Enterprise e interagire con qualsiasi altro Google Cloud prodotto di cui hai bisogno (chiamato "progetto Notebook").

Questa configurazione consigliata supporta una separazione dei compiti.

In alternativa, puoi utilizzare un singolo Google Cloud progetto per l'intera guida. A tale scopo, utilizza lo stesso progetto per tutte le seguenti attività che fanno riferimento al progetto Cloud KMS e alle attività che fanno riferimento al progetto Notebook.

Configura il progetto Cloud KMS

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud KMS API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Cloud KMS API.

    Enable the API

Configura il progetto Notebook

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI API.

    Enable the API

Configurare Google Cloud CLI

L'interfaccia a riga di comando gcloud è obbligatoria per alcuni passaggi di questa guida e facoltativa per altri.

Install the Google Cloud CLI, then initialize it by running the following command:

gcloud init

Creare una chiave automatizzata e una chiave

Segui la guida di Cloud KMS per la creazione di chiavi simmetriche per creare un keyring e una chiave. Quando crei il tuo keyring, specifica una regione che supporta le operazioni di Colab Enterprise come posizione del keyring. Colab Enterprise supporta CMEK solo se il runtime e la chiave utilizzano la stessa regione. Non devi specificare una località con due regioni, multiregionale o globale per il tuo keyring.

Assicurati di creare il keyring e la chiave nel progetto Cloud KMS.

Concedi le autorizzazioni di Colab Enterprise

Per utilizzare le chiavi CMEK per le tue risorse, devi concedere a Colab Enterprise l'autorizzazione per criptare e decriptare i dati utilizzando la tua chiave. Colab Enterprise utilizza un agente di servizio gestito da Google per eseguire operazioni utilizzando le tue risorse. Questo account di servizio è identificato da un indirizzo email con il seguente formato: service-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com.

Per trovare l'account di servizio appropriato per il tuo progetto Notebook, vai alla pagina IAM nella console Google Cloud e individua il membro che corrisponde a questo formato di indirizzo email, con il numero di progetto del tuo progetto Notebook che sostituisce la variabile NOTEBOOK_PROJECT_NUMBER. L'account di servizio ha anche il nome Vertex AI Service Agent.

Vai alla pagina IAM

Prendi nota dell'indirizzo email di questo account di servizio e utilizzalo nei passaggi seguenti per concedergli l'autorizzazione a criptare e decriptare i dati utilizzando la tua chiave. Puoi concedere l'autorizzazione utilizzando la console Google Cloud o la CLI Google Cloud:

Console Google Cloud

  1. Nella console Google Cloud, fai clic su Sicurezza e seleziona Gestione delle chiavi. Verrà visualizzata la pagina Chiavi di crittografia e selezionato il progetto Cloud KMS.

    Vai alla pagina Chiavi crittografiche

  2. Fai clic sul nome del keyring che hai creato in una sezione precedente di questa guida per andare alla pagina Dettagli keyring.

  3. Seleziona la casella di controllo relativa alla chiave che hai creato in una sezione precedente di questa guida. Se un riquadro informazioni con il nome della chiave non è già aperto, fai clic su Mostra riquadro informazioni.

  4. Nel riquadro delle informazioni, fai clic su Aggiungi membro per aprire la finestra di dialogo Aggiungi membri a "KEY_NAME". In questa finestra di dialogo, procedi nel seguente modo:

    1. Nella casella Nuovi membri, inserisci l'indirizzo email dell'account di servizio che hai annotato nella sezione precedente: service-NOTEBOOK_PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com

    2. Nell'elenco a discesa Seleziona un ruolo, fai clic su Cloud KMS, quindi seleziona il ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS.

    3. Fai clic su Salva.

gcloud

Esegui questo comando:

gcloud kms keys add-iam-policy-binding KEY_NAME \
  --keyring=KEY_RING_NAME \
  --location=REGION \
  --project=KMS_PROJECT_ID \
  --member=serviceAccount:service-NOTEBOOK_PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com \
  --role=roles/cloudkms.cryptoKeyEncrypterDecrypter

In questo comando, sostituisci i seguenti segnaposto:

  • KEY_NAME: il nome della chiave creata in una sezione precedente di questa guida.
  • KEY_RING_NAME: il portachiavi che hai creato in una sezione precedente di questa guida.
  • REGION: la regione in cui hai creato il portachiavi.
  • KMS_PROJECT_ID: l'ID del tuo progetto Cloud KMS.
  • NOTEBOOK_PROJECT_NUMBER: il numero del progetto Notebook, che hai annotato nella sezione precedente come parte di un indirizzo email dell'account di servizio.

Configura un modello di runtime con la chiave KMS

Quando crei una nuova risorsa supportata da CMEK, puoi specificare la tua chiave come uno dei parametri di creazione. Per creare un runtime Colab Enterprise, devi creare un modello di runtime con la chiave CMEK specificata come parametro. Qualsiasi runtime generato da Colab Enterprise da questo modello di runtime utilizza la crittografia CMEK.

Per creare un modello di runtime utilizzando la console Google Cloud, specifica la chiave nella finestra di dialogo Crea nuovo modello di runtime. Segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Modelli di runtime di Colab Enterprise.

    Vai a Modelli di runtime

  2. Fai clic su  Nuovo Modello.

    Viene visualizzata la finestra di dialogo Crea nuovo modello di runtime.

  3. Nella sezione Configura l'elaborazione, in Crittografia, seleziona Chiave Cloud KMS.

  4. In Tipo di chiave, seleziona Cloud KMS, quindi, nel campo successivo, seleziona la chiave di crittografia gestita dal cliente.

  5. Completa la parte rimanente della finestra di dialogo di creazione dell'istanza e poi fai clic su Crea.

    Il modello di runtime viene visualizzato nell'elenco della scheda Modelli di runtime.

Passaggi successivi