Utilizzo delle chiavi di crittografia gestite dal cliente

Per impostazione predefinita, Vertex AI Workbench cripta i contenuti inattivi dei clienti. Vertex AI Workbench 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 Vertex AI Workbench. 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 di 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 i CMEK, l'esperienza di accesso alle risorse di Vertex AI Workbench è 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 pagina descrive alcuni vantaggi e limitazioni specifici dell'utilizzo di CMEK con i notebook gestiti e mostra come configurare una nuova istanza di notebook gestiti per utilizzare CMEK.

Vantaggi di CMEK

In generale, CMEK è più utile se hai bisogno del controllo completo sulle chiavi utilizzate per criptare i tuoi dati. Con CMEK, puoi gestire le tue chiavi in Cloud Key Management Service. Ad esempio, puoi ruotare o disattivare una chiave oppure impostare una pianificazione di rotazione utilizzando l'API Cloud KMS.

Quando esegui un'istanza di Notebooks gestita, l'istanza viene eseguita in un'infrastruttura di calcolo gestita da Google. Quando attivi la chiave CMEK per un'istanza di notebook gestito, Vertex AI Workbench utilizza la chiave che hai designato, anziché una chiave gestita da Google, per criptare i dati utente.

La chiave CMEK non cripta i metadati, come il nome e la regione dell'istanza, associati all'istanza di Notebook gestiti. I metadati associati alle istanze di notebook gestite sono sempre criptati utilizzando il meccanismo di crittografia predefinito di Google.

Limitazioni di CMEK

Per ridurre la latenza e per evitare i casi in cui le risorse dipendono da servizi distribuiti su più domini di errore, Google consiglia di proteggere le istanze di notebook gestite a livello di regione con chiavi nella stessa posizione.

  • Puoi criptare le istanze di notebook gestite a livello di regione utilizzando chiavi nella stessa località o nella località globale. Ad esempio, puoi criptare i dati utente nella regione us-west1 utilizzando una chiave in us-west1 o global.
  • La configurazione di CMEK per i notebook gestiti non configura automaticamente CMEK per gli altri prodotti Google Cloud che utilizzi. Per utilizzare CMEK per criptare i dati in altri prodotti Google Cloud, devi completare una configurazione aggiuntiva.

Configurare CMEK per l'istanza di notebook gestiti

Le sezioni seguenti descrivono come creare un portachiavi e una chiave in Cloud Key Management Service, concedere le autorizzazioni di crittografia e decrittografia dell'account di servizio per la chiave e creare un'istanza di notebook gestita che utilizza CMEK.

Prima di iniziare

Ti consigliamo di utilizzare una configurazione che supporti una separazione dei compiti. Per configurare CMEK per i notebook gestiti, puoi utilizzare due progetti Google Cloud distinti:

  • Un progetto Cloud KMS: un progetto per la gestione della chiave di crittografia
  • Un progetto di notebook gestiti: un progetto per accedere alle istanze di notebook gestiti e interagire con qualsiasi altro prodotto Google Cloud di cui hai bisogno per il tuo caso d'uso

In alternativa, puoi utilizzare un singolo progetto Google Cloud. A tal fine, utilizza lo stesso progetto per tutte le attività che seguono.

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 di notebook gestiti

  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 Notebooks 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 Notebooks API.

    Enable the API

Configurare Google Cloud CLI

gcloud CLI è obbligatoria per alcuni passaggi di questa pagina 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

Quando crei un ciondolo e una chiave, tieni presente i seguenti requisiti:

  • Quando scegli la posizione del keyring, utilizza global o la posizione in cui si troverà l'istanza di Notebook gestiti.

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

Per creare un mazzo di chiavi e una chiave, consulta Creare chiavi di crittografia simmetriche.

Concedi le autorizzazioni per i blocchi note gestiti

Se configuri l'istanza con accesso singolo utente, devi concedere all'autorizzazione del progetto dell'istanza di notebook gestita di criptare e decriptare i dati utilizzando la tua chiave. Concedi questa autorizzazione all'agente di servizio del tuo progetto. L'indirizzo email di questo agente di servizio è simile al seguente:

service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com

Sostituisci NOTEBOOKS_PROJECT_NUMBER con il numero del progetto per il progetto dell'istanza di notebook gestita.

Prendi nota dell'indirizzo email del tuo agente di servizio. La utilizzerai nei passaggi successivi per concedere all'istanza di notebook gestita l'autorizzazione di progetto per criptare e decriptare i dati utilizzando la tua chiave. Puoi concedere l'autorizzazione utilizzando la console Google Cloud o l'interfaccia a Google Cloud CLI.

Console

  1. Nella console Google Cloud, vai alla pagina Gestione delle chiavi.

    Vai a Gestione chiavi

  2. Seleziona il tuo progetto Cloud KMS.

  3. Fai clic sul nome del keyring che hai creato in Creare chiavi automatizzate e una chiave. Viene visualizzata la pagina Dettagli chiave automatizzata.

  4. Seleziona la casella di controllo della chiave che hai creato in Creare chiavi automatizzate e una chiave. Se un riquadro informazioni etichettato con il nome della chiave non è già aperto, fai clic su Mostra riquadro informazioni.

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

    1. Nel campo Nuovi membri, inserisci l'indirizzo email dell'agente di servizio che hai annotato nella sezione precedente.

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

    3. Fai clic su Salva.

gcloud

  1. Esegui il seguente comando per concedere all'agente di servizio l'autorizzazione per criptare e decriptare i dati utilizzando la tua chiave:

    gcloud kms keys add-iam-policy-binding KEY_NAME \
        --keyring=KEY_RING_NAME \
        --location=REGION \
        --project=KMS_PROJECT_ID \
        --member=serviceAccount:EMAIL_ADDRESS \
        --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
    

    Sostituisci quanto segue:

    • KEY_NAME: il nome della chiave che hai creato in Creare un portachiavi e una chiave
    • KEY_RING_NAME: il keyring che hai creato in Creare un keyring e una chiave
    • REGION: la regione in cui hai creato l'anello di chiavi
    • KMS_PROJECT_ID: l'ID del tuo progetto Cloud KMS
    • EMAIL_ADDRESS: l'indirizzo email dell'agente di servizio che hai annotato nella sezione precedente

Creare un'istanza di notebook gestiti con CMEK

Dopo aver concesso all'istanza di Notebook gestiti l'autorizzazione per criptare e decriptare i dati utilizzando la tua chiave, puoi creare un'istanza di Notebook gestiti che cripta i dati utilizzando questa chiave. Procedi nel seguente modo:

  1. Nella console Google Cloud, vai alla pagina Notebook gestiti.

    Vai a Blocchi note gestiti

  2. Fai clic su  Nuovo blocco note.

  3. Nel campo Nome notebook, inserisci un nome per l'istanza.

  4. Fai clic sull'elenco Regione e seleziona una regione per l'istanza.

  5. Fai clic su Impostazioni avanzate.

  6. Nella sezione Crittografia dei dischi, seleziona Chiave di crittografia gestita dal cliente (CMEK).

  7. Fai clic su Seleziona una chiave gestita dal cliente.

    • Se la chiave gestita dal cliente che vuoi utilizzare è nell'elenco, selezionatela.

    • Se la chiave gestita dal cliente che vuoi utilizzare non è nell'elenco, inserisci l'ID risorsa della chiave gestita dal cliente. L'ID risorsa per la chiave gestita dal cliente è simile al seguente:

        projects/NOTEBOOKS_PROJECT_NUMBER/locations/global/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME

      Sostituisci quanto segue:

  8. Completa il resto della finestra di dialogo Crea un notebook gestito in base alle tue esigenze.

  9. Fai clic su Crea.

  10. Vertex AI Workbench crea un'istanza di notebook gestita in base alle proprietà specificate e la avvia automaticamente. Quando l'istanza è pronta per l'uso, Vertex AI Workbench attiva un link Apri JupyterLab.

Passaggi successivi