CMEK-Organisationsrichtlinien

Google Cloud bietet zwei Einschränkungen für Organisationsrichtlinien, um die Nutzung von CMEK in einer Organisation sicherzustellen:

  • Mit constraints/gcp.restrictNonCmekServices wird ein CMEK-Schutz angefordert.
  • Mit constraints/gcp.restrictCmekCryptoKeyProjects wird begrenzt, welche Cloud KMS-Schlüssel für den CMEK-Schutz verwendet werden.

CMEK-Organisationsrichtlinien gelten nur für neu erstellte Ressourcen in unterstützten Google Cloud-Diensten.

Erforderliche Rollen

Bitten Sie Ihren Administrator, jedem Nutzer die IAM-Rolle Organisationsrichtlinien-Betrachter (roles/orgpolicy.policyViewer) in Ihrer Organisation zu gewähren, damit jeder Nutzer die erforderlichen Berechtigungen hat, um Organisationsrichtlinien beim Erstellen von Ressourcen zu prüfen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Prüfen von Organisationsrichtlinien beim Erstellen von Ressourcen erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um Organisationsrichtlinien beim Erstellen von Ressourcen zu prüfen:

  • So rufen Sie die vollständigen Details zur Organisationsrichtlinie auf: orgpolicy.policy.get
  • So prüfen Sie beim Erstellen von Ressourcen die Organisationsrichtlinie: orgpolicy.policies.check

Möglicherweise kann Ihr Administrator jedem Nutzer diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen zuweisen.

Wenn Organisationsrichtlinien aktiv sind, ist die Berechtigung orgpolicy.policies.check für Google Cloud Console-Nutzer erforderlich, die Ressourcen erstellen, die durch CMEK-Schlüssel geschützt sind. Nutzer ohne diese Berechtigung können CMEK-geschützte Ressourcen über die Google Cloud Console erstellen. Sie können jedoch einen CMEK-Schlüssel auswählen, der von der Einschränkung restrictCmekCryptoKeyProjects nicht zulässig ist. Wenn ein Schlüssel ausgewählt wird, der diese Einschränkung nicht erfüllt, schlägt die Ressourcenerstellung fehl.

CMEK-Schutz verlangen

Konfigurieren Sie die Organisationsrichtlinie constraints/gcp.restrictNonCmekServices, um CMEK-Schutz für Ihre Organisation anzufordern.

Als Listeneinschränkung sind die zulässigen Werte für diese Einschränkung Google Cloud-Dienstnamen (z. B. sqladmin.googleapis.com). Stellen Sie eine Liste von Google Cloud-Dienstnamen bereit und setzen Sie die Einschränkung auf Ablehnen. Diese Konfiguration blockiert das Erstellen von Ressourcen in diesen Diensten, wenn die Ressource nicht durch einen CMEK geschützt ist. Mit anderen Worten: Anfragen zum Erstellen einer Ressource im Dienst sind ohne Angabe eines Cloud KMS-Schlüssels nicht erfolgreich. Außerdem blockiert diese Einschränkung das Entfernen des CMEK-Schutzes von Ressourcen in diesen Diensten. Diese Einschränkung kann nur auf unterstützte Dienste angewendet werden.

Verwendung von Cloud KMS-Schlüsseln für CMEK beschränken

Konfigurieren Sie die Einschränkung constraints/gcp.restrictCmekCryptoKeyProjects, um einzuschränken, welche Cloud KMS-Schlüssel für den CMEK-Schutz verwendet werden.

Als Listeneinschränkung sind die zulässigen Werte Indikatoren für die Ressourcenhierarchie, z. B. projects/PROJECT_ID, under:folders/FOLDER_ID und under:organizations/ORGANIZATION_ID. Verwenden Sie diese Einschränkung, indem Sie eine Liste von Indikatoren für die Ressourcenhierarchie konfigurieren und die Einschränkung auf Zulassen festlegen. Durch diese Konfiguration werden unterstützte Dienste eingeschränkt, sodass CMEK-Schlüssel nur aus den aufgeführten Projekten, Ordnern und Organisationen ausgewählt werden können. Anfragen zum Erstellen von CMEK-geschützten Ressourcen in konfigurierten Diensten sind ohne einen Cloud KMS-Schlüssel aus einer der zulässigen Ressourcen nicht erfolgreich. Sofern konfiguriert, gilt diese Einschränkung für alle unterstützten Dienste.

Unterstützte Dienste

Dienst Einschränkungswert, wenn CMEK erforderlich ist
Application Integration integrations.googleapis.com
Artifact Registry artifactregistry.googleapis.com
BigQuery bigquery.googleapis.com
Bigtable bigtable.googleapis.com
Cloud Composer composer.googleapis.com
Cloud Functions cloudfunctions.googleapis.com
Cloud Logging logging.googleapis.com
Cloud Run run.googleapis.com
Cloud SQL sqladmin.googleapis.com
Cloud Storage storage.googleapis.com
Cloud Workstations workstations.googleapis.com
Compute Engine compute.googleapis.com
Dataflow dataflow.googleapis.com
Dataproc dataproc.googleapis.com
Document AI documentai.googleapis.com
Filestore file.googleapis.com
Firestore (Vorschau) firestore.googleapis.com
Google Kubernetes Engine (Vorschau) container.googleapis.com
Pub/Sub pubsub.googleapis.com
Secret Manager secretmanager.googleapis.com
Spanner spanner.googleapis.com
Vertex AI aiplatform.googleapis.com
Vertex AI Workbench-Instanzen notebooks.googleapis.com

Ausnahmen bei der Erzwingung nach Ressourcentyp

Einschränkungen für CMEK-Organisationsrichtlinien werden erzwungen, wenn eine neue Ressource erstellt oder der Cloud KMS-Schlüssel für eine vorhandene Ressource geändert wird (sofern unterstützt). Im Allgemeinen werden sie für alle Ressourcentypen eines Dienstes erzwungen, die CMEK unterstützen, und ausschließlich auf Grundlage der Konfiguration der Ressource. Einige wichtige Ausnahmen sind hier zusammengefasst:

Ressourcentyp Ausnahme für Erzwingung
bigquery.googleapis.com/Dataset Teilweise für den Cloud KMS-Standardschlüssel des Datasets erzwungen (nur gcp.restrictCmekCryptoKeyProjects)
bigquery.googleapis.com/Job Nur Abfragejobs: erzwungen für Cloud KMS-Schlüssel, der mit einer Abfrage oder Standardeinstellung aus dem Abrechnungsprojekt bereitgestellt wird; siehe auch die separate Konfiguration des Cloud KMS-Standardschlüssels für das Projekt
bigquerydatatransfer.googleapis.com/TransferConfig Übertragungskonfigurationen verwenden den Dienstnamen des Data Transfer Service (bigquerydatatransfer.googleapis.com) für CMEK-Einschränkungen für Organisationsrichtlinien.
container.googleapis.com/Cluster (Vorschau) Wird für den Cloud KMS-Schlüssel nur für das Bootlaufwerk des Knotens erzwungen; nicht für Secrets auf Anwendungsebene erzwungen
logging.googleapis.com/LogBucket Wird für explizit erstellte Log-Buckets erzwungen. Siehe auch die separate Konfiguration, die erforderlich ist, um die Compliance von integrierten Log-Buckets sicherzustellen
storage.googleapis.com/Bucket Für den Cloud KMS-Standardschlüssel eines Buckets erzwungen
storage.googleapis.com/Object Wird unabhängig vom Bucket erzwungen; siehe auch die separate Konfiguration des Cloud KMS-Standardschlüssels für Buckets

Konfigurationsbeispiele

In den Konfigurationsbeispielen wird davon ausgegangen, dass die Beispielorganisation die folgende Ressourcenhierarchie hat:

Ein Diagramm einer Ressourcenhierarchie einer Organisation

CMEK für ein Projekt verlangen und Schlüssel begrenzen

Angenommen, Sie möchten einen CMEK-Schutz für alle Cloud Storage-Ressourcen unter projects/5 anfordern und dafür sorgen, dass nur Schlüssel aus projects/4 verwendet werden können.

Verwenden Sie die folgende Einstellung für die Organisationsrichtlinie, um CMEK-Schutz für alle neuen Cloud Storage-Ressourcen anzufordern:

  • Organisationsrichtlinie: constraints/gcp.restrictNonCmekServices
  • Bindung um: projects/5
  • Richtlinientyp: Ablehnen
  • Richtlinienwert: storage.googleapis.com

Damit nur Schlüssel aus projects/4 verwendet werden, verwenden Sie die folgende Konfiguration:

  • Organisationsrichtlinie: constraints/gcp.restrictCmekCryptoKeyProjects
  • Bindung um: projects/5
  • Richtlinientyp: Allow
  • Richtlinienwert: projects/4

CMEK verlangen und Schlüssel auf einen Ordner beschränken

Angenommen, Sie möchten in Zukunft weitere Cloud KMS-Projekte unter folders/2 hinzufügen und CMEK innerhalb von folders/3 umfassender benötigen. Für dieses Szenario benötigen Sie etwas andere Konfigurationen.

So setzen Sie einen zusätzlichen CMEK-Schutz für neue Cloud SQL- und Cloud Storage-Ressourcen an einem beliebigen Ort unter folders/3 voraus:

  • Organisationsrichtlinie: constraints/gcp.restrictNonCmekServices
  • Bindung um: folders/3
  • Richtlinientyp: Ablehnen
  • Richtlinienwerte: sqladmin.googleapis.com, storage.googleapis.com

So sorgen Sie dafür, dass nur Schlüssel aus Cloud KMS-Projekten unter folders/2 verwendet werden:

  • Organisationsrichtlinie: constraints/gcp.restrictCmekCryptoKeyProjects
  • Bindung um: folders/3
  • Richtlinientyp: Allow
  • Richtlinienwert: under:folders/2

CMEK für eine Organisation verlangen

Wenn CMEK überall in der Organisation (in unterstützten Diensten) erforderlich sein soll, konfigurieren Sie die Einschränkung constraints/gcp.restrictNonCmekServices mit der folgenden Einstellung:

  • Organisationsrichtlinie: constraints/gcp.restrictNonCmekServices
  • Bindung um: organizations/1
  • Richtlinientyp: Ablehnen
  • Richtlinienwerte: (alle unterstützten Dienste)

Beschränkungen

Wenn Sie die Google Cloud Console zum Erstellen einer Ressource verwenden, stellen Sie möglicherweise fest, dass Sie als CMEK keine anderen Verschlüsselungsoptionen verwenden können, wenn constraints/gcp.restrictNonCmekServices für ein Projekt und einen Dienst konfiguriert ist. Die Einschränkung der CMEK-Organisationsrichtlinie ist nur sichtbar, wenn dem Kundenkonto die IAM-Berechtigung orgpolicy.policy.get für das Projekt gewährt wurde.

Nächste Schritte

Unter Einführung in den Organisationsrichtliniendienst finden Sie weitere Informationen zu den Vorteilen und gängigen Anwendungsfällen für Organisationsrichtlinien.

Weitere Beispiele zum Erstellen einer Organisationsrichtlinie mit bestimmten Einschränkungen finden Sie unter Einschränkungen verwenden.