Définir la stratégie Key Access Justifications par défaut

Cette page vous explique comment configurer des règles de Key Access Justifications par défaut pour Assured Workloads. Vous pouvez définir une règle Key Access Justifications par défaut pour une organisation, un dossier ou un projet. La stratégie Key Access Justifications par défaut est automatiquement appliquée aux nouvelles clés créées dans cette ressource, sauf si une stratégie Key Access Justifications est définie sur la clé lors de sa création. Les règles par défaut concernant les justifications d'accès aux clés ne s'appliquent pas aux clés existantes.

Avant de commencer

  • La possibilité de définir des règles de Key Access Justifications par défaut pour les clés Cloud KMS n'est disponible que pour le package de contrôles des régions du Japon dans Assured Workloads.

Autorisations IAM requises

Pour obtenir les autorisations nécessaires pour créer et gérer des règles de Key Access Justifications par défaut, demandez à votre administrateur de vous accorder le rôle IAM Administrateur de configuration des règles de justifications d'accès aux clés (roles/cloudkms.keyAccessJustificationsPolicyConfigAdmin) sur l'organisation, le dossier ou le projet contenant la clé. Pour en savoir plus sur l'attribution de rôles, consultez la page 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 les règles de Key Access Justifications par défaut. 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 les stratégies Key Access Justifications par défaut :

  • cloudkms.keyAccessJustificationsConfig.getKeyAccessJustificationsPolicyConfig
  • cloudkms.keyAccessJustificationsConfig.updateKeyAccessJustificationsPolicyConfig
  • cloudkms.keyAccessJustificationsConfig.showEffectiveKeyAccessJustificationsPolicyConfig

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

Définir une stratégie Key Access Justifications par défaut

REST

Créez ou mettez à jour une stratégie Key Access Justifications par défaut dans une organisation à l'aide de la méthode organizations.updateKeyAccessJustificationsPolicyConfig :

curl "https://cloudkms.googleapis.com/v1/organizations/ORGANIZATION_ID/kajPolicyConfig?updateMask=defaultKeyAccessJustificationPolicy" \
  --request "PATCH" \
  --header "authorization: Bearer TOKEN" \
  --header "content-type: application/json" \
  --data '{"name": "organizations/ORGANIZATION_ID/kajPolicyConfig", "defaultKeyAccessJustificationPolicy": POLICY}'

Remplacez les éléments suivants :

  • ORGANIZATION_ID : ID de l'organisation pour laquelle vous souhaitez définir la stratégie de Key Access Justifications par défaut.
  • POLICY : liste des allowedAccessReasons autorisées par le règlement sur Key Access Justifications, au format objet JSON (par exemple, {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]}). Pour obtenir la liste des motifs de justification possibles, consultez les codes de justification.

Créez ou mettez à jour une stratégie Key Access Justifications par défaut dans un dossier à l'aide de la méthode folders.updateKeyAccessJustificationsPolicyConfig :

curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/kajPolicyConfig?updateMask=defaultKeyAccessJustificationPolicy" \
  --request "PATCH" \
  --header "authorization: Bearer TOKEN" \
  --header "content-type: application/json" \
  --data '{"name": "folders/FOLDER_ID/kajPolicyConfig", "defaultKeyAccessJustificationPolicy": POLICY}'

Remplacez les éléments suivants :

  • FOLDER_ID : ID du dossier pour lequel vous souhaitez définir la stratégie de Key Access Justifications par défaut.
  • POLICY : liste des allowedAccessReasons autorisées par le règlement sur Key Access Justifications, au format objet JSON (par exemple, {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]}). Pour obtenir la liste des motifs de justification possibles, consultez les codes de justification.

Créez ou mettez à jour une stratégie Key Access Justifications par défaut dans un projet à l'aide de la méthode projects.updateKeyAccessJustificationsPolicyConfig :

curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/kajPolicyConfig?updateMask=defaultKeyAccessJustificationPolicy" \
  --request "PATCH" \
  --header "authorization: Bearer TOKEN" \
  --header "content-type: application/json" \
  --data '{"name": "projects/PROJECT_ID/kajPolicyConfig", "defaultKeyAccessJustificationPolicy": POLICY}'

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet pour lequel vous souhaitez définir la stratégie par défaut de Key Access Justifications.
  • POLICY : liste des allowedAccessReasons autorisées par le règlement sur Key Access Justifications, au format objet JSON (par exemple, {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]}). Pour obtenir la liste des motifs de justification possibles, consultez les codes de justification.

Obtenir une stratégie Key Access Justifications par défaut

REST

Obtenez des métadonnées sur la stratégie Key Access Justifications par défaut existante dans une organisation à l'aide de la méthode organizations.getKajPolicyConfig :

curl "https://cloudkms.googleapis.com/v1/organizations/ORGANIZATION_ID/kajPolicyConfig"

Remplacez ORGANIZATION_ID par l'ID de l'organisation pour laquelle vous souhaitez obtenir la stratégie de Key Access Justifications par défaut.

La réponse est semblable à ce qui suit :

{
  "name" : "organizations/ORGANIZATION_ID/kajPolicyConfig"
  "defaultKeyAccessJustificationPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Obtenez les métadonnées de la stratégie Key Access Justifications par défaut existante dans un dossier à l'aide de la méthode folders.getKajPolicyConfig :

curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/kajPolicyConfig"

Remplacez FOLDER_ID par l'ID du dossier pour lequel vous souhaitez obtenir la stratégie de justification d'accès aux clés par défaut.

La réponse est semblable à ce qui suit :

{
  "name" : "folders/FOLDER_ID/kajPolicyConfig"
  "defaultKeyAccessJustificationPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Obtenez des métadonnées sur la stratégie Key Access Justifications par défaut existante dans un projet à l'aide de la méthode projects.getKajPolicyConfig :

curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/kajPolicyConfig"

Remplacez PROJECT_ID par l'ID du projet pour lequel vous souhaitez obtenir la règle de Key Access Justifications par défaut.

La réponse est semblable à ce qui suit :

{
  "name" : "project/PROJECT_ID/kajPolicyConfig"
  "defaultKeyAccessJustificationPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Obtenir la stratégie Key Access Justifications par défaut effective sur un projet

Les projets héritent de la règle par défaut de leur ancêtre le plus proche. Si plusieurs règles par défaut sont définies sur les ancêtres d'un même projet, vous pouvez obtenir la règle en vigueur pour le projet afin de voir la règle appliquée aux nouvelles clés Cloud KMS créées dans ce projet.

REST

Obtenez des métadonnées sur la stratégie Key Access Justifications par défaut effective sur un projet à l'aide de la méthode projects.showEffectiveKeyAccessJustificationsPolicyConfig :

curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID:showEffectiveKeyAccessJustificationsPolicyConfig"

Remplacez PROJECT_ID par l'ID du projet pour lequel vous souhaitez obtenir la stratégie de Key Access Justifications par défaut effective.

La réponse est semblable à ce qui suit :

{
  "effectiveKajPolicy" : {
    "name" : "folders/FOLDER_ID/kajPolicyConfig"
    "defaultKeyAccessJustificationPolicy": {
      "allowedAccessReasons": [
        "CUSTOMER_INITIATED_ACCESS",
        "GOOGLE_INITIATED_SYSTEM_OPERATION"
      ]
    }
  }
}

Étapes suivantes