Configurare Key Access Justifications con Cloud HSM
Questa pagina descrive come configurare Key Access Justifications con Cloud HSM per il pacchetto di controlli delle regioni del Giappone di Assured Workloads.
Durante i passaggi per creare una nuova cartella Assured Workloads per le regioni del Giappone, hai la possibilità di creare un nuovo progetto e un keyring per le tue chiavi crittografiche. Le chiavi Cloud HSM possono essere aggiunte a questo keyring e puoi anche configurare una policy Key Access Justifications per controllare l'accesso a ogni chiave.
Prima di iniziare
- La possibilità di utilizzare Key Access Justifications con le chiavi Cloud HSM è disponibile solo per il pacchetto di controlli delle regioni del Giappone in Assured Workloads.
- Assicurati che l'amministratore ti abbia concesso uno dei ruoli Identity and Access Management (IAM) necessari per creare e gestire sia i criteri Key Access Justifications sia le chiavi Cloud HSM.
Autorizzazioni IAM richieste
Per ottenere le autorizzazioni
necessarie per creare e gestire le chiavi Cloud HSM e le relative policy di Key Access Justifications,
chiedi all'amministratore di concederti il
ruolo IAM Cloud KMS Admin (roles/cloudkms.admin
)
sul progetto contenente il portachiavi.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per creare e gestire le chiavi Cloud HSM e le relative policy di giustificazione dell'accesso alle chiavi. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare e gestire le chiavi Cloud HSM e le relative policy Key Access Justifications sono necessarie le seguenti autorizzazioni:
-
cloudkms.cryptoKeys.create
-
cloudkms.cryptoKeys.update
-
cloudkms.cryptoKeys.get
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Configura una chiave Cloud HSM con Key Access Justifications
Per configurare Key Access Justifications con una chiave Cloud HSM, puoi includere la policy di accesso alla chiave come parametro quando crei la chiave oppure puoi aggiornare la chiave con la policy dopo la creazione.
Crea una nuova chiave e una nuova policy
REST
Crea una nuova chiave e una nuova policy utilizzando il metodo
cryptoKeys.create
:
POST https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME
Nella richiesta, sostituisci i seguenti valori segnaposto:
- PROJECT_ID: l'ID progetto che contiene il portachiavi a cui vuoi aggiungere una chiave, ad esempio
919698201234
. - LOCATION: la posizione delle chiavi automatizzate, ad esempio
us-west1
. - KEY_RING: il nome del keyring che hai specificato quando hai creato il progetto di gestione delle chiavi e il keyring della cartella Assured Workloads, ad esempio
my-key-ring
. - KEY_NAME: il nome della chiave HSM che vuoi creare, ad esempio
my-hsm-key
.
Corpo della richiesta:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
Nel corpo della richiesta, sostituisci i seguenti valori segnaposto:
- PURPOSE: lo scopo della chiave. Per un elenco di scopi diversi
delle chiavi, consulta
Scopi delle chiavi, ad esempio
ENCRYPT_DECRYPT
. - ALGORITHM: L'algoritmo crittografico da utilizzare. Per un elenco degli algoritmi disponibili, consulta Algoritmi Cloud KMS, ad esempio
GOOGLE_SYMMETRIC_ENCRYPTION
. - ALLOWED_ACCESS_REASONS: la policy Key Access Justifications che definisce zero o più codici di giustificazione consentiti per l'accesso alla chiave di crittografia, ad esempio
["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]
.
La seguente richiesta di esempio e il corpo della richiesta consentono l'accesso alle giustificazioni solo per alcuni motivi:
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" ] } }
Aggiorna la policy di una chiave esistente
REST
Aggiorna una chiave esistente in Cloud KMS utilizzando il metodo
cryptoKeys.patch
:
PATCH https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?update_mask=keyAccessJustificationsPolicy
Nella richiesta, sostituisci i seguenti valori segnaposto:
- PROJECT_ID: l'ID progetto del progetto che contiene il portachiavi per la chiave, ad esempio
919698201234
. - LOCATION: la posizione delle chiavi automatizzate, ad esempio
us-west1
. - KEY_RING: il nome del keyring che hai specificato quando hai creato il progetto di gestione delle chiavi e il keyring della cartella Assured Workloads, ad esempio
my-key-ring
. - KEY_NAME: il nome della chiave HSM che vuoi aggiornare, ad esempio
my-hsm-key
.
Corpo della richiesta:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
Nel corpo della richiesta, sostituisci i seguenti valori segnaposto:
- PURPOSE: lo scopo della chiave. Per un elenco di scopi diversi
delle chiavi, consulta
Scopi delle chiavi, ad esempio
ENCRYPT_DECRYPT
. - ALGORITHM: L'algoritmo crittografico da utilizzare. Per un elenco degli algoritmi disponibili, consulta Algoritmi Cloud KMS, ad esempio
GOOGLE_SYMMETRIC_ENCRYPTION
. - ALLOWED_ACCESS_REASONS: la policy Key Access Justifications che definisce zero o più codici di giustificazione consentiti per l'accesso alla chiave di crittografia, ad esempio
["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]
.
La seguente richiesta di esempio e il corpo della richiesta consentono l'accesso alle giustificazioni solo per alcuni motivi:
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" ] } }
Recupera la policy Key Access Justifications per una chiave
REST
Recupera i metadati di una chiave esistente in Cloud KMS utilizzando il metodo
cryptoKeys.get
:
GET https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME
Nei parametri della richiesta, sostituisci i seguenti valori segnaposto con i tuoi:
- PROJECT_ID: l'ID progetto che contiene il portachiavi per la
chiave, ad esempio
919698201234
. - LOCATION: la posizione delle chiavi automatizzate, ad esempio
us-west1
. - KEY_RING: il nome del keyring che hai specificato quando hai creato il progetto di gestione delle chiavi e il keyring della cartella Assured Workloads, ad esempio
my-key-ring
. - KEY_NAME: il nome della chiave HSM che vuoi ottenere, ad esempio
my-hsm-key
.
La seguente richiesta di esempio recupera i metadati di una chiave in Cloud KMS:
GET https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys/my-hsm-key
Il corpo della risposta contiene i metadati della chiave, incluso il
keyAccessJustificationsPolicy
.
Ad esempio:
{ "purpose": "ENCRYPT_DECRYPT", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ "CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION" ] } }