Vom Kunden verwaltete Verschlüsselungsschlüssel

Standardmäßig verschlüsselt Google Cloud Daten im inaktiven Zustand automatisch mit von Google verwalteten Verschlüsselungsschlüsseln. Wenn Sie bestimmte Compliance- oder behördlichen Anforderungen in Bezug auf die Schlüssel zum Schutz Ihrer Daten haben, können Sie für Ihre nutzerverwalteten Notebookinstanzen vom Kunden verwaltete Verschlüsselungsschlüssel (Customer-Managed Encryption Keys, CMEK) verwenden.

Auf dieser Seite werden einige spezifische Vorteile und Einschränkungen der Verwendung von CMEK mit nutzerverwalteten Notebooks beschrieben. Außerdem erfahren Sie, wie Sie eine neue nutzerverwaltete Notebookinstanz für die Verwendung von CMEK konfigurieren.

Allgemeine Informationen zu CMEKs und deren Aktivierung finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel.

Vorteile von CMEK

Im Allgemeinen sind CMEK am nützlichsten, wenn Sie vollständige Kontrolle über die Schlüssel benötigen, die zum Verschlüsseln Ihrer Daten verwendet werden. Mit CMEKs können Sie Ihre Schlüssel im Cloud Key Management Service verwalten. Sie haben beispielsweise die Möglichkeit, einen Schlüssel zu rotieren oder zu deaktivieren oder einen Rotationsplan mit der Cloud KMS API einzurichten.

Wenn Sie eine nutzerverwaltete Notebookinstanz ausführen, wird Ihre Instanz auf einer virtuellen Maschine (VM) ausgeführt, die von Vertex AI Workbench verwaltet wird. Wenn Sie CMEK für eine vom Nutzer verwaltete Notebookinstanz aktivieren, verwendet Vertex AI Workbench den von Ihnen angegebenen Schlüssel statt eines von Google verwalteten Schlüssels, um Daten auf den Bootlaufwerken der VM zu verschlüsseln.

Der CMEK-Schlüssel verschlüsselt Metadaten wie den Namen und die Region der Instanz, die mit Ihrer nutzerverwalteten Notebooks-Instanz verknüpft sind, nicht . Metadaten, die mit nutzerverwalteten Notebookinstanzen verknüpft sind, werden immer mit dem Standardverschlüsselungsmechanismus von Google verschlüsselt.

Einschränkungen von CMEK

Google empfiehlt, regionale nutzerverwaltete Notebookinstanzen mit Schlüsseln an deren Standort zu schützen, um die Latenz zu verringern und um Fälle zu vermeiden, bei denen Ressourcen von Diensten abhängen, die über mehrere fehlerhafte Domains verteilt sind.

  • Um regionale nutzerverwaltete Notebookinstanzen zu verschlüsseln, können Sie Schlüssel am selben Standort oder an einem globalen Speicherort verwenden. Beispiel: Um Daten auf einem Laufwerk in der Zone us-west1-a zu verschlüsseln, nutzen Sie einen Schlüssel in us-west1 oder global.
  • Sie können globale Instanzen mit an einem beliebigen Standort gespeicherten Schlüsseln verschlüsseln.
  • Konfigurieren Sie CMEK für nutzerverwaltete Notebooks nicht automatisch für andere von Ihnen verwendete Google Cloud-Produkte. Wenn Sie CMEK zum Verschlüsseln von Daten in anderen Google Cloud-Produkten verwenden möchten, müssen Sie eine zusätzliche Konfiguration vornehmen.

CMEK für die nutzerverwaltete Notebookinstanzen konfigurieren

In den folgenden Abschnitten wird gezeigt, wie Sie einen Schlüsselbund und einen Schlüssel in Cloud Key Management Service erstellen, dem Dienstkonto-Verschlüsseler und -Entschlüsseler Berechtigungen für Ihren Schlüssel gewähren und eine nutzerverwaltete Notebookinstanz erstellen, die CMEK verwendet.

Hinweis

Wir empfehlen die Einrichtung einer Aufgabentrennung. Zum Konfigurieren von CMEK für von Nutzern verwaltete Notebooks können Sie zwei separate Google Cloud-Projekte verwenden:

  • Ein Cloud KMS-Projekt: ein Projekt zur Verwaltung Ihres Verschlüsselungsschlüssels
  • Ein nutzerverwaltetes Notebook-Projekt: ein Projekt für den Zugriff auf nutzerverwaltete Notebookinstanzen und zur Interaktion mit anderen Google Cloud-Produkten, die Sie für Ihren Anwendungsfall benötigen

Alternativ können Sie ein einzelnes Google Cloud-Projekt verwenden. Verwenden Sie dazu dasselbe Projekt für alle folgenden Aufgaben.

Cloud KMS-Projekt einrichten

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Cloud KMS API aktivieren.

    Aktivieren Sie die API

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Cloud KMS API aktivieren.

    Aktivieren Sie die API

Nutzerverwaltetes Notebookprojekt einrichten

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Notebooks API aktivieren.

    Aktivieren Sie die API

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Notebooks API aktivieren.

    Aktivieren Sie die API

Google Cloud CLI einrichten

Die gcloud CLI ist für einige Schritte auf dieser Seite erforderlich und für andere optional.

Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

gcloud init

Schlüsselbund und Schlüssel erstellen

Beachten Sie beim Erstellen von Schlüsselbund und Schlüssel folgende Anforderungen:

  • Für den Standort Ihres Schlüsselbunds wählen Sie entweder global oder den Standort aus, an dem sich Ihre nutzerverwaltete Notebookinstanz befindet.

  • Achten Sie darauf, Schlüsselbund und Schlüssel in Ihrem Cloud KMS-Projekt zu erstellen.

Informationen zum Erstellen eines Schlüsselbunds und eines Schlüssels finden Sie unter Symmetrische Verschlüsselungsschlüssel erstellen.

Berechtigungen für nutzerverwaltete Notebooks erteilen

Um CMEK für Ihre nutzerverwaltete Notebookinstanz zu verwenden, müssen Sie Ihrer nutzerverwalteten Notebookinstanz die Berechtigung zum Verschlüsseln und Entschlüsseln von Daten mit Ihrem Schlüssel erteilen.

Das zu verwendende Dienstkonto bestimmen

Nutzerverwaltete Notebooks verwenden ein Dienstkonto, um Ihre nutzerverwaltete Notebooks-Instanz auszuführen. Dieses Dienstkonto ist entweder das Compute Engine-Standarddienstkonto oder ein Dienstkonto, das Sie beim Erstellen der Instanz angeben.

Wenn das Dienstkonto das Compute Engine-Standarddienstkonto ist, führen Sie die folgenden Schritte aus, um die E-Mail-Adresse des Dienstkontos zu ermitteln:

  1. Öffnen Sie in der Google Cloud Console die Seite IAM.

    IAM aufrufen

  2. Suchen Sie das Hauptkonto mit dem Namen Compute Engine default service account.

    Notieren Sie sich die E-Mail-Adresse für dieses Dienstkonto und erteilen Sie ihm in den folgenden Schritten die Berechtigung, Daten mit Ihrem Schlüssel zu verschlüsseln und zu entschlüsseln.

Berechtigung für das Dienstkonto gewähren

Gewähren Sie die Berechtigung mithilfe der Google Cloud Console oder der Google Cloud CLI.

Console

  1. Rufen Sie in der Cloud Console die Seite Kryptografische Schlüssel auf.

    Zur Seite „Kryptografische Schlüssel”

  2. Wählen Sie Ihr Cloud KMS-Projekt aus.

  3. Klicken Sie auf den Namen des Schlüsselbunds, den Sie unter Schlüsselbund und Schlüssel erstellen erstellt haben. Die Seite Schlüsselbunddetails wird geöffnet.

  4. Klicken Sie auf das Kästchen für den Schlüssel, den Sie unter Schlüsselbund und Schlüssel erstellen erstellt haben. Wenn ein Infofeld mit dem Namen Ihres Schlüssels noch nicht geöffnet ist, klicken Sie auf Infofeld ansehen.

  5. Klicken Sie im Infofeld auf Mitglied hinzufügen. Das Dialogfeld Mitglieder zu "KEY_NAME" hinzufügen wird geöffnet. Führen Sie in diesem Dialogfeld folgende Schritte aus:

    1. Geben Sie im Feld Neue Mitglieder die E-Mail-Adresse des Dienstkontos für Ihre Instanz ein.

    2. Klicken Sie in der Liste Rolle auswählen auf Cloud KMS und wählen Sie dann die Rolle Cloud KMS CryptoKey-Verschlüsseler/Entschlüsseler aus.

    3. Klicken Sie auf Speichern.

gcloud

Führen Sie dazu diesen Befehl aus:

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

Ersetzen Sie Folgendes:

  • KEY_NAME: Den Namen des Schlüssels, den Sie unter Schlüsselbund und Schlüssel erstellen erstellt haben
  • KEY_RING_NAME: Den Schlüsselbund, den Sie unter Schlüsselbund und Schlüssel erstellen erstellt haben
  • REGION: Die Region, in der Sie Ihren Schlüsselbund erstellt haben
  • KMS_PROJECT_ID: Die ID Ihres Cloud KMS-Projekts
  • SERVICE_ACCOUNT: Die E-Mail-Adresse des Dienstkontos für Ihre Instanz.

Nutzerverwaltete Notebookinstanz mit CMEK erstellen

Nachdem Sie Ihrer nutzerverwalteten Notebookinstanz die Berechtigung zum Verschlüsseln und Entschlüsseln von Daten mit Ihrem Schlüssel gewährt haben, können Sie eine nutzerverwaltete Notebookinstanz erstellen, die Daten mit diesem Schlüssel verschlüsselt.

Folgende Beispiele zeigen, wie Daten mit Ihrem Schlüssel über die Google Cloud Console oder die gcloud CLI verschlüsselt und entschlüsselt werden.

Console

Führen Sie folgende Schritte aus, um eine nutzerverwaltete Notebookinstanz mit einem vom Kunden verwalteten Verschlüsselungsschlüssel zu erstellen:

  1. Rufen Sie in der Google Cloud Console die Seite Nutzerverwaltete Notebooks auf. Rufen Sie alternativ notebook.new (https://notebook.new) auf und überspringen Sie den nächsten Schritt.

    Zu "Nutzerverwaltete Notebooks"

  2. Klicken Sie auf  Neues Notebook und wählen Sie dann Anpassen aus.

  3. Geben Sie auf der Seite Nutzerverwaltetes Notebook erstellen im Abschnitt Details die folgenden Informationen für Ihre neue Instanz ein:

    • Name: Ein Name für die neue Instanz
    • Region: Die Region ein, in der sich Ihr Schlüssel und Ihr Schlüsselbund befinden
    • Zone: Eine Zone in der von Ihnen ausgewählten Region
  4. Wählen Sie den Abschnitt Laufwerke aus.

  5. Wählen Sie unter Verschlüsselung Nutzerverwalteter Verschlüsselungsschlüssel (CMEK) aus, um vom Kunden verwaltete Verschlüsselungsschlüssel zu verwenden.

  6. Klicken Sie auf Vom Kunden verwalteten Schlüssel auswählen.

    • Falls sich der vom Kunden verwaltete Schlüssel in der Liste befindet, wählen Sie ihn aus.
    • Wenn der vom Kunden verwaltete Schlüssel, den Sie verwenden möchten, nicht in der Liste steht, geben Sie die Ressourcen-ID für Ihren nutzerverwalteten Schlüssel ein. Die Ressourcen-ID Ihres vom Kunden verwalteten Schlüssels sieht so aus:

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

      Ersetzen Sie Folgendes:

  7. Schließen Sie den Rest des Dialogfelds zur Instanzerstellung ab und klicken Sie dann auf Erstellen.

  8. Vertex AI Workbench erstellt anhand der angegebenen Attribute eine nutzerverwaltete Notebookinstanz und startet diese Instanz automatisch. Sobald die Instanz einsatzbereit ist, aktiviert Vertex AI Workbench den Link JupyterLab öffnen.

gcloud

Führen Sie den folgenden Befehl aus, um mit der gcloud CLI eine nutzerverwaltete Notebookinstanz mit einem vom Kunden verwalteten Verschlüsselungsschlüssel zu erstellen. In diesem Beispiel wird davon ausgegangen, dass Sie eine nutzerverwaltete Notebookinstanz mit einem Maschinentyp n1-standard-1 und einem standardmäßigen nichtflüchtigen Bootlaufwerk von 100 GB erstellen möchten.

gcloud notebooks instances create notebook-vm-cmek \
    --location=REGION \
    --vm-image-family=IMAGE_FAMILY \
    --vm-image-project=deeplearning-platform-release \
    --machine-type="n1-standard-1" \
    --boot-disk-type="PD_STANDARD" \
    --boot-disk-size=100 \
    --kms-key=KEY_NAME \
    --kms-project=KMS_PROJECT_ID \
    --kms-location=REGION \
    --kms-keyring=KEY_RING_NAME \
    --disk-encryption=CMEK \
    --metadata='proxy-mode=project_editors'

Ersetzen Sie Folgendes:

  • REGION: Die Region, in der Sie den Schlüsselbund erstellt haben und in der Sie Ihre nutzerverwaltete Notebookinstanz erstellen möchten.
  • IMAGE_FAMILY: Die Image-Familie, die Sie zum Erstellen Ihrer nutzerverwalteten Notebookinstanz verwenden möchten
  • KEY_NAME: Den Name des Schlüssels, den Sie unter Schlüsselbund und Schlüssel erstellen erstellt haben
  • KMS_PROJECT_ID: Die ID Ihres Cloud KMS-Projekts
  • KEY_RING_NAME: Den Schlüsselbund, den Sie unter Schlüsselbund und Schlüssel erstellen erstellt haben

Nächste Schritte