Kundenverwaltete Verschlüsselungsschlüssel verwenden

Auf dieser Seite wird erläutert, wie Sie vom Kunden verwaltete Verschlüsselungsschlüssel (CMEK) verwenden. um Dataproc Metastore-Dienste zu schützen. CMEK bietet Verschlüsselung von mit einem Schlüssel, den Sie über den Cloud Key Management Service steuern können. Sie können die Schlüssel als Softwareschlüssel, in einem HSM-Cluster oder extern

Hinweise

Wenn Ihr Dataproc Metastore-Dienst in einem VPC Service Controls-Perimeter definieren, müssen Sie Fügen Sie die Cloud Key Management Service (Cloud KMS) API dem Perimeter hinzu.

CMEK-Unterstützung für Dataproc Metastore konfigurieren

Zum Konfigurieren der CMEK-Unterstützung für Dataproc Metastore muss dem Dataproc Metastore zuerst die Berechtigung für den Cloud KMS-Schlüssel gewähren und Cloud Storage-Dienstkonten. Dann können Sie einen Dataproc Metastore der einen CMEK-Schlüssel verwendet.

Cloud KMS-Schlüsselberechtigungen gewähren

Verwenden Sie die folgenden Befehle, um Cloud KMS-Schlüsselberechtigungen für Dataproc Metastore zu gewähren:

gcloud

  1. Erstellen Sie in Cloud KMS einen CMEK-Schlüssel, sofern noch keiner vorhanden ist. Der folgende Befehl ist ein Beispiel für das Erstellen eines Softwareschlüssels:

    gcloud config set project PROJECT_ID
    gcloud kms keyrings create KEY_RING \
      --project KEY_PROJECT \
      --location=LOCATION
    gcloud kms keys create KEY_NAME \
      --project KEY_PROJECT \
      --location=LOCATION \
      --keyring=KEY_RING \
      --purpose=encryption

    Ebenso können Sie einen HSM-Schlüssel erstellen oder Erstellen Sie einen EKM-Schlüssel.

  2. Erteilen Sie dem Dienstkonto des Dataproc Metastore-Dienst-Agent Berechtigungen:

    gcloud kms keys add-iam-policy-binding KEY_NAME \
      --location LOCATION \
      --keyring KEY_RING \
      --member=serviceAccount:$(gcloud beta services identity create \
      --service=metastore.googleapis.com 2>&1 | awk '{print $4}') \
      --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
  3. Gewähren Sie dem Cloud Storage-Dienstkonto Berechtigungen:

    gcloud storage service-agent --authorize-cmek projects/KEY_PROJECT/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME

Dataproc Metastore-Dienst mit CMEK-Schlüssel erstellen

Führen Sie die folgenden Schritte aus, um die CMEK-Verschlüsselung während der Diensterstellung zu konfigurieren:

Console

  1. Öffnen Sie in der Google Cloud Console die Seite „Dataproc Metastore“:

    Zu Dataproc Metastore

  2. Klicken Sie oben auf der Seite Dataproc Metastore auf Erstellen.

    Die Seite Dienst erstellen wird geöffnet.

  3. Konfigurieren Sie Ihren Dienst nach Bedarf.

  4. Klicken Sie unter Verschlüsselung auf Vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) verwenden.

  5. Wählen Sie den vom Kunden verwalteten Schlüssel aus.

  6. Klicken Sie auf Senden.

Prüfen Sie die Verschlüsselungskonfiguration des Dienstes:

  1. Öffnen Sie in der Google Cloud Console die Seite „Dataproc Metastore“:

    Zur Google Cloud Console

  2. Klicken Sie auf der Seite Dataproc Metastore auf den Namen des den Sie sich ansehen möchten.

    Die Seite Dienstdetails für diesen Dienst wird geöffnet.

  3. Prüfen Sie auf dem Tab Konfiguration, ob in den Details CMEK als aktiviert angezeigt wird.

gcloud

  1. Führen Sie den Befehl gcloud metastore services create aus, um einen Dienst mit CMEK-Verschlüsselung zu erstellen:

    gcloud metastore services create SERVICE \
       --encryption-kms-key=KMS_KEY
    

    Ersetzen Sie Folgendes:

    • SERVICE: Der Name des neuen Dienstes.
    • KMS_KEY: Bezieht sich auf die ID der Hauptressource.
  2. Prüfen Sie, ob die Erstellung erfolgreich war.

Dataproc Metastore-Daten, die durch von Google bereitgestellte Verschlüsselungsschlüssel geschützt sind

Die Cloud Monitoring-Datenbank unterstützt keine CMEK-Verschlüsselung. Stattdessen werden in Google Cloud Google-Verschlüsselungsschlüssel verwendet, um die Namen und Dienstkonfigurationen Ihrer Dataproc Metastore-Dienste zu schützen.

Daten von und zu einem CMEK-fähigen Dienst importieren und exportieren

Wenn Sie möchten, dass Ihre Daten während eines Imports mit einem vom Kunden verwalteten Schlüssel verschlüsselt bleiben, müssen Sie für den Cloud Storage-Bucket CMEK festlegen, bevor Sie Daten aus ihm importieren.

Sie können aus einem Cloud Storage-Bucket importieren, der nicht mit CMEK geschützt ist. Nachher werden die in Dataproc Metastore gespeicherten Daten geschützt. gemäß den CMEK-Einstellungen des Zieldienstes.

Beim Exportieren wird der exportierte Datenbank-Dump gemäß der CMEK-Einstellungen des Ziel-Storage-Buckets.

Einschränkungen bei CMEK für Dataproc Metastore

  • Wenn Sie den CMEK für einen CMEK-fähigen Dienst deaktivieren oder löschen, kann der Dienst nicht mehr verwendet und nicht wiederhergestellt werden.

    • Die Daten gehen dann endgültig verloren.
  • Sie können keine vom Kunden verwalteten Verschlüsselungsschlüssel auf einer vorhandenen Instanz aktivieren.

  • Sie können den Schlüssel, der von einem CMEK-fähigen Dienst verwendet wird, nicht rotieren.

  • Ein CMEK-fähiger Dienst unterstützt die Data Catalog-Synchronisierung nicht. Wird bei einem CMEK-fähigen Dienst die Data Catalog-Synchronisierung aktiviert, tritt ein Fehler auf. Außerdem können Sie keinen neuen Dienst erstellen, wenn beide Features aktiviert sind.

  • Sie können keine vom Kunden verwalteten Verschlüsselungsschlüssel verwenden, um Nutzerdaten wie Anfragen und Antworten von Nutzern während der Übertragung 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 während der Erstellungsphase des Dataproc Metastore-Dienstes kann nicht erstellt werden. Wenn der Schlüssel nach dem Erstellen eines Dataproc Metastore-Dienstes nicht mehr verfügbar ist, ist auch der Dienst nicht verfügbar, bis der Schlüssel wieder verfügbar ist. Weitere Informationen zur Verwendung externer Schlüssel finden Sie unter Überlegungen zu Cloud EKM.

Nächste Schritte