Kundenverwaltete Verschlüsselungsschlüssel (Customer Managed Encryption Keys, CMEK) verwenden
Standardmäßig verschlüsselt Colab Enterprise ruhende Kundeninhalte. Die Verschlüsselung wird von Colab Enterprise für Sie übernommen. Weitere Maßnahmen Ihrerseits sind nicht erforderlich. Diese Option heißt Google-Standardverschlüsselung.
Wenn Sie Ihre Verschlüsselungsschlüssel selbst verwalten möchten, können Sie vom Kunden verwaltete Verschlüsselungsschlüssel (CMEKs, Customer-Managed Encryption Keys) in Cloud KMS mit CMEK-integrierten Diensten wie Colab Enterprise verwenden. Mit Cloud KMS-Schlüsseln haben Sie die Kontrolle über Schutzlevel, Speicherort, Rotationszeitplan, Nutzungs- und Zugriffsberechtigungen sowie über kryptografische Grenzen. Mit Cloud KMS können Sie außerdem Audit-Logs aufrufen und den Lebenszyklus von Schlüsseln steuern. Statt es Google zu überlassen, die symmetrischen Schlüsselverschlüsselungsschlüssel (Key Encryption Keys, KEKs) zum Schutz Ihrer Daten zu besitzen und zu verwalten, können Sie diese auch über Cloud KMS steuern und verwalten.
Nachdem Sie Ihre Ressourcen mit CMEKs eingerichtet haben, ähnelt der Zugriff auf Ihre Colab Enterprise-Ressourcen der Verwendung der Standard-Verschlüsselung von Google. Weitere Informationen zu Ihren Verschlüsselung soptionen finden Sie unter Kundenverwaltete Verschlüsselungsschlüssel (CMEK).
In diesem Leitfaden wird beschrieben, wie Sie CMEK für Colab Enterprise verwenden.
Weitere Informationen zur Verwendung von CMEK für Vertex AI finden Sie auf der Vertex AI-Seite zu CMEK.
CMEK für Colab Enterprise
Sie können CMEK verwenden, um Colab Enterprise-Laufzeiten und Notebook-Dateien (Notebooks) zu verschlüsseln.
Laufzeiten
Wenn Sie Code in einem Colab Enterprise-Notebook ausführen, wird der Code von einer Laufzeit auf einer oder mehreren virtuellen Maschinen (VMs) ausgeführt, die von Colab Enterprise verwaltet werden. Wenn Sie CMEK für Ihre Colab Enterprise-Laufzeiten aktivieren, wird der von Ihnen festgelegte Schlüssel anstelle eines von Google verwalteten Schlüssels verwendet, um Daten auf diesen VMs zu verschlüsseln. Der CMEK-Schlüssel verschlüsselt die folgenden Arten von Daten:
- Die Kopie Ihres Codes auf den VMs.
- Alle Daten, die von Ihrem Code geladen werden.
- Alle temporären Daten, die durch den Code auf dem lokalen Laufwerk gespeichert werden.
Sie können Ihre Laufzeit starten, beenden und aktualisieren, ohne dass sich dies auf die CMEK-Verschlüsselung auswirkt.
Im Allgemeinen verschlüsselt der CMEK-Schlüssel keine Metadaten, die mit Ihrem Vorgang verknüpft sind, z. B. den Namen der Laufzeit oder den Namen und die Region Ihres Notebooks. Diese Metadaten werden immer mit dem Standardverschlüsselungsmechanismus von Google verschlüsselt.
Notebooks
Colab Enterprise-Notebooks werden in Dataform-Repositories gespeichert. Wenn Sie ein Notebook erstellen, erstellt Colab Enterprise automatisch ein verborgenes Dataform-Repository, in dem das Notebook gespeichert wird. Da das Repository verborgen ist, können Sie die Verschlüsselungseinstellungen nicht wie bei anderen Dataform-Repositories ändern.
Wenn Sie CMEK für Ihre Notebooks verwenden möchten, müssen Sie einen Standard-Dataform CMEK-Schlüssel für das Google Cloud Projekt festlegen, das Ihre Notebooks enthält. Nachdem Sie einen Standard-Dataform-CMEK-Schlüssel festgelegt haben, wendet Dataform den Schlüssel standardmäßig auf alle neuen Repositorys an, die im Google Cloud Projekt erstellt werden, einschließlich aller verborgenen Repositorys, die zum Speichern Ihrer Notebooks erstellt wurden.
Der Standard-Dataform-CMEK-Schlüssel wird nicht auf vorhandene Repositorys angewendet. Wenn Sie also bereits Notebooks in diesem Projekt haben, werden sie nicht mit dem Standard-Dataform-CMEK-Schlüssel verschlüsselt. Wenn Sie CMEK mit einem Notebook verwenden möchten, das erstellt wurde, bevor Sie den Standard-Dataform-CMEK-Schlüssel Ihres Projekts festgelegt haben, können Sie die Notebook-Datei als neues Colab Enterprise-Notebook speichern.
Weitere Informationen zu Standard-Dataform-CMEK-Schlüsseln finden Sie unter Standard-CMEK-Schlüssel von Dataform verwenden.
Informationen zum Verwenden von CMEK für Ihre Notebooks finden Sie unter Standard- Dataform-CMEK-Schlüssel festlegen.
Unterstützte Schlüssel
Colab Enterprise unterstützt die folgenden Arten von CMEK-Schlüsseln:
Die Schlüsselverfügbarkeit variiert je nach Schlüsseltyp und Region. Weitere Informationen zur geografischen Verfügbarkeit von CMEK-Schlüsseln finden Sie unter Cloud KMS-Standorte.
Limits und Einschränkungen
Colab Enterprise unterstützt CMEK mit den folgenden Limits und Einschränkungen:
- Das Standardkontingent in Vertex AI ist ein Verschlüsselungsschlüssel pro Projekt und Region. Wenn Sie mehr als einen Schlüssel für eine Region in Ihrem Projekt registrieren müssen, wenden Sie sich an Ihr Google Konten-Team, um eine Erhöhung des Kontingents für CMEK-Konfigurationen zu beantragen. Geben Sie dabei an, warum Sie mehr als einen Schlüssel benötigen.
Cloud KMS-Kontingente und Colab Enterprise
Wenn Sie CMEK in Colab Enterprise verwenden, können Ihre Projekte Kontingente für kryptografische Cloud KMS-Anfragen verbrauchen. Ver- und Entschlüsselungsvorgänge über CMEK-Schlüssel wirken sich nur dann auf Cloud KMS-Kontingente aus, wenn Sie Hardware- (Cloud HSM) oder externe Schlüssel (Cloud EKM) verwenden. Weitere Informationen finden Sie unter Cloud KMS-Kontingente.
CMEK für Ihre Laufzeiten konfigurieren
In den folgenden Abschnitten wird gezeigt, wie Sie einen Schlüsselbund und einen Schlüssel in Cloud Key Management Service erstellen, Colab Enterprise-Berechtigungen zum Verschlüsseln und Entschlüsseln für Ihren Schlüssel gewähren und eine Laufzeitvorlage erstellen, die für die Verwendung von CMEK konfiguriert ist. Jede Laufzeit, die von Colab Enterprise aus dieser Laufzeitvorlage generiert wird, verwendet die CMEK-Verschlüsselung.
Hinweis
In diesem Leitfaden wird davon ausgegangen, dass Sie zwei separate Google Cloud Projekte verwenden, um CMEK für Colab Enterprise-Laufzeiten zu konfigurieren:
- Ein Projekt zur Verwaltung Ihres Verschlüsselungsschlüssels, das als „Cloud KMS-Projekt“ bezeichnet wird.
- Ein Projekt für den Zugriff auf Ihre Colab Enterprise-Ressourcen und die Interaktion mit anderen Google Cloud Produkten, die Sie benötigen (als "Notebook-Projekt" bezeichnet).
Diese empfohlene Einrichtung unterstützt eine Aufgabentrennung.
Alternativ können Sie ein einzelnes Google Cloud Projekt für den gesamten Leitfaden verwenden. Nutzen Sie dazu dasselbe Projekt für alle folgenden Aufgaben, die sich auf das Cloud KMS-Projekt beziehen, und die Aufgaben, die sich auf das Notebook-Projekt beziehen.
Cloud KMS-Projekt einrichten
- Melden Sie sich in Ihrem Google Cloud Konto an. Wenn Sie noch kein Konto bei Google Cloudhaben, erstellen Sie ein Konto, um die Leistung 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud KMS API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud KMS API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Notebook-Projekt einrichten
- Melden Sie sich in Ihrem Google Cloud Konto an. Wenn Sie noch kein Konto bei Google Cloudhaben, erstellen Sie ein Konto, um die Leistung 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Vertex AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Vertex AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Google Cloud CLI einrichten
Die gcloud CLI ist für einige Schritte in diesem Leitfaden erforderlich und für andere optional.Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:
gcloud initWenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
Schlüsselbund und Schlüssel erstellen
Folgen Sie dem Cloud KMS-Leitfaden zum Erstellen von synchronen Schlüsseln, um einen Schlüsselbund und einen Schlüssel zu erstellen. Geben Sie beim Erstellen des Schlüsselbunds als Standort des Schlüsselbunds eine Region an, die Colab Enterprise-Vorgänge unterstützt. Colab Enterprise unterstützt CMEK nur, wenn Ihre Laufzeit und Ihr Schlüssel dieselbe Region verwenden. Sie dürfen keinen dual-regionalen, multiregionalen oder globalen Standort für Ihren Schlüsselbund angeben.
Achten Sie darauf, Schlüsselbund und Schlüssel in Ihrem Cloud KMS-Projekt zu erstellen.
Colab Enterprise-Berechtigungen gewähren
Wenn Sie CMEK für Ihre Ressourcen verwenden möchten, müssen Sie Colab Enterprise die Berechtigung gewähren, Daten mit Ihrem Schlüssel zu verschlüsseln und zu entschlüsseln.
Colab Enterprise verwendet einen von Google verwalteten
Dienstagent, um
Vorgänge mit Ihren Ressourcen auszuführen. Dieses Dienstkonto wird durch eine E-Mail
Adresse im folgenden Format identifiziert:
service-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com.
Das Dienstkonto für Ihr
Notebook-Projekt finden Sie in der
Google Cloud Console auf der Seite IAM. Suchen Sie das Mitglied mit diesem
E-Mail-Adressformat, wobei die Variable NOTEBOOK_PROJECT_NUMBER der Projekt
nummer Ihres Notebook-Projekts entspricht. Das Dienstkonto hat auch den Namen Vertex AI Service Agent.
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. Sie können die Berechtigung mithilfe der Google Cloud Console oder mithilfe der Google Cloud CLI gewähren:
Google Cloud Console
Klicken Sie in der Google Cloud Console auf Sicherheit und wählen Sie Schlüsselverwaltung aus. Dadurch gelangen Sie zur Seite Kryptografische Schlüssel und wählen Ihr Cloud KMS-Projekt aus.
Klicken Sie auf den Namen des Schlüsselbunds, den Sie in einem vorherigen Abschnitt dieses Leitfadens erstellt haben, um zur Seite Schlüsselbunddetails zu gelangen.
Klicken Sie auf das Kästchen für den Schlüssel, den Sie in einem der vorherigen Abschnitte dieses Leitfadens erstellt haben. Wenn ein Infofeld mit dem Namen Ihres Schlüssels noch nicht geöffnet ist, klicken Sie auf Infofeld ansehen.
Klicken Sie im Infofeld auf Mitglied hinzufügen, um das Dialogfeld Mitglieder zu "KEY_NAME" zu öffnen. Führen Sie in diesem Dialogfeld folgende Schritte aus:
Geben Sie im Feld Neue Mitglieder die E-Mail-Adresse des Dienstkontos ein, die Sie im vorherigen Abschnitt notiert haben:
service-NOTEBOOK_PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.comKlicken Sie in der Drop-down-Liste Rolle auswählen auf Cloud KMS und wählen Sie dann die Rolle Cloud KMS CryptoKey-Verschlüsseler/Entschlüsseler aus.
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-NOTEBOOK_PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
Ersetzen Sie in diesem Befehl die folgenden Platzhalter:
- KEY_NAME: Name des Schlüssels, den Sie in diesem Abschnitt des Leitfadens erstellt haben.
- KEY_RING_NAME: Schlüsselbund, den Sie in diesem Abschnitt des Leitfadens erstellt haben.
- REGION: Region, in der Sie Ihren Schlüsselbund erstellt haben.
- KMS_PROJECT_ID: ID Ihres Cloud KMS-Projekts.
- NOTEBOOK_PROJECT_NUMBER: Projektnummer Ihres Notebook-Projekts, die Sie im vorherigen Abschnitt als Teil der E-Mail-Adresse eines Dienstkontos notiert haben.
Laufzeitvorlage mit dem KMS-Schlüssel konfigurieren
Wenn Sie eine neue von CMEK unterstützte Ressource erstellen, können Sie Ihren Schlüssel als einen der Erstellungsparameter angeben. Um eine Colab Enterprise-Laufzeit zu erstellen, erstellen Sie eine Laufzeitvorlage, in der Ihr CMEK-Schlüssel als Parameter angegeben ist. Jede Laufzeit, die von Colab Enterprise aus dieser Laufzeitvorlage generiert wird, verwendet die CMEK-Verschlüsselung.
Wenn Sie eine Laufzeitvorlage über die Google Cloud Console erstellen möchten, geben Sie den Schlüssel im Dialogfeld Neue Laufzeitvorlage erstellen an. Gehen Sie dazu so vor:
-
Rufen Sie in der Google Cloud Console die Seite Laufzeitvorlagen von Colab Enterprise auf.
-
Klicken Sie auf Neue Vorlage.
Das Dialogfeld Neue Laufzeitvorlage erstellen wird angezeigt.
-
Wählen Sie im Abschnitt Compute konfigurieren unter Verschlüsselung die Option Cloud KMS-Schlüssel aus.
-
Wählen Sie unter Schlüsseltyp die Option Cloud KMS und dann im nächsten Feld Ihren kundenverwalteten Verschlüsselungsschlüssel aus.
-
Schließen Sie den Rest des Dialogfelds zur Instanzerstellung ab, und klicken Sie dann auf Erstellen.
Ihre Laufzeitvorlage wird auf dem Tab Laufzeitvorlagen in der Liste angezeigt.
Nächste Schritte
- Informationen zum Verwenden von CMEK für Ihre Notebooks finden Sie unter Standard- Dataform-CMEK-Schlüssel festlegen.
- Weitere Informationen zu CMEK auf Google Cloud.
- Informationen zum Verwenden von CMEK mit anderen Google Cloud Produkten.