Fehlerbehebung bei CMEK- und Standardeinstellungen

In diesem Dokument wird beschrieben, wie Sie häufige CMEK-Konfigurationsfehler finden und beheben. Außerdem erfahren Sie, wie Sie Fehler erkennen, die beim Festlegen des Standardspeicherorts für Ressourcen auftreten.

Probleme beim Festlegen des Standardspeicherorts für Ressourcen beheben

Sie versuchen, den Standardspeicherort für eine Organisation oder einen Ordner zu aktualisieren, aber der Befehl schlägt mit einer ähnlichen Fehlermeldung fehl:

ERROR: (gcloud.logging.settings.update) INVALID_ARGUMENT: The KMS key location must match the storage location. Received KMS key location: us-central1, storage location: us-west1
- '@type': type.googleapis.com/google.rpc.DebugInfo
  detail: '[ORIGINAL ERROR] generic::invalid_argument: The KMS key location must match
    the storage location. Received KMS key location: us-central1, storage location:
    us-west1 [google.rpc.error_details_ext] { message: "The KMS key location must
    match the storage location. Received KMS key location: us-central1, storage location:
    us-west1" }'

Um diesen Fehler zu beheben, legen Sie den Standardspeicherort für die Organisation oder den Ordner so fest, dass er mit dem Speicherort des Cloud Key Management Service-Schlüssels für die Organisation oder den Ordner übereinstimmt.

CMEK-Fehler beheben

Bei der Konfiguration von CMEK wird das Trusted Cloud Projekt, das den Cloud KMS-Schlüssel enthält, über relevante Probleme benachrichtigt. Beispiel: Aktualisierungen schlagen fehl, wenn KMS_KEY_NAME ungültig ist, wenn das zugehörige Dienstkonto nicht die erforderliche Rolle Cloud Key Management Service CryptoKey-Ver-/Entschlüsseler hat oder wenn der Zugriff auf den Schlüssel deaktiviert ist.

Nachdem Sie CMEK konfiguriert haben, geschieht mindestens eines der folgenden Dinge:

  • Sie haben eine Benachrichtigung von Cloud Logging zu Problemen mit dem CMEK-Zugriff erhalten.

  • Sie stellen fest, dass CMEK für die Log-Buckets _Default und _Required nicht aktiviert ist, wenn Sie neue Trusted Cloud -Projekte in Ihrer Organisation oder in einem Ordner erstellen.

  • Sie erhalten Fehler, wenn Sie Daten aus Log-Buckets mit aktiviertem CMEK lesen oder versuchen, Log-Buckets zu erstellen oder zu aktualisieren.

Die Benachrichtigung enthält Informationen zum Fehler und Maßnahmen zur Behebung des Problems:

Fehler Empfehlung
Berechtigung für kryptografischen Schlüssel verweigert

Dem mit Ihrem Trusted Cloud -Projekt verknüpften Logging-Dienstkonto fehlen die erforderlichen IAM-Berechtigungen für den angegebenen Cloud KMS-Schlüssel. Folgen Sie der Anleitung in der Fehlermeldung oder lesen Sie die folgenden Dokumente:

Kryptografischer Schlüssel ist deaktiviert Der angegebene Cloud KMS-Schlüssel war deaktiviert. Folgen Sie der Anleitung in der Fehlermeldung, um den Schlüssel wieder zu aktivieren.
Kryptografischer Schlüssel wurde gelöscht

Der angegebene Cloud KMS-Schlüssel war gelöscht. Folgen Sie der Anleitung oder lesen Sie die folgenden Dokumente:

Projekt mit dem Cloud KMS-Schlüssel identifizieren

So ermitteln Sie die ID des Trusted Cloud Projekts, das den Verschlüsselungsschlüssel enthält, der von einem Protokoll-Bucket, einem Ordner oder einer Organisation verwendet wird:

PROJEKT

gcloud logging settings describe --project=PROJECT_ID

Ersetzen Sie vor der Ausführung des Befehls PROJECT_ID durch die Projekt-ID, die den Protokoll-Bucket enthält.

ORDNER

gcloud logging settings describe --folder=FOLDER_ID

Ersetzen Sie vor dem Ausführen des Befehls FOLDER_ID durch die ID des Ordners.

Organisation

gcloud logging settings describe --organization=ORGANIZATION_ID

Ersetzen Sie vor dem Ausführen des Befehls ORGANIZATION_ID durch die ID der Organisation.

Die Ausgabe des vorherigen Befehls sieht in etwa so aus:

kmsServiceAccountId: KMS_SERVICE_ACCT_NAME@gcp-sa-logging.s3ns-system.iam.gserviceaccount.com
loggingServiceAccountId: SERVICE_ACCT_NAME@gcp-sa-logging.s3ns-system.iam.gserviceaccount.com

Für Organisationen und Ordner wird außerdem das folgende Feld zurückgegeben:

kmsKeyName: projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KMS_KEY_RING/cryptoKeys/KEY

Der Wert des Felds kmsKeyName enthält das Trusted Cloud Projekt, in dem der Schlüssel gespeichert ist.

Schlüssel auf Nutzbarkeit prüfen

Führen Sie folgenden Befehl zur Auflistung aller Schlüssel aus, um den Schlüssel auf Nutzbarkeit zu prüfen:

gcloud kms keys list \
--location=KMS_KEY_LOCATION \
--keyring=KMS_KEY_RING

Dieser Befehl gibt Informationen zu den einzelnen Schlüsseln in einem Tabellenformat zurück. Die erste Zeile der Ausgabe ist eine Liste an Spaltennamen:

NAME PURPOSE ...

Prüfen Sie, ob in der Befehlsausgabe Cloud KMS CryptoKey als ENABLED aufgeführt und als Schlüsselzweck die symmetrische Verschlüsselung angegeben ist: Die Spalte PURPOSE muss ENCRYPT_DECRYPT enthalten und die Spalte PRIMARY_STATE muss ENABLED enthalten.

Bei Bedarf können Sie einen neuen Schlüssel erstellen.

Berechtigungskonfiguration prüfen

Dienstkonten, die mit den CMEK-Einstellungen der Organisation verknüpft sind, müssen die Rolle Cloud KMS CryptoKey-Ver-/Entschlüsseler für den konfigurierten Schlüssel haben.

Führen Sie den folgenden Befehl aus, um die IAM-Richtlinie des Schlüssels abzurufen:

gcloud kms keys get-iam-policy KMS_KEY_NAME

Fügen Sie dem Schlüssel bei Bedarf das Dienstkonto hinzu, das die Rolle "Cloud KMS CryptoKey-Ver-/Entschlüsseler“ enthält.