CMEK mit Dataproc Serverless verwenden

Wenn Sie Dataproc Serverless verwenden, werden Daten auf Laufwerken serverlose Infrastruktur und Cloud Storage Staging-Bucket Diese Daten werden mit einem von Google generierten Datenverschlüsselungsschlüssel (Data Encryption Key, DEK) verschlüsselt und den Schlüsselverschlüsselungsschlüssel (Key Encryption Key, KEK). Sie können einen vom Kunden verwalteten Verschlüsselungsschlüssel verwenden (CMEK) zum Erstellen, Verwenden und Widerrufen des Schlüsselverschlüsselungsschlüssels (Key Encryption Key, KEK). Google behält die Kontrolle über den DEK. Weitere Informationen zu Datenverschlüsselungsschlüsseln von Google finden Sie unter Standardverschlüsselung inaktiver Daten:

CMEK verwenden

Führen Sie die Schritte in diesem Abschnitt aus, um mit einem CMEK Daten zu verschlüsseln, die von Dataproc Serverless schreibt in den nichtflüchtigen Speicher und den Dataproc-Staging-Bucket.

  1. Erstellen Sie einen Schlüssel mit dem Cloud Key Management Service (Cloud KMS):

  2. Kopieren Sie den Ressourcennamen.

    <ph type="x-smartling-placeholder">
    </ph>
    Der Ressourcenname wird so erstellt:
    projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
    

  3. Dienst-Agent für Compute Engine, Dataproc und Cloud Storage aktivieren Dienstkonten für die Verwendung Ihres Schlüssels:

    1. Weitere Informationen finden Sie unter Ressourcen mit Cloud KMS-Schlüsseln schützen &gt; Erforderliche Rollen. um dem Nutzer die Rolle Cloud KMS CryptoKey Encrypter/Decrypter zuzuweisen. Dienstkonto des Compute Engine-Dienst-Agents. Wenn dieses Dienstkonto nicht aufgeführt ist Klicken Sie in der Google Cloud Console auf der IAM-Seite auf Von Google bereitgestellte Rollenzuweisungen einbeziehen. um sie aufzulisten.
    2. Weisen Sie den Cloud KMS CryptoKey Encrypter/Decrypter zu. Rolle für das Dataproc-Dienst-Agent-Dienstkonto. Sie können die Google Cloud CLI verwenden, um die Rolle zuzuweisen:

       gcloud projects add-iam-policy-binding KMS_PROJECT_ID \
       --member serviceAccount:service-PROJECT_NUMBER@dataproc-accounts.iam.gserviceaccount.com \
       --role roles/cloudkms.cryptoKeyEncrypterDecrypter
      

      Ersetzen Sie Folgendes:

      KMS_PROJECT_ID ist die ID Ihres Google Cloud-Projekts, das führt Cloud KMS aus. Dieses Projekt kann auch das Projekt sein, in dem Dataproc-Ressourcen ausgeführt werden.

      PROJECT_NUMBER: die Projektnummer (nicht die Projekt-ID) des Google Cloud-Projekts, in dem Dataproc-Ressourcen ausgeführt werden.

    3. Aktivieren Sie die Cloud KMS API für das Projekt, in dem serverlose Dataproc-Ressourcen ausgeführt werden.

    4. Wenn die Dataproc-Dienst-Agent-Rolle nicht mit dem Dataproc-Dienst-Agent-Dienstkonto verknüpft ist: und dann die Berechtigung serviceusage.services.use zum benutzerdefinierten Rolle, die mit dem Dataproc-Dienst-Agent-Dienstkonto verknüpft ist. Wenn die Dataproc-Dienst-Agent-Rolle mit dem Dataproc-Dienst-Agent-Dienstkonto verknüpft ist, können Sie diesen Schritt überspringen.

    5. Folgen Sie der Anleitung, um Fügen Sie Ihren Schlüssel im Bucket hinzu.

  4. Wenn Sie Senden Sie eine Batcharbeitslast:

    1. Gib deinen Schlüssel im Batch an kmsKey .
    2. Geben Sie in der Datei Batch den Namen Ihres Cloud Storage-Bucket an. stagingBucket-Parameter.