Workstation-Ressourcen mit CMEK verschlüsseln

In Cloud Workstations werden inaktive Kundendaten standardmäßig verschlüsselt. Die Verschlüsselung wird von Cloud Workstations durchgeführt. Sie müssen nichts weiter tun. Diese Option wird Google-Standardverschlüsselung genannt.

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 Cloud Workstations 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 die Schlüsselnutzung im Blick behalten, Audit-Logs aufrufen und den Lebenszyklus von Schlüsseln steuern. Statt es Google zu überlassen und zu verwalten, das die symmetrischen Schlüsselverschlüsselungsschlüssel (Key Encryption Keys, KEKs) zum Schutz Ihrer Daten enthält, können Sie diese auch über Cloud KMS steuern und verwalten.

Nachdem Sie Ihre Ressourcen mit CMEKs eingerichtet haben, ähnelt der Zugriff auf Ihre Cloud Workstations-Ressourcen der Verwendung der Google-Standardverschlüsselung. Weitere Informationen zu den Verschlüsselungsoptionen finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel (CMEK).

Standardmäßig verwendet Cloud Workstations einen Google-owned and Google-managed encryption key, um Workstation-Ressourcen wie VMs und nichtflüchtige Laufwerke zu verschlüsseln, wenn sich Daten im Ruhezustand befinden. Wenn Sie bestimmte Compliance- oder behördliche Anforderungen in Bezug auf die Schlüssel zum Schutz Ihrer Daten haben, können Sie vom Kunden verwaltete Verschlüsselungsschlüssel (Customer-Managed Encryption Keys, CMEK) mit dem Cloud Key Management Service (Cloud KMS) verwenden.

Weitere Informationen zu CMEK und deren Aktivierung finden Sie in der Cloud KMS-Dokumentation.

Hinweise

Projekte erstellen

  1. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl die folgenden Google CloudProjekte aus oder erstellen Sie sie:

    • Ein Schlüsselprojekt enthält Ihre Cloud KMS-Ressourcen, einschließlich eines Schlüsselbunds und eines symmetrischen Verschlüsselungsschlüssels.

    • Ein Arbeitsstationsprojekt enthält Workstations, die mit einem CMEK-Schlüssel verschlüsselt sind.

    Sie können dasselbe Projekt für Ihr Schlüsselprojekt und Ihr Workstation-Projekt verwenden. Wir empfehlen jedoch, zwei Projekte zu verwenden, um die Aufgabentrennung zu gewährleisten.

  2. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. Weitere Informationen finden Sie unter Abrechnungsstatus Ihrer Projekte prüfen.

  3. Aktivieren Sie die erforderlichen APIs in jedem Projekt.

  4. Installieren und initialisieren Sie die gcloud-Befehlszeile:

    1. Eine Anleitung zum Installieren der gcloud CLI finden Sie unter gcloud CLI installieren. Folgen Sie der Anleitung für Ihr Betriebssystem.

    2. Weitere Informationen zum Initialisieren der gcloud CLI finden Sie unter gcloud CLI initialisieren. Sie können auch den folgenden Befehl ausführen:

      gcloud init
      

Erforderliche Rollen

Sie können zwar derselben Person die Rollen „Cloud KMS-Administrator“ und „Cloud Workstations-Administrator“ zuweisen, wir empfehlen jedoch, beim Zuweisen von Rollen das Prinzip der geringsten Berechtigung zu beachten. Es empfiehlt sich, diese Rollen zwei verschiedenen Personen zuzuweisen und sie zu bitten, sich abzustimmen, anstatt Ihren Cloud KMS-Administrator auch als Cloud Workstations Admin zu bitten. Weitere Informationen finden Sie unter Best Practices für die Sicherheit und IAM sicher verwenden.

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Einrichten von CMEK benötigen:

  • Wenn Sie die Rolle Cloud KMS-Administrator haben, bitten Sie Ihren Administrator, Ihnen die folgende Rolle zu gewähren, damit Sie Cloud KMS-Ressourcen erstellen und verwalten können: Cloud KMS-Administrator (roles/cloudkms.admin) für Ihr Schlüsselprojekt.
  • Wenn Sie Cloud Workstations-Administrator sind, bitten Sie Ihren Administrator, Ihnen die folgende Rolle zu erteilen, damit Sie Workstations erstellen und aktualisieren können: Cloud Workstations Admin (roles/workstations.admin) für Ihr Workstations-Projekt.

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Schlüsselbund und Verschlüsselungsschlüssel erstellen

Erstellen Sie in Ihrem Schlüsselprojekt einen Schlüssel und speichern Sie die Ressourcen-ID des Schlüssels:

  1. Erstellen oder wählen Sie einen Schlüsselbund aus.

    Der Schlüsselbund muss sich in derselben Region wie Ihr Workstation-Cluster befinden. Cloud Workstations unterstützt keine multiregionalen oder globalen Cloud KMS-Standorte.

    Sie können Schlüsselringe für Dienste freigeben. Wir empfehlen jedoch, für jede geschützte Ressource einen anderen Schlüssel zu verwenden. Siehe Aufgabentrennung

  2. Erstellen Sie einen symmetrischen Verschlüsselungsschlüssel.

  3. Rufen Sie die Ressourcen-ID des Schlüssels ab und speichern Sie sie für einen späteren Schritt.

Zugriff auf Ihren Verschlüsselungsschlüssel gewähren

Cloud Workstations verwendet die folgenden Dienstkonten, um die Verschlüsselung Ihrer Ressourcen zu verwalten:

  1. Der Cloud Workstations-Dienst-Agent: Mit diesem Konto erkennt Cloud Workstations, wenn Ihr Schlüssel rotiert wird.

  2. Das Cloud KMS-Schlüsseldienstkonto: Sie stellen ein Dienstkonto bereit, mit dem Cloud-Arbeitsstationen auf Ihren Schlüssel zugreifen können, um Ressourcen zu verschlüsseln und zu entschlüsseln.

Cloud KMS-Rolle „Betrachter“ dem Dienst-Agent für Cloud-Arbeitsstationen zuweisen

Mit dem Cloud Workstations-Dienstagenten können Cloud Workstations Dienstaufgaben für Ihr Projekt ausführen. Dieser Dienst-Agent wurde automatisch erstellt, als Sie den Cloud Workstations-Dienst in Ihrem Arbeitsstationsprojekt aktiviert haben. Damit CMEK ordnungsgemäß funktioniert, müssen Sie dem Cloud Workstations-Dienst-Agent für Ihr Workstations-Projekt die Rolle „Cloud KMS-Betrachter“ (roles/cloudkms.viewer) für den Cloud KMS-Schlüssel zuweisen, damit Cloud Workstations die Schlüsselrotation erkennen kann.

  1. Verwenden Sie den folgenden Befehl, um den Cloud Workstations-Dienst-Agent für Ihr Workstation-Projekt abzurufen:

    gcloud beta services identity create \
        --service=workstations.googleapis.com \
        --project=WORKSTATIONS_PROJECT_ID
    

    Ersetzen Sie WORKSTATIONS_PROJECT_ID durch die ID Ihres Workstation-Projekts.

    Der Cloud Workstations-Dienst-Agent verwendet das folgende Format:
    service-$WORKSTATIONS_PROJECT_NUMBER@gcp-sa-workstations.iam.gserviceaccount.com.

  2. Weisen Sie dem Cloud Workstations-Dienst-Agent die Rolle „Cloud KMS Viewer“ (roles/cloudkms.viewer) für den CMEK-Schlüssel zu. So können Cloud Workstations die Schlüsselrotation erkennen und Ressourcen nach Bedarf in Ihrem Projekt neu verschlüsseln.

    gcloud kms keys add-iam-policy-binding \
        KEY_NAME \
        --keyring=KEY_RING \
        --location=LOCATION \
        --project=KMS_PROJECT_ID \
        --role=roles/cloudkms.viewer \
        --member=CLOUD_WORKSTATIONS_SERVICE_AGENT
    

    Ersetzen Sie Folgendes:

    • KEY_NAME: der Name des Schlüssels
    • KEY_RING: der Name des Schlüsselbunds
    • LOCATION: der Speicherort Ihres Schlüsselbunds
    • KMS_PROJECT_ID: die ID des Projekts, das Ihren Schlüssel enthält.
    • CLOUD_WORKSTATIONS_SERVICE_AGENT: den Cloud Workstations-Dienst-Agenten, den Sie im vorherigen Schritt abgerufen haben.

    Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help aus.

Cloud KMS-Schlüsseldienstkonto einrichten

Cloud Workstations verwendet ein von Ihnen ausgewähltes Dienstkonto, um die Verschlüsselung und Entschlüsselung mit Ihrem vom Kunden verwalteten Schlüssel durchzuführen. Wir bezeichnen dieses Konto als Cloud KMS-Schlüsseldienstkonto. Sie können ein neues Dienstkonto erstellen oder ein vorhandenes verwenden. Für dieses Konto gelten folgende Anforderungen:

  • Der Administrator von Cloud Workstations muss die Berechtigung iam.serviceAccounts.actAs für dieses Dienstkonto haben.
  • Dem ausgewählten Dienstkonto muss die Cloud KMS-Rolle CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter) für Ihren Cloud KMS-Schlüssel zugewiesen sein.
  1. Wenn Sie ein neues Dienstkonto erstellen möchten, verwenden Sie den folgenden Befehl:

    gcloud iam service-accounts create \
      KMS_KEY_SERVICE_ACCOUNT_NAME \
      --display-name="Service account for Cloud Workstations CMEK" \
      --project=WORKSTATIONS_PROJECT_ID
    

    Ersetzen Sie Folgendes:

    • KMS_KEY_SERVICE_ACCOUNT_NAME ist der Name des Dienstkontos.
    • WORKSTATIONS_PROJECT_ID: die ID Ihres Workstation-Projekts.

    Das von Ihnen erstellte Dienstkonto hat eine E-Mail-Adresse im folgenden Format: KMS_KEY_SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com.

    Speichern Sie die E-Mail-Adresse des Dienstkontos für einen späteren Schritt.

  2. Wenn Sie dem Cloud Workstations Admin die IAM-Rolle Service Account User (roles/iam.serviceAccountUser) für das Cloud KMS-Schlüsseldienstkonto zuweisen möchten, führen Sie den folgenden Befehl aus:

    gcloud iam service-accounts add-iam-policy-binding \
        KMS_KEY_SERVICE_ACCOUNT_EMAIL \
        --member="user:CLOUD_WORKSTATIONS_ADMIN_EMAIL" \
        --project=WORKSTATIONS_PROJECT_ID \
        --role=roles/iam.serviceAccountUser
    

    Ersetzen Sie Folgendes:

    • KMS_KEY_SERVICE_ACCOUNT_EMAIL: die E-Mail-Adresse des Cloud KMS-Schlüsseldienstkontos.
    • CLOUD_WORKSTATIONS_ADMIN_EMAIL: Die E-Mail-Adresse des Cloud Workstations-Administrators.
    • WORKSTATIONS_PROJECT_ID: die ID Ihres Workstation-Projekts.
  3. Wenn Sie dem Cloud KMS-Schlüsseldienstkonto die Cloud KMS-Rolle CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter) für Ihren Cloud KMS-Schlüssel zuweisen möchten, führen Sie den folgenden Befehl aus:

      gcloud kms keys add-iam-policy-binding \
        KEY_NAME \
        --keyring KEY_RING \
        --location LOCATION \
        --project KMS_PROJECT_ID \
        --role roles/cloudkms.cryptoKeyEncrypterDecrypter \
        --member serviceAccount:KMS_KEY_SERVICE_ACCOUNT_EMAIL\
    

    Ersetzen Sie Folgendes:

    • KEY_NAME: der Name des Schlüssels
    • KEY_RING: der Name des Schlüsselbunds
    • LOCATION: der Speicherort Ihres Schlüsselbunds
    • KMS_PROJECT_ID: die ID des Projekts, das Ihren Schlüssel enthält.
    • KMS_KEY_SERVICE_ACCOUNT_EMAIL: die E-Mail-Adresse des Cloud KMS-Schlüsseldienstkontos.

    Wenn Sie Informationen zu allen Flags und möglichen Werten erhalten möchten, führen Sie den Befehl mit dem Flag --help aus.

Nach Workstationclustern suchen

Wenn in der Google Cloud Console keine Workstation-Cluster verfügbar sind, bitten Sie Ihren Cloud Workstations-Administrator, einen Workstation-Cluster in derselben Region wie der Cloud KMS-Schlüsselring für Sie zu erstellen. Alternativ können Sie prüfen, ob Sie die IAM-Rolle „Cloud Workstations Admin“ für das Projekt haben, damit Sie diese Ressourcen selbst erstellen können.

Kundenverwaltete Verschlüsselungsschlüssel verwenden

  1. Wenn Sie noch keinen Workstation-Cluster erstellt haben, erstellen Sie einen mit dem Befehl clusters create gcloud.

    gcloud workstations clusters create \
        WORKSTATIONS_CLUSTER_NAME --region=LOCATION \
        --project=WORKSTATIONS_PROJECT_ID
    

    Ersetzen Sie Folgendes:

    • WORKSTATIONS_CLUSTER_NAME: Der Name des Workstation-Clusters.
    • LOCATION: Der Regionsname für Ihren Workstation-Cluster.
    • WORKSTATIONS_PROJECT_ID: die ID Ihres Workstation-Projekts.
  2. Erstellen Sie eine Workstationkonfiguration mit encryption_key-Einstellungen.

    Wenn Sie eine Workstationkonfiguration mit dem Maschinentyp e2-standard-2, einer Inaktivitätstimeout von 3600s und CMEK-verschlüsselten Workstationressourcen erstellen möchten, führen Sie den folgenden gcloud-Befehl aus:

    gcloud workstations configs create WORKSTATIONS_CONFIG_NAME \
      --cluster=WORKSTATIONS_CLUSTER_NAME \
      --region=LOCATION \
      --machine-type="e2-standard-2" \
      --idle-timeout=3600 \
      --kms-key="projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" \
      --kms-key-service-account="KMS_KEY_SERVICE_ACCOUNT_EMAIL" \
      --project=WORKSTATIONS_PROJECT_ID
    

    Ersetzen Sie Folgendes:

    • WORKSTATIONS_CONFIG_NAME: der Name der Workstationkonfiguration.
    • WORKSTATIONS_CLUSTER_NAME: Der Name Ihres Workstation-Clusters.
    • LOCATION: Der Regionsname Ihres Clusters.
    • KMS_PROJECT_ID: Projekt-ID, ein eindeutiger String, der Ihr Projekt von allen anderen in Google Cloudunterscheidet.
    • KEY_RING: der Name des Schlüsselbunds
    • KEY_NAME: der Name des Schlüssels
    • KMS_KEY_SERVICE_ACCOUNT_EMAIL: die E-Mail-Adresse des Cloud KMS-Schlüsseldienstkontos.
    • WORKSTATIONS_PROJECT_ID: die ID Ihres Workstation-Projekts.

    Nachdem Sie eine Workstationkonfiguration erstellt haben, verschlüsselt Cloud KMS die nichtflüchtigen Laufwerke in Ihrem Projekt mit dem angegebenen Cloud KMS-Schlüssel.

Vom Kunden verwaltete Verschlüsselungsschlüssel rotieren

Wenn Sie dem Cloud Workstations-Dienst-Agent die Rolle „Cloud KMS-Betrachter“ (roles/cloudkms.viewer) für den CMEK-Schlüssel zugewiesen haben, kann der Workstation-Dienst die Schlüsselrotation erkennen und Ihren Basisdatenträger mit der neuen primären Schlüsselversion neu verschlüsseln.

Die erneute Verschlüsselung erfolgt, nachdem Sie die Workstation beendet haben. Jedes Mal, wenn Sie eine verschlüsselte Workstation beenden, prüft der Workstation-Dienst, ob der Schlüssel rotiert wurde. Wenn der Schlüssel rotiert wurde, erstellt der Workstation-Dienst einen Snapshot des Basislaufwerks Ihrer Workstation und löscht das Laufwerk. Wenn Sie die Workstation das nächste Mal starten, erstellt der Workstation-Dienst ein neues Laufwerk aus dem Snapshot mit der neuen Primärschlüsselversion.

Cloud KMS-Kontingente und Cloud Workstations

Wenn Sie CMEK in Cloud Workstations verwenden, können Ihre Projekte Kontingente für kryptografische Cloud KMS-Anfragen verbrauchen. CMEK-verschlüsselte Repositories können diese Kontingente beispielsweise pro Up- oder Download 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.

Externe Schlüssel

Sie können Cloud External Key Manager (Cloud EKM) verwenden, um Daten inGoogle Cloud mit von Ihnen verwalteten externen Schlüsseln zu verschlüsseln.

Wenn Sie einen Cloud EKM-Schlüssel verwenden, hat Google keine Kontrolle über die Verfügbarkeit Ihres extern verwalteten Schlüssels. Wenn der Schlüssel nicht mehr verfügbar ist, kann die Workstation nicht gestartet werden.

Weitere Informationen zur Verwendung externer Schlüssel finden Sie unter Cloud External Key Manager.

Nächste Schritte