Key Access Justifications mit Cloud KMS und Cloud HSM konfigurieren
Auf dieser Seite wird beschrieben, wie Sie Key Access Justifications mit Cloud KMS oder Cloud HSM für die Japan Data Boundary von Assured Workloads konfigurieren.
Bei der Erstellung 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 KMS- und 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 KMS- und Cloud HSM-Schlüsseln zu verwenden, ist nur für die Japan Data Boundary in Assured Workloads verfügbar.
- Ihr Administrator muss Ihnen eine der erforderlichen IAM-Rollen (Identity and Access Management) zugewiesen haben, damit Sie sowohl Ihre Key Access Justifications-Richtlinien als auch die Cloud KMS- und Cloud HSM-Schlüssel 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 KMS- und Cloud HSM-Schlüsseln und deren Key Access Justifications-Richtlinien 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 KMS- und 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 KMS- und Cloud HSM-Schlüssel und die zugehörigen Richtlinien für Key Access Justifications 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.
Schlüssel mit Key Access Justifications konfigurieren
Wenn Sie Key Access Justifications mit einem Cloud KMS- oder 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
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, in dem Sie den Schlüssel erstellen möchten.
Klicken Sie auf Schlüssel erstellen.
Geben Sie unter Schlüsselname einen Namen für den Schlüssel ein.
Wählen Sie als Schutzniveau entweder Software oder HSM aus.
Wählen Sie bei Bedarf weitere Einstellungen aus.
Wählen Sie unter Weitere Einstellungen die Option Richtlinie zur Begründung für den Schlüsselzugriff festlegen und dann Zulässige Begründungsgründe aus.
Wählen Sie unter Begründungsgründe Vom Kunden initiierter Zugriff, Von Google initiierter Systemvorgang und alle anderen Begründungscodes aus, die Sie zulassen möchten. Sowohl Vom Kunden initiierter Zugriff als auch Von Google initiierter Systemvorgang sind für die normale Funktion erforderlich.
Klicken Sie auf 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.
asia-northeast1
. - 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.
- KEY_NAME: Der Name des HSM-Schlüssels, den Sie erstellen möchten, z. B.
my-hsm-key
.
Anfragetext:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "PROTECTION_LEVEL", "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
. - PROTECTION_LEVEL: Das Schutzniveau des Schlüssels, z. B.
SOFTWARE
oderHSM
. - 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"]
.
Mit der folgenden Beispielanfrage und dem zugehörigen Anfragetext wird ein Cloud HSM-Schlüssel erstellt, für den nur Zugriffsbegründungen aus wenigen Gründen zulässig sind:
POST https://cloudkms.googleapis.com/v1/projects/919698201234/locations/asia-northeast1/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
Console
Rufen Sie in der Google Cloud Console die Seite Schlüsselverwaltung auf.
Klicken Sie auf den Namen des Schlüsselbunds, in dem Sie den Schlüssel erstellt haben.
Klicken Sie auf den Namen des Schlüssels, für den Sie die Richtlinie für Key Access Justifications aktualisieren möchten.
Klicken Sie auf Key Access Justifications-Richtlinie bearbeiten.
Führen Sie einen der folgenden Schritte aus:
Wenn Sie die Richtlinie für Key Access Justifications für den Schlüssel deaktivieren möchten, entfernen Sie das Häkchen aus dem Kästchen Richtlinie für Key Access Justifications festlegen.
Wenn Sie die zulässigen Begründungen ändern möchten, klicken Sie auf das Feld Begründungen und wählen Sie die gewünschten Begründungscodes aus oder heben Sie die Auswahl auf. Sowohl Vom Kunden initiierter Zugriff als auch Von Google initiierter Systemvorgang sind für die normale Funktion erforderlich.
Wenn Sie alle Ursachencodes ablehnen möchten, wählen Sie Alle Ursachencodes ablehnen (nicht empfohlen) aus. So wird verhindert, dass der Schlüssel verwendet wird, auch wenn er aktiviert ist und der Anfragende die erforderlichen Berechtigungen hat.
Klicken Sie auf Speichern.
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.
asia-northeast1
. - 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.
- KEY_NAME: Der Name des Schlüssels, den Sie aktualisieren möchten.
Anfragetext:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "PROTECTION_LEVEL", "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
. - PROTECTION_LEVEL: Das Schutzniveau des Schlüssels, z. B.
SOFTWARE
oderHSM
. - 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/asia-northeast1/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.
asia-northeast1
. - 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 Schlüssels, den Sie abrufen möchten.
Mit der folgenden Beispielanfrage werden Metadaten zu einem Schlüssel in Cloud KMS abgerufen:
GET https://cloudkms.googleapis.com/v1/projects/919698201234/locations/asia-northeast1/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
- Sie können auch eine Standardrichtlinie für Key Access Justifications Schlüsselzugriff festlegen (Vorschau).