CMEK für Cloud Logging konfigurieren

In diesem Dokument wird die Konfiguration und Verwaltung vom Kunden verwaltete Verschlüsselungsschlüssel (CMEK) für Cloud Logging für Ihre Compliance-Anforderungen Ihres Unternehmens. Sie können CMEK als Standard-Ressourceneinstellung für eine Organisation, einen Ordner, oder für beide. Durch die Konfiguration sorgt Cloud Logging dafür, dass alle neuen Log-Buckets in der Organisation oder im Ordner mit einem vom Kunden verwalteten Schlüssel verschlüsselt sind.

Übersicht

Cloud Logging verschlüsselt inaktive Kundendaten standardmäßig. Von Logging in Log-Buckets gespeicherte Daten werden mit Schlüsselverschlüsselungsschlüssel, ein Verfahren, das als Umschlagverschlüsselung bezeichnet wird. Der Zugriff auf Ihre Logging-Daten erfordert den Zugriff auf diese Schlüsselverschlüsselungsschlüssel, die Google für Sie verwaltet, ohne dass Sie etwas tun müssen.

Ihre Organisation kann regulatorische, Compliance- oder erweiterte Verschlüsselungsanforderungen haben, die unsere Standardverschlüsselung inaktiver Daten nicht anspricht. Um die Anforderungen Ihrer Organisation zu erfüllen, kümmert sich Google nicht um die Verwaltung der Verschlüsselungsschlüssel, die Ihre Daten schützen, können Sie mit einem CMEK steuern, und Ihre eigene Verschlüsselung verwalten.

Spezifische Informationen zu CMEK, einschließlich seiner Vorteile und Einschränkungen, Siehe Vom Kunden verwaltete Verschlüsselungsschlüssel

Wenn Sie CMEK als Standard-Ressourceneinstellung für Logging, neue Log-Buckets in der Organisation oder im Ordner werden automatisch mit dem konfigurierten Schlüssel verschlüsselt. Sie können jedoch können Sie diesen Schlüssel ändern oder Log-Buckets erstellen und einen anderen Schlüssel angeben. Weitere Informationen finden Sie unter CMEK für Log-Buckets konfigurieren

Vorbereitung

Führen Sie zunächst die folgenden Schritte aus:

  1. Bei der Verwendung von CMEK gibt es einige Einschränkungen. Vor dem Erstellen eines Log-Bucket mit aktiviertem CMEK finden Sie unter Einschränkungen.

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

    gcloud init

    Dieser Leitfaden enthält eine Anleitung zur Verwendung der Google Cloud CLI.

  3. IDs der Organisation oder des Ordners finden, für die bzw. den Sie CMEK aktivieren möchten:

    • ORGANIZATION_ID ist die eindeutige numerische Kennzeichnung des Google Cloud-Organisation, für die Sie CMEK aktivieren. Sie benötigen diesen Wert nicht, wenn Sie CMEK nur für eine Ordner. Informationen zum Abrufen dieser ID finden Sie unter Organisations-ID abrufen
    • FOLDER_ID ist die eindeutige numerische Kennzeichnung des Google Cloud-Ordner, für den Sie CMEK aktivieren. Sie benötigen diesen Wert nicht, wenn Sie CMEK nur für für ein Unternehmen. Informationen zur Verwendung von Ordnern finden Sie unter Ordner erstellen und verwalten
  4. Um die Berechtigungen zu erhalten, die Sie zum Erstellen von Schlüsseln benötigen, bitten Sie Ihren Administrator, Ihnen IAM-Rolle Cloud KMS-Administrator (roles/cloudkms.admin) für das Projekt oder eine übergeordnete Ressource. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

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

  5. Achten Sie darauf, dass Sie die folgenden Cloud Logging-Berechtigungen für den Organisation:

    • logging.settings.get
    • logging.settings.update
  6. Aktivieren Sie die Cloud KMS API für das Google Cloud-Projekt, in dem Cloud KMS ausgeführt wird.

  7. Erstellen Sie einen Schlüsselbund und Schlüssel für das Google Cloud-Projekt, in dem Cloud KMS ausgeführt wird.

    Mit Cloud Logging können Sie einen Schlüssel aus jeder Region verwenden. Wenn Sie jedoch einen Log-Bucket erstellen, muss dessen Speicherort mit dem Speicherort des Schlüssels übereinstimmen. Informationen zu unterstützten Regionen sehen Sie sich Folgendes an:

    Wenn Sie CMEK als Standard-Ressourceneinstellung konfigurieren mit den Schritten in diesem Dokument. werden in der Organisation oder im Ordner neu erstellte Log-Buckets automatisch für CMEK konfiguriert. Da der Standort eines Log-Bucket muss nach der Konfiguration mit dem Speicherort des Schlüssels übereinstimmen CMEK als Standard-Ressourceneinstellung; können nicht erstellt werden Log-Buckets in der Region global

  8. Ermitteln Sie Werte für die folgenden Cloud KMS-Parameter:

    • KMS_PROJECT_ID ist die eindeutige alphanumerische Kennung, aus dem Namen Ihres Google Cloud-Projekts und einer zugewiesene Nummer des laufenden Google Cloud-Projekts Cloud KMS Informationen zum Abrufen dieser Kennung Siehe Projekte identifizieren.
    • KMS_KEY_LOCATION ist die des Cloud KMS-Schlüssels. Region
    • KMS_KEY_RING ist die des Cloud KMS-Schlüsselbunds. Namen.
    • KMS_KEY_NAME durch den Namen des Cloud KMS-Schlüssels. Dieser hat das folgende Format: projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KEYRING/cryptoKeys/KEY

CMEK für eine Organisation oder einen Ordner aktivieren

Nachdem Sie die erforderlichen Schritte ausgeführt haben, folgen Sie dieser Anleitung, um CMEK für Ihre Google Cloud-Organisation zu aktivieren.

Dienstkonto-ID ermitteln

So ermitteln Sie die mit der Organisation oder dem Ordner verknüpfte Dienstkonto-ID Führen Sie folgenden Befehl aus, für den der CMEK gilt: gcloud logging settings describe Befehl:

ORDNER

 gcloud logging settings describe --folder=FOLDER_ID

ORGANISATION

gcloud logging settings describe --organization=ORGANIZATION_ID

Durch Ausführen des vorherigen Befehls wird ein Dienstkonto für die Organisation generiert. wenn noch keiner vorhanden ist, und gibt die ID im Feld kmsServiceAccountId zurück. Im Folgenden sehen Sie eine Beispielantwort auf den vorherigen Befehl, wenn ein Organisation angegeben ist:

kmsServiceAccountId: cmek-p12345@gcp-sa-logging.iam.gserviceaccount.com
name: organizations/ORGANIZATION_ID/settings

In diesem Beispiel hat SERVICE_ACCT_NAME den Wert cmek-p12345.

Führen Sie den Bereitstellungsprozess nur einmal pro Ressource aus. describe ausführen gibt mehrmals denselben Wert für kmsServiceAccountId zurück. ein.

Wenn Sie die Google Cloud CLI nicht verwenden können, führen Sie den Cloud Logging API-Methode getSettings.

Verschlüsseler-/Entschlüsselerrolle zuweisen

Damit CMEK genutzt werden kann, müssen Sie dem Dienstkonto die Berechtigung geben, Ihren Cloud KMS zu verwenden. Weisen Sie dem Konto hierfür die Rolle Cloud KMS CryptoKey-Verschlüsseler/Entschlüsseler zu:

gcloud

gcloud kms keys add-iam-policy-binding \
--project=KMS_PROJECT_ID \
--member serviceAccount:SERVICE_ACCT_NAME@gcp-sa-logging.iam.gserviceaccount.com \
--role roles/cloudkms.cryptoKeyEncrypterDecrypter \
--location=KMS_KEY_LOCATION \
--keyring=KMS_KEY_RING \
KMS_KEY_NAME

Legen Sie die Variablen im Befehl so fest:

  • Ersetzen Sie SERVICE_ACCT_NAME durch den serviceAccountId-Wert, den Sie im vorherigen Schritt ermittelt haben.

  • Ersetzen Sie die anderen Variablen durch die Werte, die Sie in den Voraussetzungen aus.

Console

  1. Öffnen Sie in der Google Cloud Console den Browser für Cloud Key Management Service-Schlüssel.
    Zum Browser für Cloud KMS-Schlüssel
  2. Klicken Sie auf den Namen des Schlüsselbunds, der den gewünschten Schlüssel enthält.

  3. Klicken Sie das Kästchen für den gewünschten Schlüssel an.

    Der Tab Berechtigungen wird verfügbar.

  4. Geben Sie im Dialogfeld Mitglieder hinzufügen die E-Mail-Adresse des Logging-Dienstkontos an, auf das Sie Zugriff gewähren.

  5. Wählen Sie im Drop-down-Menü Rolle auswählen die Option Cloud KMS CryptoKey-Verschlüsseler/Entschlüsseler aus.

  6. Klicken Sie auf Hinzufügen.

Organisationsrichtlinien konfigurieren

Logging unterstützt Organisationsrichtlinien, die einen CMEK erfordern können Schutz und kann einschränken, für welche Cloud KMS CryptoKeys verwendet werden können. CMEK-Schutz:

  • Wenn logging.googleapis.com in der Deny-Richtlinienliste der Dienste für die Einschränkung constraints/gcp.restrictNonCmekServices, Logging weigert sich, neue benutzerdefinierte Buckets zu erstellen, die nicht CMEK-geschützt sind. Diese Einschränkung hindert Cloud Logging jedoch nicht daran, die Log-Buckets _Required und _Default, die erstellt werden, wenn ein Google Cloud-Projekt erstellt.

  • Wenn constraints/gcp.restrictCmekCryptoKeyProjects erzwungen wird, Logging erstellt CMEK-geschützte Ressourcen, die durch einen CryptoKey aus einem zulässigen Projekt, Ordner oder einer zulässigen Organisation geschützt sind.

Weitere Informationen zu CMEK und Organisationsrichtlinien Siehe CMEK-Organisationsrichtlinien.

Wenn eine Organisationsrichtlinie mit einer CMEK-Einschränkung vorhanden ist, achten Sie darauf, dass diese Einschränkungen mit den Standard-Ressourceneinstellungen für eine Organisation oder einen Ordner. Wenn Sie Ihre Standardressourceneinstellungen ändern möchten, die standardmäßigen Ressourceneinstellungen aktualisieren, prüfen und bei Bedarf aktualisieren und die Organisationsrichtlinien.

So rufen Sie Organisationsrichtlinien auf oder konfigurieren sie:

  1. Rufen Sie in der Google Cloud Console die Seite Organisationsrichtlinien auf:

    Zu Organisationsrichtlinien

    Wenn Sie diese Seite über die Suchleiste finden, wählen Sie das Ergebnis mit der Zwischenüberschrift IAM und Verwaltung.

  2. Wählen Sie Ihre Organisation aus.
  3. Prüfen Sie die für CMEK spezifischen Einschränkungen und aktualisieren Sie sie bei Bedarf.

    Informationen zum Ändern einer Organisationsrichtlinie finden Sie unter Richtlinien erstellen und bearbeiten

Cloud Logging mit dem Cloud KMS-Schlüssel konfigurieren

So konfigurieren Sie CMEK als Standard-Ressourceneinstellung für Logging: führen Sie Folgendes aus: gcloud logging settings update Befehl:

ORDNER

gcloud logging settings update \
    --folder=FOLDER_ID \
    --kms-location=KMS_KEY_LOCATION \
    --kms-key-name=KMS_KEY_NAME \
    --kms-keyring=KMS_KEY_RING \
    --kms-project=KMS_PROJECT_ID

Der vorherige Befehl aktualisiert die zu speichernden Standardressourceneinstellungen. Informationen zum Cloud KMS-Schlüssel. Sie müssen sicherstellen, Standardspeicherort für den Ordner auf den Wert von KMS_KEY_LOCATION festgelegt ist. Wenn Sie keinen Standardspeicherort festgelegt haben oder Standort nicht mit dem Wert von KMS_KEY_LOCATION übereinstimmt, dann Fügen Sie dem vorherigen Befehl Folgendes hinzu:

--storage-location = KMS_KEY_LOCATION

Mit dem Flag --storage-location können Sie den Parameter Standardspeicherort für den Ordner.

ORGANISATION

gcloud logging settings update \
    --organization=ORGANIZATION_ID \
    --kms-location=KMS_KEY_LOCATION \
    --kms-key-name=KMS_KEY_NAME \
    --kms-keyring=KMS_KEY_RING \
    --kms-project=KMS_PROJECT_ID

Der vorherige Befehl aktualisiert die zu speichernden Standardressourceneinstellungen. Informationen zum Cloud KMS-Schlüssel. Sie müssen sicherstellen, Standardspeicherort für die Organisation auf den Wert von KMS_KEY_LOCATION festgelegt ist. Wenn Sie keinen Standardspeicherort festgelegt haben oder Standort nicht mit dem Wert von KMS_KEY_LOCATION übereinstimmt, dann Fügen Sie dem vorherigen Befehl Folgendes hinzu:

--storage-location = KMS_KEY_LOCATION

Mit dem Flag --storage-location können Sie den Parameter Standardspeicherort für die Organisation.

Nach dem Anwenden des Schlüssels werden neue Log-Buckets in der Organisation oder im Ordner erstellt sind so konfiguriert, dass ihre inaktiven Daten mit diesem Schlüssel verschlüsselt werden. Sie können auch Schlüssel ändern für einzelne Log-Buckets. Sie können keine Log-Buckets erstellen in Die Region global, da Sie einen Schlüssel verwenden müssen, dessen region entspricht dem regionalen Geltungsbereich Ihrer Daten.

Wenn Sie die Google Cloud CLI nicht verwenden können, führen Sie den Cloud Logging API-Methode updateSettings.

Schlüsselaktivierung prüfen

So prüfen Sie, ob Sie CMEK für eine Organisation aktiviert haben oder einen Ordner, führen Sie folgenden Befehl aus: gcloud logging settings describe Befehl:

ORDNER

gcloud logging settings describe --folder=FOLDER_ID

ORGANISATION

gcloud logging settings describe --organization=ORGANIZATION_ID

Der vorherige Befehl gibt den Cloud KMS-Schlüsselnamen zurück:

kmsKeyName: KMS_KEY_NAME
kmsServiceAccountId: SERVICE_ACCT_NAME@gcp-sa-logging.iam.gserviceaccount.com

Wenn das Feld kmsKeyName ausgefüllt ist, ist CMEK für die Organisation oder Ordner.

Logs an unterstützte Ziele weiterleiten

  • Cloud Logging-Log-Buckets können zum Verschlüsseln von Daten mit CMEK konfiguriert werden. Wenn Sie CMEK als Standard-Ressourceneinstellung konfigurieren für eine Organisation oder einen Ordner, neue Log-Buckets in der Organisation oder im Ordner automatisch CMEK verwenden. Sie können den Schlüssel und Sie können Log-Buckets erstellen, die einen anderen KMS-Schlüssel als der in den Standardressourceneinstellungen angegebene.

    Informationen zum CMEK, der auf Log-Buckets angewendet wird, einschließlich der Anleitung zum Ändern von CMEK. Schlüssel und Einschränkungen beim Aktivieren von CMEK für einen Log-Bucket finden Sie unter CMEK für Log-Buckets konfigurieren

  • Cloud Storage unterstützt CMEK für die Weiterleitung von Logs. Eine Anleitung dazu, wie Sie Informationen zum Konfigurieren eines CMEK für Cloud Storage finden Sie unter Vom Kunden verwaltete Verschlüsselungsschlüssel verwenden

    Wenn Daten aufgrund der Nichtverfügbarkeit von Schlüsseln verloren gehen, wenn Logdaten weitergeleitet werden an Cloud Storage hinzufügen, können Sie rückwirkend mehrere Logs gleichzeitig Cloud Storage, wenn diese Logs auch in einem Log-Bucket gespeichert sind. Weitere Informationen finden Sie unter Logeinträge kopieren.

  • BigQuery verschlüsselt inaktive Kundeninhalte standardmäßig. Weitere Informationen finden Sie unter Daten mit Cloud Key Management Service-Schlüsseln schützen.

  • Pub/Sub verschlüsselt standardmäßig inaktive Kundendaten. Weitere Informationen finden Sie unter Nachrichtenverschlüsselung konfigurieren.

Cloud KMS-Schlüssel verwalten

In folgenden Abschnitten wird erläutert, wie Sie Ihren Cloud KMS-Schlüssel ändern, den Zugriff auf ihn widerrufen oder ihn deaktivieren können.

Cloud KMS-Schlüssel ändern

So ändern Sie den Cloud KMS-Schlüssel, der mit einer Organisation oder einem erstellen Sie einen Schlüssel und aktualisieren Sie die CMEK-Einstellungen mit dem neuen Cloud KMS-Schlüsselnamen:

ORDNER

gcloud logging settings update \
    --folder=FOLDER_ID
    --kms-key-name=NEW_KMS_KEY_NAME
    --kms-location=NEW_KMS_KEY_LOCATION \
    --kms-keyring=NEW_KMS_KEY_RING \
    --kms-project=NEW_KMS_PROJECT_ID

Sie müssen sicherstellen, Standardspeicherort für den Ordner auf den Wert von KMS_KEY_LOCATION festgelegt ist. Wenn Sie keinen Standardspeicherort festgelegt haben oder Standort nicht mit dem Wert von KMS_KEY_LOCATION übereinstimmt, dann Fügen Sie dem vorherigen Befehl Folgendes hinzu:

--storage-location = NEW_KMS_KEY_LOCATION

ORGANISATION

gcloud logging settings update \
    --organization=ORGANIZATION_ID
    --kms-key-name=NEW_KMS_KEY_NAME
    --kms-location=NEW_KMS_KEY_LOCATION \
    --kms-keyring=NEW_KMS_KEY_RING \
    --kms-project=NEW_KMS_PROJECT_ID

Sie müssen sicherstellen, Standardspeicherort für die Organisation auf den Wert von KMS_KEY_LOCATION festgelegt ist. Wenn Sie keinen Standardspeicherort festgelegt haben oder Standort nicht mit dem Wert von KMS_KEY_LOCATION übereinstimmt, dann Fügen Sie dem vorherigen Befehl Folgendes hinzu:

--storage-location = NEW_KMS_KEY_LOCATION

Zugriff auf Cloud KMS-Schlüssel widerrufen

Sie können den Zugriff von Logging auf den Cloud KMS-Schlüssel widerrufen. indem Sie die IAM-Berechtigung für diesen Schlüssel.

Wenn Sie Logging den Zugriff auf einen Schlüssel entziehen, kann es bis zu bis die Änderung wirksam wird.

So widerrufen Sie den Zugriff von Logging auf den Cloud KMS-Schlüssel: Führen Sie den folgenden Google Cloud CLI-Befehl aus:

gcloud kms keys remove-iam-policy-binding \
    --project=KMS_PROJECT_ID \
    --member serviceAccount:SERVICE_ACCT_NAME@gcp-sa-logging.iam.gserviceaccount.com \
    --role roles/cloudkms.cryptoKeyEncrypterDecrypter \
    --location=KMS_KEY_LOCATION \
    --keyring=KMS_KEY_RING \
    KMS_KEY_NAME

CMEK deaktivieren

Wenn Sie den CMEK für eine Organisation oder einen Ordner deaktivieren, wird die Erzwingung der CMEK-Richtlinie entfernt Nur für zukünftige Vorgänge bleiben alle zuvor angewendeten Konfigurationen erhalten.

So deaktivieren Sie CMEK für eine Ressource, für die CMEK als konfiguriert ist: Standardressourceneinstellung verwenden, führen Sie den folgenden Google Cloud CLI-Befehl aus:

ORDNER

gcloud logging settings update --folder=FOLDER_ID --clear-kms-key

ORGANISATION

gcloud logging settings update --organization=ORGANIZATION_ID --clear-kms-key

Informationen zum Löschen eines Schlüssels finden Sie unter Schlüsselversionen löschen und wiederherstellen.

Überlegungen zur Cloud KMS-Schlüsselrotation

Cloud Logging rotiert die Verschlüsselung nicht automatisch Schlüssel für temporäre Dateien zur Notfallwiederherstellung, wenn der Cloud KMS-Schlüssel rotiert, die mit der Google Cloud-Organisation oder dem Google Cloud-Ordner verknüpft sind. Bereits vorhandene Wiederherstellungsdateien verwenden weiterhin die Schlüsselversion, mit der sie erstellt wurden. Neue Wiederherstellungsdateien verwenden die aktuelle Primärschlüsselversion.

Beschränkungen

Folgende Einschränkungen sind bekannt, wenn Sie CMEK als Standard-Ressourceneinstellung für Logging konfigurieren.

Nichtverfügbarkeit der Datei zur Notfallwiederherstellung

Ein Cloud KMS-Schlüssel gilt als verfügbar und zugänglich Logging, wenn die beiden folgenden Bedingungen zutreffen:

  • Der Schlüssel ist aktiviert.
  • Das Logging-Dienstkonto hat für den Schlüssel Berechtigungen zum Ver- und Entschlüsseln.

Wenn Logging keinen Zugriff mehr auf den Cloud KMS-Schlüssel hat, Logging kann keine temporären Dateien zur Notfallwiederherstellung schreiben und für Nutzer funktionieren Abfragen nicht mehr. Die Abfrageleistung kann auch nach Wiederherstellung des Schlüsselzugriffs beeinträchtigt bleiben.

Das Routing von Logs an Cloud Storage kann ebenfalls betroffen sein, Logging kann keine temporären Dateien schreiben, die erforderlich sind, um den Vorgang zu vereinfachen. die Routenplanung. Wenn beim Verschlüsseln oder Entschlüsseln von Daten ein Fehler auftritt, wird eine Benachrichtigung an das Google Cloud-Projekt gesendet, Cloud KMS-Schlüssel.

Verfügbarkeit der Clientbibliothek

Logging-Clientbibliotheken bieten keine Methoden zum Konfigurieren von CMEK.

Beeinträchtigung aufgrund der Nichtverfügbarkeit von Cloud EKM-Schlüsseln

Wenn Sie einen Cloud EKM-Schlüssel verwenden, hat Google keine Kontrolle über die Verfügbarkeit Ihres extern verwalteten Schlüssels im Partnersystem für die externe Schlüsselverwaltung.

Wenn CMEK als Standard-Ressourceneinstellung für eine Organisation oder wenn ein extern verwalteter Schlüssel nicht verfügbar ist, Cloud Logging versucht kontinuierlich, auf den Schlüssel zuzugreifen. Cloud Logging auch die eingehenden Protokolldaten bis zu einer Stunde zwischenspeichern. Wenn Cloud Logging nach einer Stunde immer noch nicht auf den externen Zugriff zugreifen kann verwalteten Schlüssels löschen möchten, beginnt Cloud Logging mit dem Löschen der Daten.

Wenn CMEK auf einen Log-Bucket angewendet wird Wenn ein extern verwalteter Schlüssel nicht verfügbar ist, Cloud Logging speichert Logs weiterhin in Log-Buckets, aber Nutzende können nicht auf diese Daten zugreifen.

Weitere Informationen und mögliche Alternativen bei der Verwendung externer Schlüssel finden Sie in der Dokumentation zum Cloud External Key Manager.

Einschränkungen für Log-Buckets

Informationen zu Einschränkungen bei der Verwendung von CMEK mit Log-Buckets finden Sie unter Einschränkungen.

Kontingente

Ausführliche Informationen zu den Nutzungslimits für Logging finden Sie unter Kontingente und Limits.

Konfigurationsfehler beheben

Informationen zum Beheben von CMEK-Konfigurationsfehlern finden Sie unter Fehler bei CMEK und Standardeinstellungen beheben