Cloud KMS Autokey aktivieren

In diesem Dokument erfahren Sie, wie Sie Cloud KMS Autokey über die Google Cloud Console, die Google Cloud CLI, die Cloud KMS API oder Terraform aktivieren und konfigurieren. Sie können Autokey mit Schlüsselspeicher im dedizierten Projekt für einen Ordner aktivieren oder Autokey mit Schlüsselspeicher im selben Projekt für ein einzelnes Projekt oder für alle Projekte in einem Ordner aktivieren. Weitere Informationen zu Autokey finden Sie unter Übersicht: Autokey.

Dieses Dokument richtet sich an Administratoren.

Übernahme der Autokey-Konfiguration

Wenn Sie Autokey für einen Ordner konfigurieren, übernehmen untergeordnete Ordner und Projekte in diesem Ordner die Autokey-Konfiguration des übergeordneten Ordners. Wenn Sie Autokey für einen untergeordneten Ordner oder ein untergeordnetes Projekt konfigurieren, können Sie entscheiden, ob die Konfiguration von der übergeordneten Ressource übernommen oder eine neue Autokey-Konfiguration für diese Ressource erstellt werden soll. Konfigurationen für automatische Schlüssel, die auf untergeordnete Ressourcen angewendet werden, überschreiben die Konfiguration des übergeordneten Ordners.

In der folgenden Tabelle sind die unterstützten Anwendungsfälle für die Autokey-Konfiguration aufgeführt:

Ressourcentyp Autokey-Konfiguration Beschreibung
Organisation Nicht zutreffend Autokey kann für Organisationen nicht aktiviert werden. Untergeordnete Ressourcen innerhalb einer Organisation erben eine leere AutokeyConfig-Ressource. In der Google Cloud Console haben diese Ressourcen den Autokey-Status Nicht aktiviert. Wenn Sie die Verwendung von Autokey in Ihrer Organisation einschränken oder vollständig deaktivieren möchten, können Sie Organisationsrichtlinien verwenden. Weitere Informationen finden Sie unter Autokey-Nutzung steuern.
Ordner DEDICATED_KEY_PROJECT Autokey mit Schlüsselspeicher im dedizierten Projekt ist für Ressourcenprojekte im Ordner aktiviert. Für Ressourcenprojekte, die diese Konfiguration übernehmen, erstellt Autokey Schlüssel im dedizierten Schlüsselprojekt.
Ordner RESOURCE_PROJECT Autokey mit Schlüsselspeicher im selben Projekt ist für Ressourcenprojekte im Ordner aktiviert. Für Ressourcenprojekte, die diese Konfiguration übernehmen, erstellt Autokey Schlüssel im selben Projekt wie die Ressourcen, die durch die Schlüssel geschützt werden.
Ordner DISABLED Autokey ist im Ordner deaktiviert. Untergeordnete Ordner und Projekte können diese Konfiguration jedoch weiterhin überschreiben. Wenn Sie Autokey in Ihrem Ordner einschränken oder vollständig deaktivieren möchten, können Sie Organisationsrichtlinien verwenden. Weitere Informationen finden Sie unter Autokey-Nutzung steuern.
Ordner KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED Der Ordner übernimmt die Autokey-Konfiguration vom übergeordneten Ordner oder der übergeordneten Organisation.
Projekt RESOURCE_PROJECT Autokey mit Schlüsselspeicher im selben Projekt ist für das Ressourcenprojekt aktiviert. Für Ressourcen, die in diesem Projekt erstellt wurden, erstellt Autokey Schlüssel im selben Projekt.
Projekt DISABLED Autokey ist für das Ressourcenprojekt deaktiviert. Entwickler, die Ressourcen in diesem Projekt erstellen, müssen Schlüssel manuell erstellen und bereitstellen, wenn sie CMEK für die von ihnen erstellten Ressourcen verwenden möchten.
Projekt KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED Das Projekt übernimmt die Autokey-Konfiguration vom übergeordneten Ordner.

Hinweis

Bevor Sie Autokey mit Schlüsselspeicher im dedizierten Projekt für einen Ordner aktivieren können, benötigen Sie Folgendes:

  • Eine Organisationsressource, die einen Ordner enthält, in dem Sie Autokey aktivieren möchten. Wenn Sie keinen Ordner haben, in dem Sie Autokey aktivieren möchten, können Sie einen neuen Ressourcenordner erstellen. Wenn Sie Autokey für diesen Ordner aktivieren, wird Autokey für alle Ressourcenprojekte im Ordner aktiviert.

  • Wenn Sie Ressourcenprojekte haben, in denen Sie Autokey mit der Speicherung von Schlüsseln in dedizierten Projekten verwenden möchten, diese sich aber nicht in einem Ordner befinden, in dem Sie Autokey aktivieren, können Sie vorhandene Ressourcenprojekte in neue Ordner verschieben.

Bevor Sie Autokey mit Schlüsselspeicher im selben Projekt aktivieren können, benötigen Sie eine der folgenden Optionen:

  • Ein Google Cloud -Projekt, in dem Sie Autokey aktivieren möchten und in dem die Berechtigung keyHandles.create nicht durch eine IAM-Ablehnungsrichtlinie blockiert wird.
  • Ein Google Cloud -Ordner, in dem Sie Autokey aktivieren möchten und der mindestens ein Projekt enthält, in dem die Berechtigung keyHandles.create nicht durch eine IAM-Ablehnungsrichtlinie blockiert wird.

Erforderliche Rollen

Um die Berechtigungen zu erhalten, die Sie zum Aktivieren und Konfigurieren von Autokey benötigen, bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für den Ordner, das Projekt oder eine übergeordnete Ressource zuzuweisen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Aktivieren und Konfigurieren von Autokey erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um Autokey zu aktivieren und zu konfigurieren:

  • So aktivieren Sie Autokey:
    • cloudkms.autokeyConfigs.*
    • serviceusage.services.enable
  • So aktivieren Sie Autokey mit Schlüsselspeicher im dedizierten Projekt:
    • resourcemanager.folders.get
    • resourcemanager.folders.getIamPolicy
    • resourcemanager.folders.setIamPolicy
    • billing.resourceAssociations.create
  • So rufen Sie die Autokey-Konfiguration auf:
    • cloudkms.folders.showEffectiveAutokeyConfig
    • cloudkms.projects.showEffectiveAutokeyConfig
  • So rufen Sie alle effektiven Autokey-Konfigurationen auf:
    • cloudasset.assets.query
    • serviceusage.services.use

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Terraform einrichten

Dieser Abschnitt enthält Beispielvariablen und ‑ressourcen für Terraform, die Voraussetzungen für die restlichen Terraform-Beispiele in diesem Dokument sind. Wenn Sie Terraform nicht zum Erstellen oder Verwalten Ihrer Autokey-Konfigurationen verwenden, überspringen Sie diesen Abschnitt.

Klicken Sie hier, um das Terraform-Einrichtungsbeispiel ein- oder auszublenden.

In diesem Beispiel werden die folgenden Einrichtungsschritte ausgeführt:

  1. Definieren Sie Variablen, die in nachfolgenden Terraform-Beispielen verwendet werden.
  2. Erstellen Sie einen Ressourcenordner. Sie können diesen Schritt überspringen, wenn Sie planen, die Schlüssel nur im selben Projekt in einzelnen Projekten zu speichern.
  3. Weisen Sie Administrator- und Nutzerrollen für Autokey zu.
  variable "organization_ID" {
    description = "Your Google Cloud Org ID"
    type        = string
    default     = "ORGANIZATION_ID"
  }

  variable "billing_account" {
    description = "Your Google Cloud Billing Account ID"
    type        = string
    default     = "BILLING_ACCOUNT_ID"
  }

  /* List the users who should have the authority to enable and configure
    Autokey at a folder level */
  variable "autokey_folder_admins" {
    type    = list(string)
    default = [AUTOKEY_ADMIN_USER_IDS]
  }

  /* List the users who should have the authority to protect their resources
    with Autokey */
  variable "autokey_folder_users" {
    type    = list(string)
    default = [AUTOKEY_DEVELOPER_USER_IDS]
  }

  /* List the users who should have the authority to manage crypto operations
    in the Autokey key project */
  variable "autokey_project_kms_admins" {
    type    = list(string)
    default = [KEY_PROJECT_ADMIN_USER_IDS]
  }

  # Create a new folder
  resource "google_folder" "autokey_folder" {
    parent       = "organizations/${var.organization_ID}"
    display_name = "autokey_folder"
  }
  /* To use a folder that already exists, omit this block and instead create a
     variable for the folder ID instead, and then update subsequent resources
     to use the variable. */

  # Set permissions for key admins to use Autokey in this folder
  resource "google_folder_iam_binding" "autokey_folder_admin" {
    folder  = google_folder.autokey_folder.name
    role    = "roles/cloudkms.autokeyAdmin"
    members = var.autokey_folder_admins
  }

  /* Set permissions for users to protect resources with Autokey in
    this folder */
  resource "google_folder_iam_binding" "autokey_folder_users" {
    folder  = google_folder.autokey_folder.name
    role    = "roles/cloudkms.autokeyUser"
    members = var.autokey_folder_users
  }
  

Ersetzen Sie Folgendes:

  1. BILLING_ACCOUNT_ID: Ihre Google Cloud Rechnungskonto-ID. Die Rechnungskonto-ID ist ein alphanumerischer Wert aus 18 Zeichen, der durch Bindestriche getrennt ist, z. B. 010101-F0FFF0-10XX01.
  2. AUTOKEY_ADMIN_USER_IDS: Eine Liste der E-Mail-Adressen der Nutzer, die die Rolle `roles/cloudkms.autokeyAdmin` haben sollen, z. B. "Ariel@example.com", "Charlie@example.com".
  3. AUTOKEY_DEVELOPER_USER_IDS: Eine Liste von E-Mail-Adressen für Nutzer, die die Rolle `roles/cloudkms.autokeyUser` haben sollen, z. B. "Kalani@example.com", "Mahan@example.com".
  4. KEY_PROJECT_ADMIN_USER_IDS: Eine Liste der E-Mail-Adressen der Nutzer, die die Rolle `roles/cloudkms.admin` haben sollen, z. B. "Sasha@example.com", "Nur@example.com".

Autokey mit Schlüsselspeicher im dedizierten Projekt einrichten

Wenn Sie Autokey mit der projektspezifischen Schlüsselspeicherung in einem Ordner verwenden, müssen Sie ein einzelnes Schlüsselprojekt auswählen, das alle von Autokey in diesem Ordner erstellten Schlüssel enthält. Wenn Sie den Schlüsselspeicher im selben Projekt verwenden, benötigen Sie kein dediziertes Schlüsselprojekt. Fahren Sie mit Autokey mit Schlüsselspeicher im selben Projekt aktivieren fort.

Wir empfehlen, ein neues Schlüsselprojekt zu erstellen, das die von Autokey erstellten Cloud KMS-Ressourcen enthält. Sie sollten das Schlüsselprojekt in Ihrer Organisationsressource erstellen. Wenn Sie bereits ein Schlüsselprojekt haben, das Sie für von Autokey erstellte Schlüssel verwenden möchten, können Sie den Abschnitt Schlüsselprojekt erstellen überspringen und auf dieser Seite mit Autokey-Schlüsselprojekt konfigurieren fortfahren.

Das Schlüsselprojekt kann im selben Ordner erstellt werden, in dem Sie Autokey aktivieren möchten. Sie sollten keine anderen Ressourcen im Schlüsselprojekt erstellen. Wenn Sie versuchen, Ressourcen zu erstellen, die durch Autokey im Schlüsselprojekt geschützt werden, lehnt Autokey die Anfrage für einen neuen Schlüssel ab.

Wenn Sie in Zukunft zu Assured Workloads migrieren möchten, erstellen Sie das Schlüsselprojekt im selben Ordner wie die Ressourcen, die durch diese Schlüssel geschützt sind.

Wenn Ihre Organisation die Organisationsrichtlinieneinschränkung constraints/gcp.restrictCmekCryptoKeyProjects verwendet, um sicherzustellen, dass alle CMEKs aus angegebenen Schlüsselprojekten stammen, müssen Sie Ihr Schlüsselprojekt der Liste der zulässigen Projekte hinzufügen. Weitere Informationen zu CMEK-Organisationsrichtlinien finden Sie unter CMEK-Organisationsrichtlinien.

Schlüsselprojekt erstellen

Console

  1. Wechseln Sie in der Google Cloud -Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie unter Organisation auswählen die Organisationsressource aus, in der Sie ein Projekt erstellen möchten.
  3. Klicken Sie auf Projekt erstellen.
  4. Geben Sie im angezeigten Fenster Neues Projekt einen Projektnamen ein und wählen Sie ein Rechnungskonto aus. Ein Projektname darf nur Buchstaben, Zahlen, einfache Anführungszeichen, Bindestriche, Leerzeichen oder Ausrufezeichen enthalten und muss zwischen 4 und 30 Zeichen lang sein.
  5. Wählen Sie unter Speicherort die Ressource aus, die das übergeordnete Element für Ihr Schlüsselprojekt sein soll.
  6. Klicken Sie auf Erstellen, um das Projekt zu erstellen.

gcloud

  • Erstellen Sie ein neues Projekt:

    gcloud projects create PROJECT_ID \
        --PARENT_TYPE=PARENT_ID
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die ID des Projekts, das den Schlüsselbund enthält.
    • PARENT_TYPE: Der Typ der Ressource, in der Sie das neue Schlüsselprojekt erstellen möchten. Geben Sie organization ein, um das neue Schlüsselprojekt in einer bestimmten Organisation zu erstellen, oder folder, um das neue Schlüsselprojekt in einem bestimmten Ordner zu erstellen.
    • PARENT_ID: Die ID der Organisation oder des Ordners, in dem Sie das Schlüsselprojekt erstellen möchten.

REST

  • Erstellen Sie ein neues Projekt:

    curl "https://cloudresourcemanager.googleapis.com/v3/projects/"
        --request "POST" \
        --header "authorization: Bearer TOKEN" \
        --header "content-type: application/json" \
        --data '{ "projectId": "PROJECT_ID", "name": "PROJECT_NAME", "parent": "PARENT_TYPE/PARENT_ID" }'
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die Kennung, die Sie für Ihr dediziertes Schlüsselprojekt verwenden möchten.
    • PROJECT_NAME: Der Name, den Sie für Ihr dediziertes Schlüsselprojekt verwenden möchten.
    • PARENT_TYPE: Der Ressourcentyp der übergeordneten Ressource, in der Sie das dedizierte Schlüsselprojekt erstellen möchten, z. B. organizations oder folders.
    • PARENT_ID": Der Ressourcen-Identifier der übergeordneten Ressource, in der Sie das dedizierte Schlüsselprojekt erstellen möchten.

Terraform

Mit dem folgenden Terraform-Beispiel wird ein dediziertes Schlüsselprojekt im zuvor erstellten Ordner erstellt.

/* Define the project ID to use for the dedicated key project. The project
  ID must be 6 to 30 characters with lowercase letters, digits, hyphens. The
  project ID must start with a letter. Trailing hyphens are prohibited */
variable "key_management_project_ID" {
  description = "Sets the project ID for the dedicated key project. This project will contain the Key Rings and Keys generated by Cloud KMS Autokey"
  type        = string
  default     = "KEY_PROJECT_ID"
}

# Create a key project to store keys created by Autokey
resource "google_project" "key_management_project" {
  project_id      = var.key_management_project_ID
  name            = var.key_management_project_ID
  billing_account = var.billing_account
  folder_id       = google_folder.autokey_folder.name
}

output "project_number" {
  value = google_project.key_management_project.number
}

Ersetzen Sie KEY_PROJECT_ID durch die ID, die für das dedizierte Schlüsselprojekt verwendet werden soll, z. B. autokey-key-project.

Projektsperre einrichten

Nachdem Sie das Cloud KMS-Projekt erstellt haben, empfehlen wir, es mit einer Sperre zu schützen (Vorabversion), um ein versehentliches Löschen zu verhindern. Wenn eine Projektsperre erzwungen wird, kann das Cloud KMS-Projekt erst gelöscht werden, wenn die Sperre entfernt wird.

Dediziertes Schlüsselprojekt vorbereiten

Console

  1. Aktivieren Sie die Cloud KMS API für Ihr Schlüsselprojekt.

    API aktivieren

  2. Wenn Sie ein neues Schlüsselprojekt verwenden, gewähren Sie Cloud KMS-Administratorberechtigungen für das Schlüsselprojekt. Wiederholen Sie die folgenden Schritte, um sich selbst und jedem anderen Cloud KMS-Administrator die Rolle Cloud KMS-Administrator zuzuweisen:

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

      IAM aufrufen

    2. Wählen Sie das Schlüsselprojekt aus.

    3. Klicken Sie auf  Zugriff gewähren und geben Sie dann die E-Mail-Adresse des Nutzers ein.

    4. Wählen Sie die Rolle Cloud KMS-Administrator aus.

    5. Klicken Sie auf Speichern.

gcloud

  1. Aktivieren Sie die Cloud KMS API für Ihr Schlüsselprojekt:

    gcloud services enable cloudkms.googleapis.com
    
  2. Gewähren Sie Cloud KMS-Administratorberechtigungen für das Schlüsselprojekt. Wiederholen Sie den folgenden Befehl, um sich selbst und allen anderen Cloud KMS-Administratoren die Rolle roles/cloudkms.admin zuzuweisen:

    gcloud projects add-iam-policy-binding PROJECT_NUMBER \
        --role=roles/cloudkms.admin \
        --member=user:KEY_ADMIN_EMAIL
    

    Ersetzen Sie Folgendes:

    • PROJECT_NUMBER: die Projektnummer des Schlüsselprojekts.
    • KEY_ADMIN_EMAIL: Die E-Mail-Adresse des Nutzers, der für die Verwaltung von Cloud KMS-Schlüsseln verantwortlich ist.

REST

  1. Aktivieren Sie die Cloud KMS API für Ihr Schlüsselprojekt:

    curl "https://serviceusage.googleapis.com/v1/projects/PROJECT_ID/services/cloudkms.googleapis.com:enable" \
        --request "POST" \
        --header "authorization: Bearer TOKEN"
    

    Ersetzen Sie PROJECT_ID durch die ID Ihres dedizierten Schlüsselprojekts.

  2. Rufen Sie die aktuelle IAM-Richtlinie für das dedizierte Schlüsselprojekt ab.

    curl "https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy" \
        --request POST \
        --header "authorization: Bearer TOKEN"
        --header "Content-Type: application/json; charset=utf-8" \
        --data '{"options": {"requestedPolicyVersion": 3}}'
    

    Die Antwort enthält die aktuelle Zulassungsrichtlinie des Projekts.

  3. Ändern Sie die zurückgegebene Zulassungsrichtlinie, um die Rolle roles/cloudkms.admin für jeden Cloud KMS-Administratornutzer, einschließlich Ihnen selbst, hinzuzufügen. Verwenden Sie dazu die folgende Rollenbindung als Anleitung: json { "role": "roles/cloudkms.admin", "members": [ "PRINCIPAL_LIST" ], }

    Ersetzen Sie PRINCIPAL_LIST durch eine durch Kommas getrennte Liste mit Nutzer-Prinzipalen, z. B. admin_1@example.com,admin_2@example.com.

    Diese Änderung wird erst wirksam, wenn Sie die neue Richtlinie festlegen.

  4. Legen Sie die neue Zulassungsrichtlinie fest.

    curl "https://cloudresourcemanager.googleapis.com/1/projects/PROJECT_ID:setIamPolicy" \
        --request POST \
        --header "authorization: Bearer TOKEN" \
        --header "Content-Type: application/json; charset=utf-8" \
        --data 'ALLOW_POLICY'
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die Kennung Ihres dedizierten Schlüsselprojekts.
    • ALLOW_POLICY: Die aktualisierte JSON-Datei für die Zulassungsrichtlinie, die Sie im vorherigen Schritt erstellt haben, einschließlich der vorhandenen Rollenzuweisungen und der gerade hinzugefügten.

Terraform

Im folgenden Terraform-Beispiel wird die Cloud KMS API im dedizierten Schlüsselprojekt aktiviert und den zuvor identifizierten Cloud KMS-Administratorprinzipalen wird die Rolle „roles/cloudkms.admin“ zugewiesen.

# Enable the Cloud KMS API in the key project
resource "google_project_service" "enable_api" {
  service                    = "cloudkms.googleapis.com"
  project                    = google_project.key_management_project.project_id
  disable_on_destroy         = false
  disable_dependent_services = false
  depends_on                 = [google_project.key_management_project]
}

/* Grant role for Cloud KMS admins to use Autokey in the
   dedicated key project */
resource "google_project_iam_binding" "autokey_project_admin" {
  project    = google_project.key_management_project.project_id
  role       = "roles/cloudkms.admin"
  members    = var.autokey_project_kms_admins
  depends_on = [ google_project.key_management_project ]
}

Cloud KMS Autokey für einen Ressourcenordner aktivieren

Console

  1. Rufen Sie in der Google Cloud Console die Seite Steuerelemente für die Schlüsselverwaltung auf.

    Zu den Einstellungen für die Schlüsselverwaltung

  2. Wählen Sie in der Kontextauswahl den Ordner aus, in dem Sie Autokey mit dedizierter Projektschlüsselspeicherung aktivieren möchten.
  3. Klicken Sie im Bereich Autokey auf Verwalten.
  4. Klicken Sie auf Konfigurieren.
  5. Wählen Sie für Konfigurationsquelle die Option Für Ordner konfigurieren aus.
  6. Wählen Sie unter Konfiguration die Option Schlüsselspeicher im dedizierten Projekt aktivieren aus.
  7. Wählen Sie Ihr Schlüsselprojekt aus und klicken Sie auf Senden.

    Eine Meldung bestätigt, dass Cloud KMS Autokey für den Ordner aktiviert ist.

gcloud

  1. Erstellen Sie eine YAML-Datei mit folgendem AutokeyConfig:

    name: folders/FOLDER_NUMBER/autokeyConfig
    keyProjectResolutionMode: DEDICATED_KEY_PROJECT
    keyProject: projects/PROJECT_ID
    

    Ersetzen Sie Folgendes:

    • FOLDER_NUMBER: Die Nummer des Ordners, in dem Sie Autokey mit der Speicherung von Schlüsseln in einem dedizierten Projekt aktivieren möchten.
    • PROJECT_ID: die Kennung Ihres dedizierten Schlüsselprojekts.
  2. Wenden Sie die Datei AutokeyConfig auf den Ordner an:

    gcloud kms autokey-config update AUTOKEY_CONFIG_PATH
    

    Ersetzen Sie AUTOKEY_CONFIG_PATH durch den Pfad zur YAML-Datei, die Sie im vorherigen Schritt erstellt haben.

REST

Erstellen Sie die AutokeyConfig für den Ordner, in dem Sie Autokey mit Schlüsselspeicher im dedizierten Projekt aktivieren möchten:

curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/autokeyConfig?updateMask=keyProject,keyProjectResolutionMode" \
    --request "PATCH" \
    --header "authorization: Bearer TOKEN" \
    --header "content-type: application/json" \
    --data '{"keyProject": "projects/PROJECT_ID", "keyProjectResolutionMode": "DEDICATED_KEY_PROJECT"}'

Ersetzen Sie Folgendes:

  • FOLDER_ID: die ID des Ordners, in dem Sie Autokey aktivieren möchten.
  • PROJECT_ID: die ID des Schlüsselprojekts.

Terraform

/* Enable AutokeyConfig for dedicated-project key storage in the
   folder */
resource "google_kms_autokey_config" "autokey_config" {
  provider    = google-beta
  folder      = google_folder.autokey_folder.folder_id
  key_project = "projects/${google_project.key_management_project.project_id}"
  key_project_resolution_mode = "DEDICATED_KEY_PROJECT"
  /* For folder scope, valid values are DEDICATED_KEY_PROJECT,
     RESOURCE_PROJECT, and DISABLED. With DEDICATED_KEY_PROJECT, define the
    key_project as well. With RESOURCE_PROJECT, omit key_project. Keys will
    be created in the same project as the protected resource. */
}

Cloud KMS-Dienst-Agent einrichten

Der Cloud KMS-Dienst-Agent für ein Schlüsselprojekt erstellt Schlüssel und wendet IAM-Richtlinienbindungen bei der Ressourcenerstellung im Namen eines menschlichen Cloud KMS-Administrators an. Damit der Cloud KMS-Dienst-Agent Schlüssel erstellen und zuweisen kann, sind Cloud KMS-Administratorberechtigungen erforderlich.

gcloud

  1. Cloud KMS-Dienst-Agent erstellen:

    gcloud beta services identity create --service=cloudkms.googleapis.com \
        --project=PROJECT_NUMBER
    

    Ersetzen Sie PROJECT_NUMBER durch die Projektnummer des Schlüsselprojekts.

    Die Ausgabe sieht etwa so aus:

    Service identity created: service-PROJECT_NUMBER@gcp-sa-ekms.iam.gserviceaccount.com
    

    Die Ausgabe des Befehls gibt an, dass das Cloud EKM-Dienstkonto (mit der Unterdomäne gcp-sa-ekms) erstellt wurde. Mit dem Befehl wird jedoch auch der Cloud KMS-Dienst-Agent (mit der Unterdomäne gcp-sa-cloudkms) erstellt, den Sie später in dieser Anleitung verwenden.

  2. Erteilen Sie dem Dienst-Agent Cloud KMS-Administratorberechtigungen:

    gcloud projects add-iam-policy-binding PROJECT_NUMBER \
        --role=roles/cloudkms.admin \
        --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-cloudkms.iam.gserviceaccount.com
    

    Ersetzen Sie PROJECT_NUMBER durch die Projektnummer des Schlüsselprojekts.

Terraform

# Create the Cloud KMS service agent
resource "google_project_service_identity" "KMS_Service_Agent" {
  provider   = google-beta
  service    = "cloudkms.googleapis.com"
  project    = google_project.key_management_project.project_id
  depends_on = [google_project.key_management_project]
}

/* Grant role for the Cloud KMS service agent to use delegated
  Cloud KMS administrator permissions */
resource "google_project_iam_member" "autokey_project_admin" {
  project = google_project.key_management_project.project_id
  role    = "roles/cloudkms.admin"
  member  = "serviceAccount:service-${google_project.key_management_project.number}@gcp-sa-cloudkms.iam.gserviceaccount.com"
}

Autokey mit Schlüsselspeicher im selben Projekt aktivieren

Wenn Sie Autokey mit Schlüsselspeicher im selben Projekt verwenden, werden Ihre Schlüssel von Autokey im selben Projekt wie die Ressourcen erstellt, die durch die Schlüssel geschützt werden. Projekte, in denen Schlüssel im selben Projekt gespeichert werden, können in Ordnern vorhanden sein, in denen Schlüssel in einem dedizierten Projekt gespeichert werden. Wenn Autokey für ein Projekt aktiviert ist, überschreibt die Autokey-Konfiguration auf Projektebene die Autokey-Konfiguration des übergeordneten Ordners.

So aktivieren Sie Autokey mit Schlüsselspeicher im selben Projekt für ein einzelnes Projekt:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Steuerelemente für die Schlüsselverwaltung auf.

    Zu den Einstellungen für die Schlüsselverwaltung

  2. Wählen Sie in der Kontextauswahl das Projekt aus, in dem Sie Autokey mit Schlüsselspeicher im selben Projekt aktivieren möchten.
  3. Klicken Sie im Bereich Autokey auf Verwalten.
  4. Klicken Sie auf Konfigurieren.
  5. Wählen Sie für Konfigurationsquelle die Option Für Projekt konfigurieren aus.
  6. Wählen Sie unter Konfiguration die Option Schlüsselspeicher im selben Projekt aktivieren aus.
  7. Klicken Sie auf Senden.

    Eine Meldung bestätigt, dass Cloud KMS Autokey für das Projekt aktiviert ist.

gcloud

  1. Erstellen Sie eine YAML-Datei mit folgendem AutokeyConfig:

    name: projects/PROJECT_ID/autokeyConfig
    keyProjectResolutionMode: RESOURCE_PROJECT
    keyProject:
    

    Ersetzen Sie PROJECT_ID durch die ID des Projekts, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt aktivieren möchten.

  2. Wenden Sie AutokeyConfig auf das Projekt an:

    gcloud kms autokey-config update AUTOKEY_CONFIG_PATH
    

    Ersetzen Sie AUTOKEY_CONFIG_PATH durch den Pfad zur YAML-Datei, die Sie im vorherigen Schritt erstellt haben.

  3. Aktivieren Sie die Cloud KMS API für das Projekt:

    gcloud services enable cloudkms.googleapis.com
    

REST

  1. Erstellen Sie mit der REST API die AutokeyConfig für das Projekt, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt aktivieren möchten:

    curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/autokeyConfig?updateMask=keyProjectResolutionMode,keyProject" \
        --request "PATCH" \
        --header "authorization: Bearer TOKEN" \
        --header "content-type: application/json" \
        --data '{"keyProjectResolutionMode": "RESOURCE_PROJECT", "keyProject": ""}'
    

    Ersetzen Sie PROJECT_ID durch die ID des Projekts, in dem Sie Autokey aktivieren möchten.

  2. Aktivieren Sie die Cloud KMS API im Projekt mit der gcloud CLI:

    gcloud services enable cloudkms.googleapis.com
    

Terraform

Wenn Sie Autokey mit Schlüsselspeicher im selben Projekt für ein einzelnes Projekt aktivieren möchten, verwenden Sie eine autokey_config_project-Ressource wie die folgende:

/* To set autokey config for a project */
resource "google_kms_autokey_config" "autokey_config_project" {
  provider = google-beta
  project = "projects/${google_project.key_management_project.project_id}"
  key_project_resolution_mode = "RESOURCE_PROJECT"
  # For project scope, valid values are RESOURCE_PROJECT or DISABLED
}

So aktivieren Sie Autokey mit Schlüsselspeicher im selben Projekt für alle Projekte in einem Ordner:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Steuerelemente für die Schlüsselverwaltung auf.

    Zu den Einstellungen für die Schlüsselverwaltung

  2. Wählen Sie in der Kontextauswahl den Ordner aus, in dem Sie Autokey mit Schlüsselspeicher im selben Projekt aktivieren möchten.
  3. Klicken Sie auf Konfigurieren.
  4. Wählen Sie für Konfigurationsquelle die Option Für Ordner konfigurieren aus.
  5. Wählen Sie unter Konfiguration die Option Schlüsselspeicher im selben Projekt aktivieren aus.
  6. Klicken Sie auf Senden.

    Eine Meldung bestätigt, dass Cloud KMS Autokey für den Ordner aktiviert ist.

gcloud

  1. Erstellen Sie eine YAML-Datei mit folgendem AutokeyConfig:

    name: folders/FOLDER_NUMBER/autokeyConfig
    keyProjectResolutionMode: RESOURCE_PROJECT
    keyProject:
    

    Ersetzen Sie FOLDER_NUMBER durch die Nummer des Ordners, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt aktivieren möchten.

  2. Wenden Sie die Datei AutokeyConfig auf den Ordner an:

    gcloud kms autokey-config update AUTOKEY_CONFIG_PATH
    

    Ersetzen Sie AUTOKEY_CONFIG_PATH durch den Pfad zur YAML-Datei, die Sie im vorherigen Schritt erstellt haben.

REST

  1. Erstellen Sie mit der REST API die AutokeyConfig für den Ordner, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt aktivieren möchten:

    curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/autokeyConfig?updateMask=keyProjectResolutionMode,keyProject" \
        --request "PATCH" \
        --header "authorization: Bearer TOKEN" \
        --header "content-type: application/json" \
        --data '{"keyProjectResolutionMode": "RESOURCE_PROJECT", "keyProject": ""}'
    

    Ersetzen Sie FOLDER_ID durch die ID des Ordners, in dem Sie Autokey aktivieren möchten. Mit diesem Befehl wird Autokey mit Schlüsselspeicher im selben Projekt für alle Projekte im Ordner aktiviert.

  2. Aktivieren Sie in der gcloud CLI die Cloud KMS API für jedes Projekt, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt verwenden möchten:

    gcloud services enable cloudkms.googleapis.com
    

    Sie können die Cloud KMS API für alle Projekte gleichzeitig oder nach Bedarf für einzelne Projekte aktivieren. Ihre Entwickler können Autokey erst dann im Projekt verwenden, wenn die Cloud KMS API für dieses Projekt aktiviert ist.

Terraform

Wenn Sie Autokey mit Schlüsselspeicher im selben Projekt für alle Projekte in einem Ordner aktivieren möchten, verwenden Sie eine folder_config-Ressource wie die folgende:

/* Enable AutokeyConfig on a folder */
resource "google_kms_autokey_config" "folder_config" {
  provider    = google-beta
  folder      = google_folder.autokey_folder.name
  key_project_resolution_mode = "RESOURCE_PROJECT"
  /* For folder scope, valid values are DEDICATED_KEY_PROJECT,
     RESOURCE_PROJECT, or DISABLED. With DEDICATED_KEY_PROJECT, define the
     key_project as well. With RESOURCE_PROJECT, omit key_project. Keys will
     be created in the same project as the protected resource. */
}

Autokey-Konfiguration löschen

Sie können die Autokey-Konfiguration für einen Ordner oder ein Projekt löschen, um wieder die Konfiguration des übergeordneten Ordners zu verwenden.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Steuerelemente für die Schlüsselverwaltung auf.

    Zu den Einstellungen für die Schlüsselverwaltung

  2. Wählen Sie in der Kontextauswahl den Ordner oder das Projekt aus, für das Sie die Autokey-Konfiguration löschen möchten.
  3. Klicken Sie im Bereich Autokey auf Verwalten.
  4. Klicken Sie auf Konfigurieren.
  5. Wählen Sie für Konfigurationsquelle die Option Übernehmen aus.
  6. Klicken Sie auf Senden.

gcloud

  1. Erstellen Sie eine YAML-Datei mit folgendem AutokeyConfig:

    name: RESOURCE_TYPE/RESOURCE_ID/autokeyConfig
    keyProjectResolutionMode: KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED
    keyProject:
    

    Ersetzen Sie Folgendes:

    • RESOURCE_TYPE: Der Typ der Ressource, für die Sie die Autokey-Konfiguration löschen möchten. Legen Sie dafür folders oder projects fest.
    • RESOURCE_ID: die Kennung des Ordners, in dem Sie die Autokey-Konfiguration löschen möchten.
  2. Wenden Sie die AutokeyConfig auf den Ordner oder das Projekt an:

    gcloud kms autokey-config update AUTOKEY_CONFIG_PATH
    

    Ersetzen Sie AUTOKEY_CONFIG_PATH durch den Pfad zur YAML-Datei, die Sie im vorherigen Schritt erstellt haben.

REST

Entfernen Sie die AutokeyConfig für den Ordner oder das Projekt, für das Sie die geerbte Autokey-Konfiguration wiederherstellen möchten:

curl "https://cloudkms.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/autokeyConfig?updateMask:keyProjectResolutionMode,keyProject" \
    --request "PATCH" \
    --header "authorization: Bearer TOKEN" \
    --header "content-type: application/json" \
    --data '{"keyProjectResolutionMode": "KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED", "keyProject": ""}'

Ersetzen Sie Folgendes:

  • RESOURCE_TYPE: Der Ressourcentyp, für den Sie Autokey deaktivieren möchten. Legen Sie dafür folders oder projects fest.
  • RESOURCE_ID: Die Kennung des Ordners, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt deaktivieren möchten.

Terraform

# Clear AutokeyConfig for the folder
resource "google_kms_autokey_config" "autokey_config" {
  provider    = google-beta
  folder      = google_folder.autokey_folder.folder_id
  key_project = ""
  key_project_resolution_mode = "KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED"
}

Effektive Autokey-Konfiguration ansehen

Sie können die effektive Autokey-Konfiguration eines Ordners oder Projekts aufrufen. Die effektive Autokey-Konfiguration gibt Ihnen folgende Informationen:

  • Gibt an, ob Autokey für die ausgewählte Ressource aktiviert ist.
  • Wenn Autokey aktiviert ist, wird hier angegeben, ob für die ausgewählte Ressource der Schlüsselspeicher im dedizierten Projekt oder im selben Projekt verwendet wird.
  • Wenn für die ausgewählte Ressource die Speicherung von Schlüsseln in einem dedizierten Projekt verwendet wird, ist dies die Ressourcen-ID des dedizierten Schlüsselprojekts.
  • Gibt an, ob diese Autokey-Konfiguration von einem übergeordneten Ordner übernommen oder für die ausgewählte Ressource konfiguriert wurde.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Steuerelemente für die Schlüsselverwaltung auf.

    Zu den Einstellungen für die Schlüsselverwaltung

  2. Wählen Sie in der Kontextauswahl den Ordner oder das Projekt aus, in dem Sie die Autokey-Einstellungen aufrufen möchten.
  3. Klicken Sie im Bereich Autokey auf Verwalten.

gcloud

So rufen Sie die geltende AutokeyConfig auf:

gcloud kms autokey-config show-effective-config \
    --RESOURCE_TYPE=RESOURCE_ID

Ersetzen Sie Folgendes:

  • RESOURCE_TYPE: Der Typ der Ressource, für die Sie die effektive Autokey-Konfiguration ansehen möchten. Legen Sie dafür folder oder project fest.
  • RESOURCE_ID: Die Kennung der Ressource, für die Sie die effektive Autokey-Konfiguration aufrufen möchten.

Die Ausgabe sieht etwa so aus:

keyProject: KEY_PROJECT
keyProjectResolutionMode: KEY_PROJECT_RESOLUTION_MODE
source:
  name: RESOURCE_IDENTIFIER

Diese Ausgabe enthält die folgenden Werte:

  • KEY_PROJECT: die Ressourcen-ID des Schlüsselprojekts, z. B. projects/PROJECT_ID. Wenn „Autokey“ deaktiviert ist oder es sich bei der Ressource um einen Ordner handelt, in dem der Schlüsselspeicher im selben Projekt aktiviert ist, wird dieses Feld ausgelassen.
  • KEY_PROJECT_RESOLUTION_MODE: die keyProjectResolutionMode der Ressource, z. B. RESOURCE_PROJECT, DEDICATED_KEY_PROJECT oder DISABLED. Wenn Autokey für die Ressource oder eine übergeordnete Ressource nicht aktiviert ist, wird dieses Feld ausgelassen.
  • RESOURCE_IDENTIFIER: Die Ressourcen-ID der Ressource, in der die AutokeyConfig konfiguriert ist. So können Sie feststellen, ob die AutokeyConfig von einer übergeordneten Ressource übernommen oder für die abgefragte Ressource konfiguriert wurde.

REST

So rufen Sie die effektive AutokeyConfig für einen Ordner oder ein Projekt auf:

curl "https://cloudkms.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:showEffectiveAutokeyConfig" \
    --request "GET" \
    --header "authorization: Bearer TOKEN"
  ```

Replace the following:
  • RESOURCE_TYPE: Der Typ der Ressource, für die Sie die Autokey-Konfiguration aufrufen möchten. Legen Sie dafür folders oder projects fest.
  • RESOURCE_ID: Die Kennung der Ressource, für die Sie die Autokey-Konfiguration aufrufen möchten.

Die Ausgabe sieht etwa so aus:

{
  "keyProject": KEY_PROJECT,
  "keyProjectResolutionMode": KEY_PROJECT_RESOLUTION_MODE,
  "source": {
    RESOURCE_IDENTIFIER
  }
}

Diese Ausgabe enthält die folgenden Werte:

  • KEY_PROJECT: die Ressourcen-ID des Schlüsselprojekts, z. B. projects/PROJECT_ID. Wenn „Autokey“ deaktiviert ist oder es sich bei der Ressource um einen Ordner handelt, in dem der Schlüsselspeicher im selben Projekt aktiviert ist, wird dieses Feld ausgelassen.
  • KEY_PROJECT_RESOLUTION_MODE: die keyProjectResolutionMode der Ressource, z. B. RESOURCE_PROJECT, DEDICATED_KEY_PROJECT oder DISABLED. Wenn Autokey für die Ressource oder eine übergeordnete Ressource nicht aktiviert ist, wird dieses Feld ausgelassen.
  • RESOURCE_IDENTIFIER: Die Ressourcen-ID der Ressource, in der die AutokeyConfig konfiguriert ist. So können Sie feststellen, ob die AutokeyConfig von einer übergeordneten Ressource übernommen oder für die abgefragte Ressource konfiguriert wurde.

SQL

Sie können eine SQL-Abfrage mit Cloud Asset Inventory verwenden, um die effektive Autokey-Konfiguration für alle Projekte in einem Ordner oder einer Organisation auszuwerten.

  1. Legen Sie Bash-Umgebungsvariablen für die Organisations-ID und den Suchbereich fest.

    export ORG_ID="ORGANIZATION_ID"
    export TARGET_SCOPE="RESOURCE_TYPE/RESOURCE_ID" 
    

    Ersetzen Sie Folgendes:

    • ORGANIZATION_ID: die numerische ID Ihrer Organisation.
    • RESOURCE_TYPE: Der Typ der Ressource, für die Sie effektive Autokey-Konfigurationen ansehen möchten. Wird auf organizations gesetzt, um Konfigurationen für alle Projekte in Ihrer Organisation aufzurufen, oder auf folders, um Konfigurationen für alle Projekte in einem bestimmten Ordner aufzurufen.
    • RESOURCE_ID: Die numerische Kennung der Organisation oder des Ordners, in dem Sie die effektiven Autokey-Konfigurationen aufrufen möchten.
  2. Führen Sie die Abfrage mit dem Befehl gcloud asset query aus.

    gcloud asset query \
        --organization="${ORG_ID}" \
        --statement="
    WITH ProjectConfigs AS (
      SELECT
        p.name AS project_name,
        ARRAY_AGG(
          STRUCT(
            ancestor AS config_source,
            c.resource.data.state AS state,
            c.resource.data.keyProjectResolutionMode AS resolution_mode,
            c.resource.data.keyProject AS key_project
          )
          ORDER BY offset
          LIMIT 1
        )[SAFE_OFFSET(0)] AS effective_config
      FROM
        STANDARD_METADATA p
      CROSS JOIN
        UNNEST(p.ancestors) AS ancestor WITH OFFSET AS offset
      JOIN
        cloudkms_googleapis_com_AutokeyConfig c
      ON
        ancestor = REGEXP_REPLACE(c.name, r'^//cloudkms\.googleapis\.com/([^/]+/\d+)/autokeyConfig$', r'\1')
      WHERE
        p.assetType = 'cloudresourcemanager.googleapis.com/Project'
      GROUP BY
        p.name
    )
    SELECT
      REPLACE(r.name, '//cloudresourcemanager.googleapis.com/', '') AS project_name,
      p.resource.data.projectId AS project_id,
      COALESCE(rc.effective_config.config_source, 'No Autokey') AS effective_config_source,
      rc.effective_config.state AS autokey_config_state,
      rc.effective_config.resolution_mode AS resolution_mode,
      CASE 
        WHEN rc.effective_config.resolution_mode = 'RESOURCE_PROJECT' THEN p.resource.data.projectId
        ELSE COALESCE(REPLACE(rc.effective_config.key_project, 'projects/', ''), 'No Key Project')
      END AS key_project
    FROM
      STANDARD_METADATA r
    LEFT JOIN
      ProjectConfigs rc
    ON
      r.name = rc.project_name
    LEFT JOIN
      cloudresourcemanager_googleapis_com_Project p
    ON
      r.name = p.name
    WHERE
      r.assetType = 'cloudresourcemanager.googleapis.com/Project'
      AND '${TARGET_SCOPE}' IN UNNEST(r.ancestors)
    "
    

    Die Ausgabe enthält die folgenden Felder:

    • project_number: Die vollständige numerische Ressourcen-ID jedes Projekts, z. B. projects/PROJECT_NUMBER.
    • project_id: die ID des jeweiligen Projekts, z. B. PROJECT_ID.
    • effective_config_source: Der Ressourcen-Identifier der Ressource, für die die Autokey-Konfiguration des Projekts festgelegt ist, z. B. folders/FOLDER_NUMBER, wenn die Konfiguration von einem übergeordneten Ordner übernommen wird, oder projects/PROJECT_NUMBER, wenn die Konfiguration für das Projekt festgelegt ist. Wenn das Projekt keine AutokeyConfig hat oder erbt, wird in diesem Feld No Autokey angezeigt.
    • autokey_config_state: Gibt an, ob eine Autokey-Konfiguration für den Ordner ACTIVE ist, auch wenn diese Konfiguration DISABLED ist. Wenn das Projekt keine AutokeyConfig hat oder keine erbt, ist dieses Feld leer.
    • resolution_mode: Der Schlüsselprojekt-Auflösungsmodus der effektiven Autokey-Konfiguration für das Projekt.
    • key_project: Gibt an, wo Autokey Schlüssel für Ressourcen im Projekt erstellt, z. B. projects/KEY_PROJECT_ID, wenn das Projekt den Schlüsselspeicher im dedizierten Projekt verwendet, oder RESOURCE_PROJECT_ID, wenn das Projekt den Schlüsselspeicher im selben Projekt verwendet. Wenn Autokey im Projekt nicht aktiviert ist, wird in diesem Feld No key project angezeigt.

Autokey deaktivieren

Dieselben Rollen, mit denen Autokey aktiviert werden kann, können es auch deaktivieren. Wenn Sie die automatische Schlüsselworterkennung deaktivieren möchten, können Sie AutokeyConfig deaktivieren oder feedbackKeyProjectResolutionMode auf DISABLED setzen. Sie können Autokey für einen Ordner oder ein Projekt deaktivieren. Sie können Autokey auch für einzelne Projekte in einem Ordner deaktivieren, in dem Autokey aktiviert ist.

Nachdem Autokey für einen Ordner oder ein Projekt deaktiviert wurde, kann der Cloud KMS-Dienst-Agent keine Schlüssel mehr für Entwickler erstellen, wenn diese Ressourcen in diesem Ordner oder Projekt erstellen.

Wenn Sie Autokey vollständig deaktivieren möchten, empfehlen wir, auch die IAM-Bindungen für die Rollen roles/cloudkms.autokeyAdmin und roles/cloudkms.autokeyUser zu entfernen.

Das Deaktivieren von Autokey hat keine Auswirkungen auf vorhandene Schlüssel im Schlüsselprojekt. Sie können diese Schlüssel weiterhin zum Schutz Ihrer Ressourcen verwenden.

Autokey für einen Ordner oder ein Projekt deaktivieren

Console

  1. Rufen Sie in der Google Cloud Console die Seite Steuerelemente für die Schlüsselverwaltung auf.

    Zu den Einstellungen für die Schlüsselverwaltung

  2. Wählen Sie in der Kontextauswahl den Ordner oder das Projekt aus, in dem Sie Autokey deaktivieren möchten.
  3. Klicken Sie im Bereich Autokey auf Verwalten.
  4. Klicken Sie auf Konfigurieren.
  5. Wählen Sie unter Konfigurationsquelle die Option Für Ordner konfigurieren oder Für Projekt konfigurieren aus.
  6. Wählen Sie unter Konfiguration die Option Autokey für Ordner deaktivieren oder Autokey für Projekt deaktivieren aus.
  7. Klicken Sie auf Senden.

    Sie werden in einer Meldung aufgefordert, die Deaktivierung von Autokey zu bestätigen.

  8. Wenn Sie Autokey deaktivieren möchten, klicken Sie auf Bestätigen.

    Eine Meldung bestätigt, dass Cloud KMS Autokey deaktiviert ist.

gcloud

  1. Erstellen Sie eine YAML-Datei mit folgendem AutokeyConfig:

    name: RESOURCE_TYPE/RESOURCE_ID/autokeyConfig
    keyProjectResolutionMode: DISABLED
    keyProject:
    

    Ersetzen Sie Folgendes:

    • RESOURCE_TYPE: Der Ressourcentyp, für den Sie Autokey deaktivieren möchten. Legen Sie dafür folders oder projects fest.
    • RESOURCE_ID: Die Kennung des Ordners, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt deaktivieren möchten.
  2. Wenden Sie die AutokeyConfig auf den Ordner oder das Projekt an:

    gcloud kms autokey-config update AUTOKEY_CONFIG_PATH
    

    Ersetzen Sie AUTOKEY_CONFIG_PATH durch den Pfad zur YAML-Datei, die Sie im vorherigen Schritt erstellt haben.

REST

Aktualisieren Sie die AutokeyConfig für den Ordner oder das Projekt, in dem Sie Autokey deaktivieren möchten:

curl "https://cloudkms.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/autokeyConfig?updateMask:keyProjectResolutionMode,keyProject" \
    --request "PATCH" \
    --header "authorization: Bearer TOKEN" \
    --header "content-type: application/json" \
    --data '{"keyProjectResolutionMode": "DISABLED", "keyProject": ""}'

Ersetzen Sie Folgendes:

  • RESOURCE_TYPE: Der Ressourcentyp, für den Sie Autokey deaktivieren möchten. Legen Sie dafür folders oder projects fest.
  • RESOURCE_ID: Die Kennung des Ordners, in dem Sie Autokey mit der Speicherung von Schlüsseln im selben Projekt deaktivieren möchten.

Terraform

# Clear AutokeyConfig for the folder
resource "google_kms_autokey_config" "autokey_config" {
  provider    = google-beta
  folder      = google_folder.autokey_folder.folder_id
  key_project = ""
  key_project_resolution_mode = "DISABLED"
}

Autokey-Rollen entziehen

Wenn Sie Autokey deaktivieren, indem Sie AutokeyConfig aktualisieren, kann der Cloud KMS-Dienst-Agent keine neuen Schlüssel im betroffenen Projekt oder Ordner bereitstellen. Wenn Sie Autokey jedoch vollständig deaktivieren möchten, empfehlen wir, auch die IAM-Bindungen für die Rollen roles/cloudkms.autokeyAdmin und roles/cloudkms.autokeyUser zu entfernen.

  1. Optional: Widerrufen Sie die Rolle roles/cloudkms.autokeyAdmin:

    gcloud resource-manager folders remove-iam-policy-binding \
        FOLDER_ID --role=roles/cloudkms.autokeyAdmin \
        --member=user:USER_EMAIL
    

    Ersetzen Sie Folgendes:

    • FOLDER_ID: Die ID des Ordners, in dem Sie Autokey deaktiviert haben.
    • USER_EMAIL: Die E-Mail-Adresse des Nutzers, dem Sie die Berechtigung zum Verwalten von Autokey entziehen möchten.
  2. Optional: Widerrufen Sie die Rolle roles/cloudkms.autokeyUser auf Ordnerebene:

    gcloud resource-manager folders remove-iam-policy-binding \
        FOLDER_ID --role=roles/cloudkms.autokeyUser \
        --member=user:USER_EMAIL
    

    Ersetzen Sie Folgendes:

    • FOLDER_ID: Die ID des Ordners, in dem Sie Autokey deaktiviert haben.
    • USER_EMAIL: Die E-Mail-Adresse des Nutzers, für den Sie die Berechtigung zur Verwendung von Autokey widerrufen möchten.
  3. Optional: Widerrufen Sie die Rolle roles/cloudkms.autokeyUser auf Projektebene:

    gcloud projects remove-iam-policy-binding \
        RESOURCE_PROJECT_NUMBER \
        --role=roles/cloudkms.autokeyUser \
        --member=user:USER_EMAIL
    

    Ersetzen Sie Folgendes:

    • RESOURCE_PROJECT_NUMBER: die Projektnummer eines Ressourcenprojekts im Ordner, in dem Sie Autokey deaktiviert haben.
    • USER_EMAIL: Die E-Mail-Adresse des Nutzers, für den Sie die Berechtigung zur Verwendung von Autokey widerrufen möchten.
  4. Optional: Wenn Sie das Schlüsselprojekt nicht mehr für Autokey für andere Ordner verwenden möchten, widerrufen Sie die Rolle roles/cloudkms.admin für den Cloud KMS-Dienst-Agent:

    gcloud projects remove-iam-policy-binding \
        KEY_PROJECT_NUMBER \
        --role=roles/cloudkms.admin \
        --member=serviceAccount:service-KEY_PROJECT_NUMBER@gcp-sa-cloudkms.iam.gserviceaccount.com
    

    Ersetzen Sie KEY_PROJECT_NUMBER durch die numerische ID des Schlüsselprojekts.

  5. Optional: Wenn Sie die im Schlüsselprojekt erstellten Schlüssel nicht mehr verwenden möchten, widerrufen Sie die Rolle roles/cloudkms.admin für den Cloud KMS-Administrator:

    gcloud projects remove-iam-policy-binding \
        KEY_PROJECT_NUMBER \
        --role=roles/cloudkms.admin \
        --member=user:KEY_ADMIN_EMAIL
    

    Ersetzen Sie Folgendes:

    • KEY_PROJECT_NUMBER: die Projektnummer des Schlüsselprojekts.
    • KEY_ADMIN_EMAIL: Die E-Mail-Adresse des Nutzers, dem Sie die Berechtigung zum Konfigurieren von Autokey entziehen möchten.

Nächste Schritte