Configurazione di Key Access Justifications con Cloud HSM

Questa pagina descrive come configurare Key Access Justifications con Cloud HSM per Assured Workloads Pacchetto di controllo per le regioni del Giappone.

Durante i passaggi per crea 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 di crittografia. Le chiavi Cloud HSM possono essere è stato aggiunto a questo keyring e puoi anche configurare un criterio Key Access Justifications 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 controllo per le regioni del Giappone in Assured Workloads.
  • Assicurati che l'amministratore ti abbia concesso uno dei Ruoli IAM (Identity and Access Management) per creare e gestire i criteri Key Access Justifications e le stesse chiavi Cloud HSM.

Autorizzazioni IAM richieste

Per ottenere le autorizzazioni necessarie per creare e gestire le chiavi Cloud HSM e i relativi criteri di giustificazione dell'accesso alle chiavi, chiedi all'amministratore di concederti il ruolo IAM Amministratore Cloud KMS (roles/cloudkms.admin) nel progetto contenente il portachiavi. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per creare e gestire le chiavi Cloud HSM e i relativi criteri di giustificazione dell'accesso alle chiavi. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare e gestire le chiavi Cloud HSM e i relativi criteri Key Access Justifications sono necessarie le seguenti autorizzazioni:

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

Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.

Configurare una chiave Cloud HSM con giustificazioni per l'accesso alle chiavi

Per configurare Key Access Justifications con una chiave Cloud HSM, puoi includere il valore criterio di accesso alla chiave come parametro quando crei la chiave. In alternativa, puoi aggiornare il con il criterio dopo la creazione della chiave.

Creare una nuova chiave e un nuovo criterio

REST

Crea una nuova chiave e un nuovo criterio utilizzando 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 su cui vuoi aggiungere una chiave, ad esempio 919698201234.
  • LOCATION: la posizione del keyring, ad esempio us-west1.
  • KEY_RING: il nome del keyring specificato durante hai creato il progetto di gestione delle chiavi della tua cartella Assured Workloads e keyring, ad esempio my-key-ring.
  • KEY_NAME: il nome della chiave HSM che vuoi creare, per 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 diversi scopi delle chiavi, consulta Scopi delle chiavi, ad esempio ENCRYPT_DECRYPT.
  • ALGORITHM: l'algoritmo crittografico da utilizzare. Per un elenco degli algoritmi disponibili, consulta gli algoritmi Cloud KMS, ad esempio GOOGLE_SYMMETRIC_ENCRYPTION.
  • ALLOWED_ACCESS_REASONS: il criterio Key Access Justifications che definisce zero o più consentiti codici di giustificazione per accedere alla chiave di crittografia, ad esempio CUSTOMER_INITIATED_ACCESS.

L'esempio seguente di richiesta e corpo della richiesta consente solo l'accesso più giustificabili per vari 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 il criterio di una chiave esistente

REST

Aggiorna una chiave esistente in Cloud KMS utilizzando 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 che contiene l'anello di chiavi per la chiave, ad esempio 919698201234.
  • LOCATION: la posizione del portachiavi, ad esempio us-west1.
  • KEY_RING: il nome del keyring specificato durante hai creato il progetto di gestione delle chiavi della tua cartella Assured Workloads e keyring, 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 diversi scopi delle chiavi, consulta Scopi delle chiavi, ad esempio ENCRYPT_DECRYPT.
  • ALGORITHM: l'algoritmo crittografico da utilizzare. Per un elenco di agli algoritmi disponibili, vedi Algoritmi di Cloud KMS, ad esempio GOOGLE_SYMMETRIC_ENCRYPTION.
  • ALLOWED_ACCESS_REASONS: il criterio Key Access Justifications che definisce zero o più consentiti codici di giustificazione per accedere alla chiave di crittografia, ad esempio CUSTOMER_INITIATED_ACCESS.

La richiesta e il corpo della richiesta di esempio che seguono consentono giustificazioni di accesso 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"
    ]
  }
}

Recupero del criterio Key Access Justifications per una chiave

REST

Recupera i metadati su 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 di 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 del keyring, ad esempio us-west1.
  • KEY_RING: il nome del keyring 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 recuperare, 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 sulla chiave, inclusi i campi keyAccessJustificationsPolicy Ad esempio:

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