Begründungen für den Schlüsselzugriff mit Cloud HSM konfigurieren

Auf dieser Seite wird beschrieben, wie Sie Key Access Justifications mit Cloud HSM für das Kontrollpaket für Assured Workloads für Japan-Regionen konfigurieren.

Während der Schritte zum Erstellen eines neuen Assured Workloads-Ordners für Japan-Regionen haben Sie die Möglichkeit, ein neues Projekt und einen Schlüsselbund für Ihre kryptografischen Schlüssel zu erstellen. Cloud HSM-Schlüssel können diesem Schlüsselbund hinzugefügt werden. Außerdem können Sie eine Key Access Justifications-Richtlinie konfigurieren, um den Zugriff auf die einzelnen Schlüssel zu steuern.

Hinweise

  • Die Möglichkeit, Key Access Justifications mit Cloud HSM-Schlüsseln zu verwenden, ist nur für das Kontrollpaket für Regionen in Japan in Assured Workloads verfügbar.
  • Ihr Administrator muss Ihnen eine der erforderlichen IAM-Rollen (Identity and Access Management) zugewiesen haben, damit Sie sowohl Ihre Richtlinien für Key Access Justifications als auch die Cloud HSM-Schlüssel selbst erstellen und verwalten können.

Erforderliche IAM-Berechtigungen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Cloud KMS-Administrator (roles/cloudkms.admin) für das Projekt mit dem Schlüsselbund zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen und Verwalten von Cloud HSM-Schlüsseln und den zugehörigen Richtlinien für die Begründung des Schlüsselzugriffs benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Erstellen und Verwalten von Cloud HSM-Schlüsseln und den zugehörigen Richtlinien für Key Access Justifications erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um Cloud HSM-Schlüssel und die zugehörigen Key Access Justifications-Richtlinien zu erstellen und zu verwalten:

  • cloudkms.cryptoKeys.create
  • cloudkms.cryptoKeys.update
  • cloudkms.cryptoKeys.get

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

Cloud HSM-Schlüssel mit Key Access Justifications konfigurieren

Wenn Sie Key Access Justifications mit einem Cloud HSM-Schlüssel konfigurieren möchten, können Sie die Richtlinie für den Schlüsselzugriff entweder als Parameter beim Erstellen des Schlüssels angeben oder den Schlüssel nach dem Erstellen mit der Richtlinie aktualisieren.

Neuen Schlüssel und neue Richtlinie erstellen

REST

Erstellen Sie mit der Methode cryptoKeys.create einen neuen Schlüssel und eine neue Richtlinie:

POST https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME

Ersetzen Sie in der Anfrage die folgenden Platzhalterwerte:

  • PROJECT_ID: Die Projekt-ID des Projekts, das den Schlüsselbund enthält, dem Sie einen Schlüssel hinzufügen möchten, z. B. 919698201234.
  • LOCATION: Der Speicherort des Schlüsselbunds, z. B. us-west1.
  • KEY_RING: Der Name des Schlüsselbunds, den Sie beim Erstellen des Schlüsselverwaltungsprojekts und des Schlüsselbunds für Ihren Assured Workloads-Ordner angegeben haben, z. B. my-key-ring.
  • KEY_NAME: Der Name des HSM-Schlüssels, den Sie erstellen möchten, z. B. my-hsm-key.

Anfragetext:

{
  "purpose": "PURPOSE",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "ALGORITHM"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      ALLOWED_ACCESS_REASONS
    ]
  }
}

Ersetzen Sie im Anfragetext die folgenden Platzhalterwerte:

  • PURPOSE: Der Zweck des Schlüssels. Eine Liste der verschiedenen Schlüsselzwecke finden Sie unter Schlüsselzwecke, z. B. ENCRYPT_DECRYPT.
  • ALGORITHM: Der zu verwendende kryptografische Algorithmus. Eine Liste der verfügbaren Algorithmen finden Sie unter Cloud KMS-Algorithmen, z. B. GOOGLE_SYMMETRIC_ENCRYPTION.
  • ALLOWED_ACCESS_REASONS: Die Richtlinie „Key Access Justifications“, in der null oder mehr zulässige Begründungscodes für den Zugriff auf den Verschlüsselungsschlüssel definiert sind, z. B. ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"].

Im folgenden Beispiel für eine Anfrage und einen Anfragetext sind nur Zugriffsbegründungen aus einigen wenigen Gründen zulässig:

POST https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys?crypto_key_id=my-hsm-key
{
  "purpose": "ENCRYPT_DECRYPT",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Richtlinie für einen vorhandenen Schlüssel aktualisieren

REST

Aktualisieren Sie einen vorhandenen Schlüssel in Cloud KMS mit der Methode cryptoKeys.patch:

PATCH https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?update_mask=keyAccessJustificationsPolicy

Ersetzen Sie in der Anfrage die folgenden Platzhalterwerte:

  • PROJECT_ID: Die Projekt-ID des Projekts, das den Schlüsselbund für den Schlüssel enthält, z. B. 919698201234.
  • LOCATION: Der Speicherort des Schlüsselbunds, z. B. us-west1.
  • KEY_RING: Der Name des Schlüsselbunds, den Sie beim Erstellen des Schlüsselverwaltungsprojekts und des Schlüsselbunds für Ihren Assured Workloads-Ordner angegeben haben, z. B. my-key-ring.
  • KEY_NAME: Der Name des HSM-Schlüssels, den Sie aktualisieren möchten, z. B. my-hsm-key.

Anfragetext:

{
  "purpose": "PURPOSE",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "ALGORITHM"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      ALLOWED_ACCESS_REASONS
    ]
  }
}

Ersetzen Sie im Anfragetext die folgenden Platzhalterwerte:

  • PURPOSE: Der Zweck des Schlüssels. Eine Liste der verschiedenen Schlüsselzwecke finden Sie unter Schlüsselzwecke, z. B. ENCRYPT_DECRYPT.
  • ALGORITHM: Der zu verwendende kryptografische Algorithmus. Eine Liste der verfügbaren Algorithmen finden Sie unter Cloud KMS-Algorithmen, z. B. GOOGLE_SYMMETRIC_ENCRYPTION.
  • ALLOWED_ACCESS_REASONS: Die Richtlinie „Key Access Justifications“, in der null oder mehr zulässige Begründungscodes für den Zugriff auf den Verschlüsselungsschlüssel definiert sind, z. B. ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"].

Im folgenden Beispiel für eine Anfrage und einen Anfragetext sind nur Zugriffsbegründungen aus einigen wenigen Gründen zulässig:

PATCH https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys/my-hsm-key?keyAccessJustificationsPolicy
{
  "purpose": "ENCRYPT_DECRYPT",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Key Access Justifications-Richtlinie für einen Schlüssel abrufen

REST

Rufen Sie mit der Methode cryptoKeys.get Metadaten zu einem vorhandenen Schlüssel in Cloud KMS ab:

GET https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME

Ersetzen Sie in den Anfrageparametern die folgenden Platzhalterwerte durch Ihre eigenen:

  • PROJECT_ID: Die Projekt-ID, die den Schlüsselbund für den Schlüssel enthält, z. B. 919698201234.
  • LOCATION: Der Speicherort des Schlüsselbunds, z. B. us-west1.
  • KEY_RING: Der Name des Schlüsselbunds, den Sie beim Erstellen des Schlüsselverwaltungsprojekts und des Schlüsselbunds für Ihren Assured Workloads-Ordner angegeben haben, z. B. my-key-ring.
  • KEY_NAME: Der Name des HSM-Schlüssels, den Sie abrufen möchten, z. B. my-hsm-key.

Mit der folgenden Beispielanfrage werden Metadaten zu einem Schlüssel in Cloud KMS abgerufen:

GET https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys/my-hsm-key

Der Antworttext enthält Metadaten zu Ihrem Schlüssel, einschließlich der keyAccessJustificationsPolicy. Beispiel:

{
  "purpose": "ENCRYPT_DECRYPT",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Nächste Schritte