Présentation de CMEK

Cette page décrit l'utilisation de CMEK avec Apigee.

Présentation

Par défaut, Google Cloud chiffre automatiquement les données au repos à l'aide de clés de chiffrement gérées par Google. Si vous avez des exigences réglementaires ou de conformité spécifiques concernant les clés qui protègent vos données, vous pouvez utiliser des clés de chiffrement gérées par le client (CMEK).

Pour en savoir plus sur l'utilisation de CMEK avec Apigee, consultez la page Utiliser CMEK avec Apigee. Pour en savoir plus sur CMEK en général, y compris quand et pourquoi l'activer, consultez la documentation de Cloud Key Management Service.

L'utilisation de clés de chiffrement gérées par le client (CMEK) n'offre pas nécessairement plus de sécurité que les mécanismes de chiffrement par défaut de Google. Toutefois, il vous permet de contrôler davantage les aspects du cycle de vie et de la gestion de vos clés afin de répondre aux exigences de sécurité et de conformité.

Avantages du chiffrement CMEK

Si vous avez besoin de davantage de contrôle sur les opérations de clé que ne le permettent les clés de chiffrement gérées par Google, vous pouvez utiliser les clés de chiffrement gérées par le client. Ces clés sont créées et gérées à l'aide de Cloud Key Management Service (Cloud KMS), et vous les stockez sous forme de clés logicielles dans un cluster HSM ou en externe.

Les fonctionnalités de gestion des clés sont fournies par le service Cloud KMS. Vous trouverez ci-dessous des cas d'utilisation courants :

  • Effectuer une rotation de la clé. Alternez la clé automatiquement ou manuellement. Notez que lors de la rotation de la clé, les données précédemment stockées dans Apigee ne sont pas automatiquement rechiffrées avec la nouvelle version de clé, mais elles restent accessibles tant que la version de clé précédente a été utilisée pour le chiffrement. Les données ne sont ni désactivées, ni détruites.
  • Activer ou désactiver une version de clé. Lorsqu'une version de clé est désactivée, les données Apigee chiffrées avec cette version de clé ne sont plus accessibles. Pour restaurer l'accès aux données, vous pouvez réactiver la clé.
  • Détruire une version de clé. Lorsqu'une version de clé est détruite, les données Apigee chiffrées avec cette version deviennent illisibles et irrécupérables. Il s'agit d'une opération permanente et irréversible.
  • Révoquer l'accès de l'agent de service Apigee à la clé à l'aide d'IAM. Si cette opération est effectué, Apigee ne peut accéder à aucune donnée de plan de contrôle chiffrée par une version de clé. Les opérations d'API Apigee qui dépendent du déchiffrement des données échouent. Vous pouvez restaurer l'accès aux données en accordant de nouveau l'accès à la clé et aux opérations de l'API Apigee qui déchiffrent les données.

Quotas

L'utilisation de clés CMEK peut générer une utilisation de certains quotas Cloud KMS. Pour obtenir les informations les plus récentes sur les quotas Cloud KMS, consultez la page Quotas.

Révoquer une clé de chiffrement

Si vous pensez que vos données sur Apigee dans Google Cloud sont compromises, vous pouvez révoquer vos clés de chiffrement. Révoquez la clé CMEK d'exécution pour rendre votre instance d'exécution défaillante et l'empêcher d'accéder aux données de votre passerelle. Révoquez la clé CMEK du plan de contrôle pour empêcher Apigee d'effectuer des analyses ou de déployer de nouveaux proxys.

Utiliser CMEK avec Apigee

Les clés de chiffrement Apigee sont utilisées pour les données d'exécution et de plan de contrôle. Elles sont créées lors du processus de provisionnement.

Les données du plan de contrôle Apigee sont chiffrées à l'aide d'une clé de chiffrement différente de celle des données d'exécution, et peuvent être stockées dans différentes régions. Conformément à la documentation CMEK, ce chiffrement ne s'applique qu'aux données au repos, c'est-à-dire aux données stockées sur un disque.

Les données du plan de contrôle Apigee incluent les configurations de proxy (groupes), certaines données de configuration d'environnement et les données d'analyse. Les données d'exécution Apigee incluent des données d'application telles que les KVM, le cache et les codes secrets des clients, qui sont ensuite stockées dans la base de données d'exécution.

Consultez la section À propos des clés de chiffrement Apigee pour obtenir une description des types de clés de chiffrement.

Vous ne pouvez ajouter des clés de chiffrement qu'au moment de la création de l'organisation Apigee. Une fois qu'une clé CMEK est attribuée, vous ne pouvez pas passer à une autre clé CMEK après la création de l'organisation.

Régions CMEK du plan de contrôle de la résidence des données

Dans le plan de contrôle Apigee régionalisé, vous sélectionnez deux clés de chiffrement pour votre plan de contrôle. En effet, certains des composants sous-jacents au plan de contrôle Apigee se trouvent toujours dans une seule région au sein de l'emplacement du plan de contrôle. Pour en savoir plus, consultez la section Régions de résidence des données.

Détails Clés requises

La région du plan de contrôle est l'emplacement d'exécution du plan de contrôle. Dans Apigee, le plan de contrôle est un concept abstrait où plusieurs composants sous-jacents constituent le plan de contrôle Apigee. Les données du plan de contrôle sont la configuration du proxy et le stockage d'analyse.

D'autres données du plan de contrôle (par exemple, le traitement des données analytiques, les portails, etc.) se trouvent dans une sous-région du plan de contrôle.

Tous les composants de la sous-région se trouvent dans la même région.

Une clé pour les données du plan de contrôle.

Une clé pour les données sous-régionales du plan de contrôle.

Créer des clés de chiffrement

Par défaut, Google gère la création des clés de chiffrement pendant le processus de provisionnement. Vous pouvez toutefois les créer vous-même. Pour plus d'informations, voir À propos des clés de chiffrement Apigee.

Risques et stratégies d'atténuation

Cette section décrit les risques potentiels et les mesures que vous pouvez prendre.

  • Risques :
    • Clé compromise : se produit lorsqu'un pirate informatique parvient à accéder à la clé de chiffrement, potentiellement par le biais de failles dans le service de gestion des clés ou d'attaques contre des administrateurs de clés.
    • Déni de service : un pirate informatique peut perturber l'accès aux clés ou aux données de chiffrement en attaquant le service de gestion des clés ou le système de stockage.
    • Perte de clé : la suppression ou la perte accidentelle d'une clé peut entraîner une perte de données ou les rendre inaccessibles.
  • Stratégies d'atténuation :
    • Implémentez des stratégies renforcées de contrôle des accès et de gestion des clés.
    • Surveillez l'activité et les journaux KMS pour détecter tout comportement suspect.

Dépannage

Le tableau suivant décrit certaines conditions d'erreurs courantes pouvant survenir avec les données du configstore chiffrées par CMEK, le message d'erreur approximatif renvoyé par l'API Apigee et les étapes de dépannage recommandées.

Message d'erreur/symptôme Cause Procédure à suivre
Apigee does not have permission to access key "..." Un utilisateur a révoqué l'accès d'Apigee à la clé KMS fournie, c'est-à-dire, en supprimant le rôle roles/cloudkms.cryptoKeyEncrypterDecrypter. Un utilisateur doit vérifier les rôles configurés sur la clé KMS et s'assurer que l'agent de service Apigee dispose des autorisations nécessaires.
Unable to encrypt/decrypt data. Cloud KMS Error: "..." is not enabled, current state is: DESTROYED. Un utilisateur a désactivé ou supprimé la version de clé utilisée pour chiffrer/déchiffrer les données demandées. L'utilisateur doit réactiver la version de clé si possible. Si la clé ou la version de clé a été détruite, les données sont irrécupérables.
No new Analytics data for US/EU users L'une des causes possibles de ce problème peut être une clé de région unique révoquée/désactivée ou supprimée. Un utilisateur doit réactiver ou restaurer l'accès aux clés à région unique.
Control plane key "..." in region "..." is not valid for this control plane instance. Supported region(s) are "…". Un utilisateur a fourni une clé de plan de contrôle à région unique dans une région non valide ou compatible avec la région ou l'emplacement multirégional diffusé par l'instance du plan de contrôle. Un utilisateur doit fournir une clé dans l'une des régions compatibles ou choisir d'utiliser une autre instance de plan de contrôle.
Multi-region control plane key is not valid for this control plane instance. Specify only the "apiConsumerDataEncryptionKeyName" field. Un utilisateur a fourni une clé de plan de contrôle multirégional dans un plan de contrôle qui n'existe que dans une seule région (c'est-à-dire un plan de contrôle non multirégional). Un utilisateur doit soit omettre le champ de clé multirégionale, soit choisir d'utiliser une instance de plan de contrôle multirégional.
Multi-region control plane key is not valid for this control plane instance. Specify a multi-region key with region "..." Un utilisateur a fourni une clé de plan de contrôle multirégional à la mauvaise instance multirégionale de plan de contrôle (par exemple, une clé "us" de l'instance de plan de contrôle "eu"). Un utilisateur doit utiliser une clé multirégionale dans l'emplacement multirégional approprié ou choisir d'utiliser une autre instance de plan de contrôle multirégional.