Règles d'administration CMEK

Cloud de Confiance by S3NS propose deux contraintes de règle d'administration pour garantir l'utilisation des CMEK dans toute l'organisation :

  • constraints/gcp.restrictNonCmekServices est utilisé pour exiger la protection CMEK.
  • constraints/gcp.restrictCmekCryptoKeyProjects permet de limiter les clés Cloud KMS utilisées pour la protection CMEK.

Règles d'administration CMEK ne s'appliquent qu'aux ressources nouvellement créées dans les services Cloud de Confiance compatibles.

Rôles requis

Pour vous assurer que chaque utilisateur dispose des autorisations nécessaires pour vérifier les règles d'administration lors de la création de ressources, demandez à votre administrateur d'accorder le rôle IAM Lecteur de règles d'administration (roles/orgpolicy.policyViewer) à chaque utilisateur de votre organisation. 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 vérifier les règles d'administration lors de la création de ressources. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour vérifier les règles d'administration lors de la création de ressources :

  • Pour afficher tous les détails d'une règle d'administration : orgpolicy.policy.get
  • Pour vérifier la règle d'administration lors de la création de ressources : orgpolicy.policies.check

Votre administrateur peut également attribuer ces autorisations à chaque utilisateur avec des rôles personnalisés ou d'autres rôles prédéfinis.

Lorsque les règles d'administration sont actives, l'autorisation orgpolicy.policies.check est requise pour les utilisateurs de la console Cloud de Confiance qui créent des ressources protégées par des clés CMEK. Les utilisateurs ne disposant pas de cette autorisation peuvent créer des ressources protégées par CMEK à l'aide de la console Cloud de Confiance , mais ils peuvent sélectionner une clé CMEK qui n'est pas autorisée par la contrainte restrictCmekCryptoKeyProjects. Lorsqu'une clé ne respectant pas cette contrainte est sélectionnée, la création de la ressource finit par échouer.

Exiger la protection CMEK

Pour exiger la protection CMEK pour votre organisation, configurez la règle d'administration constraints/gcp.restrictNonCmekServices.

En tant que contrainte de liste, les valeurs acceptées pour cette contrainte sont les noms de service Cloud de Confiance by S3NS(par exemple, bigquery.googleapis.com). Utilisez cette contrainte en fournissant une liste de noms de service Cloud de Confiance by S3NS et en définissant la contrainte sur Refuser. Cette configuration bloque la création de ressources dans ces services si la ressource n'est pas protégée par une CMEK. En d'autres termes, les requêtes de création d'une ressource dans le service échouent si aucune clé Cloud KMS n'est spécifiée. De plus, cette contrainte bloque la suppression de la protection CMEK des ressources de ces services. Cette contrainte ne peut être appliquée qu'aux services compatibles.

Limiter l'utilisation des clés Cloud KMS pour les CMEK

Pour limiter les clés Cloud KMS utilisées pour la protection CMEK, configurez la contrainte constraints/gcp.restrictCmekCryptoKeyProjects.

En tant que contrainte de liste, les valeurs acceptées sont des indicateurs de hiérarchie des ressources (par exemple, projects/PROJECT_ID, under:folders/FOLDER_ID et under:organizations/ORGANIZATION_ID). Utilisez cette contrainte en configurant une liste d'indicateurs de hiérarchie des ressources et en définissant la contrainte sur Autoriser. Cette configuration limite les services compatibles afin que les clés CMEK ne puissent être choisies que parmi les projets, dossiers et organisations listés. Les requêtes de création de ressources protégées par CMEK dans les services configurés échouent si elles ne sont pas accompagnées d'une clé Cloud KMS provenant de l'une des ressources autorisées. Lorsqu'elle est configurée, cette contrainte s'applique à tous les services compatibles.

Services compatibles

Service Valeur de la contrainte lorsque vous exigez une clé CMEK
Cloud Storage storage.googleapis.com

Exceptions d'application par type de ressource

Les contraintes des règles d'administration CMEK sont appliquées lors de la création d'une ressource ou lors de la modification (si possible) de la clé Cloud KMS sur une ressource existante. En règle générale, elles sont appliquées à tous les types de ressources d'un service compatibles avec les CMEK et sont basées uniquement sur la configuration de la ressource. Voici quelques exceptions notables :

Type de ressource Exception à l'application
storage.googleapis.com/Bucket Appliquée à la clé Cloud KMS par défaut du bucket
storage.googleapis.com/Object Appliquée indépendamment du bucket. Consultez également la configuration distincte de la clé Cloud KMS par défaut du bucket.

Exemples de configuration

Dans les exemples de configuration, supposons que l'exemple d'organisation présente la hiérarchie de ressources suivante :

Diagramme d'une hiérarchie des ressources d'une organisation

Exiger des CMEK et limiter les clés pour un projet

Supposons que vous souhaitiez exiger une protection CMEK pour toutes les ressources Cloud Storage sous projects/5 et vous assurer que seules les clés provenant de projects/4 peuvent être utilisées.

Pour exiger la protection CMEK pour toutes les nouvelles ressources Cloud Storage, utilisez le paramètre de règle d'administration suivant :

  • Règle d'administration : constraints/gcp.restrictNonCmekServices
  • Liaison à : projects/5
  • Type de règle : Refuser
  • Valeur de la règle : storage.googleapis.com

Pour vous assurer que seules les clés de projects/4 sont utilisées, utilisez la configuration suivante :

  • Règle d'administration : constraints/gcp.restrictCmekCryptoKeyProjects
  • Liaison à : projects/5
  • Type de règle : Autoriser
  • Valeur de la règle : projects/4

Exiger les CMEK et limiter les clés à un dossier

Supposons maintenant que vous prévoyez d'ajouter d'autres projets Cloud KMS sous folders/2 à l'avenir et que vous souhaitez exiger l'utilisation de CMEK plus largement dans folders/3. Pour ce scénario, vous avez besoin de configurations légèrement différentes.

Pour exiger une protection CMEK supplémentaire pour les nouvelles ressources Cloud SQL et Cloud Storage n'importe où sous folders/3 :

  • Règle d'administration : constraints/gcp.restrictNonCmekServices
  • Liaison à : folders/3
  • Type de règle : Refuser
  • Valeurs de la règle : sqladmin.googleapis.com, storage.googleapis.com

Pour vous assurer que seules les clés des projets Cloud KMS sous folders/2 sont utilisées :

  • Règle d'administration : constraints/gcp.restrictCmekCryptoKeyProjects
  • Liaison à : folders/3
  • Type de règle : Autoriser
  • Valeur de la règle : under:folders/2

Exiger des clés CMEK pour une organisation

Pour exiger des CMEK partout dans l'organisation (dans les services compatibles), configurez la contrainte constraints/gcp.restrictNonCmekServices avec le paramètre suivant :

  • Règle d'administration : constraints/gcp.restrictNonCmekServices
  • Liaison à : organizations/1
  • Type de règle : Refuser
  • Valeurs des règles : (tous les services compatibles)

Limites

Si vous utilisez la console Cloud de Confiance pour créer une ressource, vous remarquerez peut-être que vous ne pouvez pas utiliser d'options de chiffrement autres que CMEK lorsqueconstraints/gcp.restrictNonCmekServicesest configuré pour un projet et un service. La restriction de la règle d'administration CMEK n'est visible que lorsque le compte client dispose de l'autorisation IAM orgpolicy.policy.get sur le projet.

Étapes suivantes

Pour en savoir plus sur les avantages et les cas d'utilisation courants des règles d'administration d'administration, consultez la page Présentation du service de règles d'administration.

Pour obtenir d'autres exemples de création de règles d'administration avec des contraintes particulières, consultez Utiliser des contraintes.