Cette page décrit le fonctionnement des clés de chiffrement gérées par le client (CMEK) avec Memorystore pour Redis Cluster. Pour utiliser cette fonctionnalité immédiatement, consultez Utiliser des clés de chiffrement gérées par le client (CMEK).
À qui s'adresse CMEK ?
La fonctionnalité CMEK est destinée aux organisations qui traitent des données sensibles ou réglementées pour lesquelles elles doivent gérer leurs propres clés de chiffrement.
Chiffrement géré par Google et chiffrement géré par le client
La fonctionnalité CMEK vous permet d'utiliser vos propres clés de chiffrement pour les données au repos dans Memorystore pour Redis Cluster. Pour les instances Memorystore for Redis Cluster pour lesquelles CMEK est activé, Google utilise vos clés pour accéder à toutes les données au repos.
Memorystore utilise des clés de chiffrement des données (DEK, Data Encryption Key) et des clés de chiffrement de clé (KEK, Key Encryption Key) gérées par Google pour chiffrer les données dans Memorystore pour Redis Cluster. Il existe deux niveaux de chiffrement :
- Chiffrement DEK : Memorystore utilise des DEK pour chiffrer les données dans Memorystore pour Redis Cluster.
- Chiffrement KEK : Memorystore utilise des KEK pour chiffrer les DEK.
L'instance Memorystore pour Redis Cluster stocke la clé DEK chiffrée ainsi que les données chiffrées sur le disque, et Google gère la clé KEK Google. Avec CMEK, vous créez une clé qui encapsule la clé KEK Google. CMEK vous permet de créer, de désactiver ou de détruire, de faire pivoter et d'activer ou de restaurer la clé KEK.
Les schémas suivants montrent le fonctionnement du chiffrement des données au repos dans une instance Memorystore pour Redis Cluster en cas d'utilisation du chiffrement par défaut géré par Google et en cas d'utilisation des CMEK.
Sans CMEK
Avec CMEK
Lors du déchiffrement des données encapsulées avec une clé CMEK, Memorystore utilise la clé KEK de Cloud Key Management Service pour déchiffrer la clé DEK, puis il utilise la clé DEK non chiffrée pour déchiffrer les données au repos.
Tarifs
Memorystore for Redis Cluster facture les clusters compatibles CMEK comme n'importe quel autre cluster. Il n'y a pas de frais supplémentaires. Pour en savoir plus, consultez la page Tarifs de Memorystore pour Redis Cluster.
Vous utilisez l'API Cloud KMS pour gérer CMEK. Lorsque vous créez une instance Memorystore pour Redis Cluster avec CMEK, Memorystore utilise la clé périodiquement pour chiffrer les données afin de s'assurer que les autorisations pour la clé sont correctes et que la clé est activée.
Cloud KMS vous facture le coût de la clé, ainsi que les opérations de chiffrement et de déchiffrement lorsque Memorystore pour Redis Cluster utilise la clé. Pour en savoir plus, consultez la page Tarifs de Cloud KMS.
Quelles données sont chiffrées à l'aide de CMEK ?
Le chiffrement CMEK chiffre les types de données client suivants stockés dans un espace de stockage persistant :
- Sauvegardes : les sauvegardes vous permettent de récupérer vos données à un moment précis, et d'exporter et d'analyser des données. Les sauvegardes sont également utiles pour la reprise après sinistre, la migration de données, le partage de données et les scénarios de conformité.
- Persistance : Memorystore for Redis Cluster est compatible avec deux types de persistance :
- Persistance RDB : la fonctionnalité de base de données Redis (RDB) protège vos données en enregistrant des instantanés de vos données dans un espace de stockage durable.
- Persistance AOF : cette fonctionnalité donne la priorité à la durabilité des données. Il stocke les données de manière durable en enregistrant chaque commande d'écriture dans un fichier journal appelé fichier AOF (Append-Only File). En cas de défaillance ou de redémarrage du système, le serveur relit les commandes du fichier AOF de manière séquentielle pour restaurer vos données.
À propos des comptes de service
Lorsque vous créez une instance avec CMEK, vous devez attribuer le rôle cloudkms.cryptoKeyEncrypterDecrypter au compte de service Memorystore pour Redis Cluster, qui présente le format suivant :
service-[PROJECT_NUMBER]@cloud-redis.iam.gserviceaccount.com
Cette autorisation permet au compte de service de demander l'accès aux clés à Cloud KMS.
Pour savoir comment accorder cette autorisation au compte de service, consultez Accorder l'accès à la clé au compte de service Memorystore pour Redis Cluster.
À propos des clés
Dans Cloud KMS, vous devez créer un trousseau avec une clé cryptographique qui utilise un algorithme de chiffrement symétrique. Lorsque vous créez une instance Memorystore pour Redis Cluster, vous sélectionnez cette clé pour chiffrer l'instance. Vous pouvez créer un projet unique pour vos clés et vos instances, ou un projet distinct pour chaque élément.
CMEK est disponible dans tous les emplacements d'instances Memorystore for Redis Cluster. Vous devez définir la région de la clé et du trousseau de clés sur la même région que l'instance. Une clé d'une région mondiale ou d'un emplacement multirégional ne fonctionne pas. Si les régions ne correspondent pas, une requête de création d'instance échoue.
CMEK utilise le format suivant :
projects/[CMEK_ENABLED_PROJECT]/locations/[REGION]/keyRings/[KEY_RING_NAME]/cryptoKeys/[KEY_NAME]
Comment rendre les données chiffrées par CMEK définitivement inaccessibles ?
Vous pouvez être amené à détruire définitivement des données chiffrées avec CMEK. Pour ce faire, détruisez la version de clé. Vous ne pouvez pas détruire le trousseau ni la clé, mais vous pouvez supprimer les versions de la clé.
Comportement d'une version de clé CMEK
Cette section explique ce qui se passe lorsque vous désactivez, détruisez, faites pivoter, activez ou restaurez une version de clé.
Désactiver ou détruire une version de clé CMEK
Si vous désactivez ou détruisez la version principale de votre clé CMEK, les conditions suivantes s'appliquent aux sauvegardes et à la persistance.
Sauvegardes
- Vous ne pouvez pas créer de sauvegardes à la demande ni automatiques. Toutefois, si vous activez une ancienne version de clé, vous pouvez accéder à toutes les sauvegardes que vous avez créées à l'aide de cette version de clé.
- Vous ne pouvez pas mettre à jour ni réactiver les sauvegardes automatiques tant que vous n'avez pas activé ou restauré la version principale de la clé.
Persistance
- Si vous activez la persistance, le cluster Memorystore pour Redis effectue une mise à jour semblable à celle utilisée lors de la maintenance et désactive la fonctionnalité de persistance. Vous n'êtes plus facturé pour cette fonctionnalité.
- Memorystore pour Redis Cluster ne vide pas les nouvelles données dans le stockage persistant à l'aide de CMEK.
- Memorystore pour Redis Cluster ne peut pas lire les données existantes présentes dans le stockage persistant.
- Vous ne pouvez pas mettre à jour ni réactiver la persistance tant que vous n'avez pas activé ou restauré la version de clé primaire.
Si vous activez la version principale de votre clé CMEK, mais que vous désactivez ou détruisez une ancienne version de clé, les conditions suivantes s'appliquent aux sauvegardes et à la persistance :
- Vous pouvez créer des sauvegardes. Toutefois, si une sauvegarde est chiffrée avec une version de clé plus ancienne qui est désactivée ou détruite, elle reste inaccessible.
- Si vous activez la persistance, cette fonctionnalité reste activée. Si l'ancienne version de clé utilisée pour la persistance est désactivée ou détruite, Memorystore pour Redis Cluster effectue une mise à jour semblable à celle utilisée lors de la maintenance et rechiffre les données avec la version de clé principale.
Effectuer la rotation de la version principale de la clé CMEK
Si vous effectuez une rotation de la version principale de votre clé CMEK et que vous en créez une autre, les conditions suivantes s'appliquent aux sauvegardes et à la persistance :
- La dernière version de clé primaire de votre CMEK chiffre les nouvelles sauvegardes.
- Aucun rechiffrement n'est effectué pour les sauvegardes existantes.
- Pour la persistance, les VM n'effectuent aucune action. Les VM continuent d'utiliser l'ancienne version de la clé jusqu'au prochain événement de maintenance.
Activer ou restaurer la version principale de la clé CMEK
Si vous activez ou restaurez la version principale de votre clé CMEK, les conditions suivantes s'appliquent aux sauvegardes et à la persistance :
- Vous pouvez à nouveau créer des sauvegardes à la demande et automatiques.
- Memorystore pour Redis Cluster effectue une mise à jour semblable à celle utilisée lors de la maintenance et réactive la persistance.
Limites
Les limites suivantes s'appliquent lorsque vous utilisez CMEK avec Memorystore pour Redis Cluster :
- Vous ne pouvez pas activer CMEK sur un déploiement Memorystore for Redis Cluster existant.
- La région de la clé, du trousseau de clés et de l'instance doit être identique.
- Vous devez utiliser l'algorithme de chiffrement symétrique pour votre clé.
- Les taux de chiffrement et de déchiffrement de Cloud KMS sont soumis à un quota.