Utilizzo delle chiavi di crittografia gestite dal cliente

Per impostazione predefinita, Vertex AI Workbench cripta i contenuti dei clienti a riposo. Vertex AI Workbench gestisce la crittografia per te 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 servizi integrati con CMEK, tra cui Vertex AI Workbench. L'utilizzo delle chiavi Cloud KMS ti consente di controllare il livello di protezione, la posizione, la pianificazione della rotazione, l'utilizzo e le autorizzazioni di accesso e i limiti crittografici. L'utilizzo di Cloud KMS consente anche di visualizzare i log di controllo e controllare i cicli di vita delle chiavi. Anziché essere di proprietà di Google e gestite da Google, le chiavi di crittografia delle chiavi (KEK) simmetriche che proteggono i tuoi dati sono controllate e gestite da te in Cloud KMS.

Dopo aver configurato le risorse con le chiavi 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 chiavi in Cloud Key Management Service. Ad esempio, puoi ruotare o disattivare una chiave oppure configurare una pianificazione di rotazione utilizzando l'API Cloud KMS.

Quando esegui un'istanza di blocchi note gestiti, questa viene eseguita in un'infrastruttura di calcolo gestita da Google. Quando abiliti CMEK per un'istanza di blocchi note gestiti, Vertex AI Workbench utilizza la chiave che specifichi, anziché una chiave gestita da Google, per criptare i tuoi dati utente.

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

Limitazioni di CMEK

Per ridurre la latenza ed evitare casi in cui le risorse dipendono da servizi distribuiti su più domini di errore, Google consiglia di proteggere le istanze di notebook gestiti regionali con chiavi nella stessa località.

  • Puoi criptare le istanze di notebook gestiti regionali 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 altri prodotti Google Cloud che utilizzi. Per utilizzare CMEK per criptare i dati in altri prodotti Google Cloud , devi completare una configurazione aggiuntiva.

Configura CMEK per l'istanza di notebook gestiti

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

Prima di iniziare

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

  • Un progetto Cloud KMS: un progetto per la gestione della chiave di crittografia
  • Un progetto notebook gestiti: un progetto per accedere alle istanze notebook gestiti e interagire con qualsiasi altro prodotto Google Cloud necessario 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 seguenti attività.

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

  8. 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

    8. Configura Google Cloud CLI

      gcloud CLI è obbligatoria per alcuni passaggi di questa pagina e facoltativa per altri.

      After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      Crea una chiave automatizzata e una chiave

      Quando crei una chiave automatizzata 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 dei notebook gestiti.

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

      Per creare un portachiavi e una chiave, consulta la pagina Creare chiavi di crittografia simmetrica.

      Concedere le autorizzazioni per i blocchi note gestiti

      Se configuri l'istanza con l'accesso di un singolo utente, devi concedere al progetto dell'istanza Managed Notebooks l'autorizzazione per 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 ha il seguente aspetto:

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

      Sostituisci NOTEBOOKS_PROJECT_NUMBER con il numero di progetto del progetto dell'istanza di Managed Notebooks.

      Prendi nota dell'indirizzo email del tuo agente di servizio. Lo utilizzerai nei passaggi successivi per concedere l'autorizzazione del progetto all'istanza di notebook gestiti per criptare e decriptare i dati utilizzando la tua chiave. Puoi concedere l'autorizzazione utilizzando la console Google Cloud o 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 un keyring e una chiave. Viene visualizzata la pagina Dettagli chiave automatizzata.

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

      5. Nel riquadro 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 e poi seleziona il ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS.

        3. Fai clic su Salva.

      gcloud

      1. Esegui questo comando per concedere all'agente di servizio l'autorizzazione a 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 Crea un portachiavi e una chiave
        • KEY_RING_NAME: il portachiavi che hai creato in Creare un portachiavi e una chiave
        • REGION: la regione in cui hai creato il portachiavi
        • KMS_PROJECT_ID: l'ID del tuo progetto Cloud KMS
        • EMAIL_ADDRESS: l'indirizzo email dell'agente del servizio di cui hai preso nota nella sezione precedente

      Crea un'istanza di notebook gestiti con CMEK

      Dopo aver concesso all'istanza di blocchi note gestiti l'autorizzazione a criptare e decriptare i dati utilizzando la chiave, puoi creare un'istanza di blocchi note gestiti che cripta i dati utilizzando questa chiave. Segui questi passaggi:

      1. Nella console Google Cloud , vai alla pagina Blocchi note gestiti.

        Vai a Notebook gestiti

      2. Fai clic su  Nuovo notebook.

      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 del disco, 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 è presente nell'elenco, selezionala.

        • Se la chiave gestita dal cliente che vuoi utilizzare non è presente 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 gestiti 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