Chiavi di crittografia gestite dal cliente (CMEK)

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 monitorare l'utilizzo delle chiavi, 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 Vertex AI Workbench e mostra come configurare una nuova istanza di Vertex AI Workbench per utilizzare CMEK.

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

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 Vertex AI Workbench, l'istanza viene eseguita su una macchina virtuale (VM) gestita da Vertex AI Workbench. Quando abiliti CMEK per un'istanza Vertex AI Workbench, Vertex AI Workbench utilizza la chiave che hai designato, anziché una chiave gestita da Google, per criptare i dati sui dischi di avvio della VM.

La chiave CMEK non cripta i metadati, come il nome e la regione dell'istanza, associati all'istanza Vertex AI Workbench. I metadati associati alle istanze di Vertex AI Workbench sono 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 in più domini di errore, Google consiglia di proteggere le istanze Vertex AI Workbench regionali con chiavi nella stessa località.

  • Puoi criptare le istanze regionali di Vertex AI Workbench utilizzando chiavi nella stessa località o nella località globale. Ad esempio, puoi criptare i dati in un disco nella zona us-west1-a utilizzando una chiave in us-west1 o global.
  • Puoi criptare le istanze globali utilizzando le chiavi in qualsiasi località.
  • La configurazione di CMEK per Vertex AI Workbench 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 Vertex AI Workbench

Le sezioni seguenti descrivono come creare un portachiavi e una chiave in Cloud Key Management Service, concedere all'account di servizio le autorizzazioni di crittografia e decrittografia per la chiave e creare un'istanza di Vertex AI Workbench che utilizzi CMEK.

Prima di iniziare

Ti consigliamo di utilizzare una configurazione che supporti la separazione dei compiti. Per configurare CMEK per Vertex AI Workbench, puoi utilizzare due progetti Google Cloud separati:

  • Un progetto Cloud KMS: un progetto per la gestione della chiave di crittografia
  • Un progetto Vertex AI Workbench: un progetto per accedere alle istanze Vertex AI Workbench e interagire con altri prodotti Google Cloud necessari 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 Vertex AI Workbench

    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 portachiavi, utilizza global o la posizione in cui si troverà l'istanza Vertex AI Workbench.

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

      Concedi le autorizzazioni di Vertex AI Workbench

      Per utilizzare CMEK per l'istanza Vertex AI Workbench, devi concedere all'istanza Vertex AI Workbench l'autorizzazione a criptare e decriptare i dati utilizzando la tua chiave. Concedi questa autorizzazione all'agente di servizio del tuo progetto e all'account di servizio Compute Engine.

      Per trovare gli account specifici per il tuo progetto Vertex AI Workbench, utilizza la console Google Cloud .

      1. Nella console Google Cloud , vai alla pagina IAM.

        Vai a IAM

      2. Seleziona Includi concessioni di ruoli fornite da Google.

      3. Trova i membri che corrispondono ai seguenti formati di indirizzo email. Prendi nota degli indirizzi email e utilizzali nei passaggi successivi.

        • L'indirizzo email del service agent del tuo progetto ha il seguente aspetto:

          service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
        • L'indirizzo email del account di servizio Compute Engine ha il seguente aspetto:

          service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com

        Sostituisci NOTEBOOKS_PROJECT_NUMBER con il numero di progetto del tuo progetto Vertex AI Workbench.

        Per concedere a questi account l'autorizzazione a criptare e decriptare i dati utilizzando la tua chiave, puoi utilizzare 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 del tuo progetto:

            service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
          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.

        6. Ripeti questi passaggi per l'agente di servizio Compute Engine:

          service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com

        gcloud

        1. Per concedere all'agente di servizio del progetto l'autorizzazione a criptare e decriptare i dati utilizzando la chiave, 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-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com \
            --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 Crea un portachiavi e una chiave
          • REGION: la regione in cui hai creato il portachiavi
          • KMS_PROJECT_ID: l'ID del tuo progetto Cloud KMS
          • NOTEBOOKS_PROJECT_NUMBER: il numero di progetto del tuo progetto Vertex AI Workbench, che hai annotato nella sezione precedente come parte di un indirizzo email dell'account di servizio.
        2. Per concedere al account di servizio Compute Engine l'autorizzazione per criptare e decriptare i dati utilizzando la tua chiave, esegui il seguente comando:

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

      Crea un'istanza di Vertex AI Workbench con CMEK

      Dopo aver concesso all'istanza Vertex AI Workbench l'autorizzazione a criptare e decriptare i dati utilizzando la tua chiave, puoi creare un'istanza Vertex AI Workbench che cripta i dati utilizzando questa chiave.

      Il seguente esempio mostra come criptare e decriptare i dati utilizzando la chiave tramite la console Google Cloud .

      Per creare un'istanza di Vertex AI Workbench con una chiave di crittografia gestita dal cliente:

      1. Nella console Google Cloud , vai alla pagina Istanze.

        Vai a Istanze

      2. Fai clic su  Crea nuova.

      3. Nella finestra di dialogo Nuova istanza, fai clic su Opzioni avanzate.

      4. Nella finestra di dialogo Crea istanza, nella sezione Dettagli, fornisci le seguenti informazioni per la nuova istanza:

        • Nome: un nome per la nuova istanza
        • Regione: la regione in cui si trovano la chiave e le chiavi automatizzate
        • Zona: una zona all'interno della regione selezionata
      5. Nella sezione Dischi, in Crittografia, seleziona Chiave di crittografia gestita dal cliente (CMEK).

      6. 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:

      7. Completa il resto della finestra di dialogo di creazione dell'istanza e poi fai clic su Crea.

      Passaggi successivi