Configurer Key Access Justifications avec Cloud HSM

Cette page explique comment configurer Key Access Justifications avec Cloud HSM pour Assured Workloads' le package de contrôle des régions Japon.

Lors de la procédure de créer un dossier Assured Workloads pour les régions Japon, vous avez la possibilité de créer un projet et un trousseau de clés pour vos clés de chiffrement. Vous pouvez ajouter des clés Cloud HSM à ce trousseau de clés et configurer une stratégie Key Access Justifications pour contrôler l'accès à chaque clé.

Avant de commencer

  • La possibilité d'utiliser Key Access Justifications avec des clés Cloud HSM n'est disponible que pour le package de contrôle des régions Japon dans Assured Workloads.
  • Assurez-vous que votre administrateur vous a accordé l'un des rôles IAM (Identity and Access Management) requis pour créer et gérer à la fois vos stratégies Key Access Justifications et les clés Cloud HSM elles-mêmes.

Autorisations IAM requises

Pour obtenir les autorisations nécessaires pour créer et gérer des clés Cloud HSM et leurs stratégies Key Access Justifications, demandez à votre administrateur de vous accorder le rôle IAM Administrateur Cloud KMS (roles/cloudkms.admin) sur le projet contenant le trousseau de clés. Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Ce rôle prédéfini contient les autorisations requises pour créer et gérer des clés Cloud HSM et leurs stratégies Key Access Justifications. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour créer et gérer des clés Cloud HSM et leurs stratégies Key Access Justifications :

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

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Configurer une clé Cloud HSM avec Key Access Justifications

Pour configurer Key Access Justifications avec une clé Cloud HSM, vous pouvez inclure la stratégie d'accès aux clés en tant que paramètre lorsque vous créez la clé, ou vous pouvez mettre à jour la clé avec la stratégie une fois la clé créée.

Créer une clé et une stratégie

REST

Créez une clé et une stratégie à l'aide de la cryptoKeys.create méthode :

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

Dans la requête, remplacez les valeurs d'espace réservé suivantes :

  • PROJECT_ID : ID du projet contenant le trousseau de clés auquel vous souhaitez ajouter une clé, par exemple 919698201234.
  • LOCATION : emplacement du trousseau de clés, par exemple us-west1.
  • KEY_RING : nom du trousseau de clés que vous avez spécifié lorsque vous avez créé le projet de gestion des clés et le trousseau de clés de votre dossier Assured Workloads, par exemple my-key-ring.
  • KEY_NAME : nom de la clé HSM que vous souhaitez créer, par exemple my-hsm-key.

Corps de la requête :

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

Dans le corps de la requête, remplacez les valeurs d'espace réservé suivantes :

L'exemple de requête et le corps de la requête suivants n'autorisent les justifications d'accès que pour quelques raisons :

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"
    ]
  }
}

Mettre à jour la stratégie d'une clé existante

REST

Mettez à jour une clé existante dans Cloud KMS à l'aide de la cryptoKeys.patch méthode :

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

Dans la requête, remplacez les valeurs d'espace réservé suivantes :

  • PROJECT_ID : ID du projet contenant le trousseau de clés de la clé, par exemple 919698201234.
  • LOCATION : emplacement du trousseau de clés, par exemple us-west1.
  • KEY_RING : nom du trousseau de clés que vous avez spécifié lorsque vous avez créé le projet de gestion des clés et le trousseau de clés de votre dossier Assured Workloads, par exemple my-key-ring.
  • KEY_NAME : nom de la clé HSM que vous souhaitez mettre à jour, par exemple, my-hsm-key.

Corps de la requête :

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

Dans le corps de la requête, remplacez les valeurs d'espace réservé suivantes :

L'exemple de requête et le corps de la requête suivants n'autorisent les justifications d'accès que pour quelques raisons :

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"
    ]
  }
}

Obtenir la stratégie Key Access Justifications pour une clé

REST

Obtenez des métadonnées sur une clé existante dans Cloud KMS à l'aide de la cryptoKeys.get méthode :

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

Dans les paramètres de la requête, remplacez les valeurs d'espace réservé suivantes par les vôtres :

  • PROJECT_ID : ID du projet contenant le trousseau de clés de la clé, par exemple 919698201234.
  • LOCATION : emplacement du trousseau de clés, par exemple us-west1.
  • KEY_RING : nom du trousseau de clés que vous avez spécifié lorsque vous avez créé le projet de gestion des clés et le trousseau de clés de votre dossier Assured Workloads, par exemple my-key-ring.
  • KEY_NAME : nom de la clé HSM que vous souhaitez obtenir, par exemple my-hsm-key.

L'exemple de requête suivant obtient des métadonnées sur une clé dans Cloud KMS :

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

Le corps de la réponse contient des métadonnées sur votre clé, y compris le keyAccessJustificationsPolicy. Exemple :

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

Étape suivante