Clés de chiffrement gérées par le client (CMEK)

Par défaut, toutes les données au repos dans Firestore en mode Datastore sont chiffrées à l'aide de la méthode Chiffrement par défaut de Google Firestore en mode Datastore gère et gère ce chiffrement à votre place sans aucune action supplémentaire de votre part.

Si vous avez des exigences réglementaires ou de conformité spécifiques liées aux clés qui protègent vos données, vous pouvez utiliser des clés de chiffrement gérées par le client (CMEK) Firestore en mode Datastore. Au lieu de laisser Google gérer les clés de chiffrement vos données, la base de données Firestore en mode Datastore est protégée à l'aide d'une clé contrôler et gérer dans Cloud Key Management Service (Cloud KMS).

Cette page décrit le chiffrement CMEK pour Firestore en mode Datastore. Pour en savoir plus sur les CMEK en général, y compris quand et pourquoi l'activer, consultez la Documentation Cloud KMS Pour obtenir des instructions sur l'exécution Pour les tâches liées aux CMEK avec Firestore en mode Datastore, consultez la page Utiliser des CMEK.

Fonctionnalités

  • Contrôle des données: une CMEK vous permet de gérer l'accès à la clé KMS. Vous pouvez la rotation, la désactivation et la destruction de la clé utilisée pour chiffrer les données au repos dans votre base de données Firestore en mode Datastore.
  • Performance: la clé CMEK n'a aucune incidence Contrat de niveau de service Firestore.
  • Possibilité de réaliser des audits: si vous Activer les journaux d'audit pour Cloud KMS toutes les opérations effectuées sur la clé sont enregistrées et consultables dans Cloud Logging.
  • Contraintes liées aux règles d'administration: vous pouvez utiliser Contraintes liées aux règles d'administration CMEK permettant de spécifier les exigences de conformité du chiffrement pour les bases de données Firestore en mode Datastore dans votre organisation.

Tarifs

Cloud KMS facture le coût de la clé ainsi que toutes les opérations cryptographiques effectuées avec cette clé. Voir Consultez les tarifs de Cloud KMS pour en savoir plus.

Les coûts d'exploitation vous sont facturés lorsque Firestore en mode Datastore demande Cloud KMS pour effectuer une opération de chiffrement ou de déchiffrement. Le chiffrement/déchiffrement n'est pas synchronisé avec votre requête. Tous les cinq minutes en interrogeant Cloud KMS. Les coûts sont généralement faibles, compte tenu nombre attendu d'opérations de chiffrement générées par Firestore en mode Datastore. Frais pour Cloud Audit Logs représentent des dépenses supplémentaires, mais devraient également généralement faible, compte tenu du nombre attendu d'opérations de chiffrement.

L'utilisation d'une base de données protégée par des clés CMEK n'entraîne aucuns frais supplémentaires pour Firestore en mode Datastore. et les tarifs de Firestore en mode Datastore continuent de s'appliquer.

Si vous révoquez la clé d'une base de données, les frais de stockage sont facturés en fonction du la taille du dernier jour de disponibilité de la clé. Vous continuerez à recevoir les coûts de stockage pour cette taille de base de données, jusqu'à ce que la base de données soit supprimée ou que la clé redevient disponible.

Éléments protégés par CMEK

Lorsque vous créez une base de données Firestore protégée par une clé CMEK, votre clé Cloud KMS est utilisée pour protéger les données au repos. y compris celles stockées sur le disque ou la mémoire flash. Certaines exceptions s'appliquent. Les types de données suivants sont chiffrés avec Google par défaut et non par la clé CMEK:

  • Les données en transit ou en mémoire
  • Métadonnées de base de données

Traitement de l'état d'indisponibilité d'une clé

Les opérations de chiffrement et de déchiffrement ne sont pas émises pour chaque requête de données. À la place, le système Firestore interroge Cloud Key Management Service toutes les cinq minutes pour vérifier si est toujours disponible, puis effectue des opérations de chiffrement et de déchiffrement si le est disponible. Si le système détecte que la clé n'est pas disponible, dans les 10 minutes, tout appel ultérieur à la base de données Firestore, y compris les lectures, les écritures et les requêtes, renvoie une erreur FAILED_PRECONDITION avec le message The customer-managed encryption key required by the requested resource is not accessible. Si la base de données a règles de valeur TTL (Time To Live) et, si des délais d'expiration être dépassé lorsque la clé n'est pas disponible, suppression des données par valeur TTL est retardé jusqu'à ce que la clé soit rétablie. Si la base de données a des caractéristiques opérations en cours, ils seront affectés comme suit:

Les clés sont considérées comme non disponibles dans toutes les situations qui interdisent intentionnellement Firestore d'accéder à la clé. Par exemple :

Si la clé est rétablie, l'opération d'interrogation détecte que la clé est à nouveau disponibles. La réactivation de l'accès est effectuée généralement en quelques minutes, mais peut prendre quelques heures dans de rares cas. Notez que certaines opérations exécutées sur Cloud KMS telles que la désactivation ou la destruction d'une clé, 3 heures pour la propagation. Firestore n'a pas détecter les modifications avant qu'elles ne soient prises en compte dans Cloud KMS.

Le rétablissement d'une clé implique les opérations suivantes, selon la situation:

  • Réactivez une version de clé désactivée.
  • Restauration d'une version de clé détruite Avant d'être détruite définitivement, une version de clé est programmée pour de destruction. Vous ne pouvez restaurer une clé que pendant la période où une version de clé dont la destruction est programmée. Vous ne pouvez pas restaurer une clé qui a déjà été définitivement détruits.
  • Réattribuer le Autorisation d'accès à la clé par l'agent de service Firestore.

Remarques importantes concernant les clés externes

Lorsque vous utilisez une clé Cloud EKM, Google n'a aucun contrôle sur la disponibilité de votre clé gérée en externe dans le système partenaire de gestion des clés externes.

Si une clé gérée en externe n'est pas disponible, Firestore en mode Datastore continue de prennent en charge des opérations de base de données complètes à l'aide d'une version de clé mise en cache, pour une durée maximale de une heure.

Après une heure, si Firestore en mode Datastore ne parvient toujours pas à se connecter à Cloud KMS, Firestore en mode Datastore commence à mettre la base de données hors connexion de protection. Les appels à la base de données échoueront avec une erreur FAILED_PRECONDITION contenant des informations supplémentaires.

Pour en savoir plus, consultez la documentation Cloud External Key Manager. lors de l'utilisation de clés externes.

Limites

  • La modification de la clé d'une base de données protégée par une clé CMEK n'est pas acceptée. La rotation des clés l'activation et la désactivation sont prises en charge.
  • Les programmations de sauvegarde et les opérations de restauration ne sont pas compatibles avec les clés CMEK protégées les bases de données. Vous pouvez utiliser la récupération à un moment précis (PITR). pour la reprise après sinistre.
  • Compatibilité avec les bases de données protégées par des clés CMEK Key Visualizer uniquement pour les entités et et non pour les données d'index.
  • Vous ne pouvez pas activer les CMEK sur des bases de données existantes. Vous ne pouvez activer les CMEK de nouvelles bases de données, et vous devez l'activer lorsque vous créez la base de données. À migrer les données d'une base de données non-CMEK existante vers une base de données protégée par des clés CMEK ; exporter vos données et les importer dans une nouvelle base de données protégée par une clé CMEK.
  • Le suivi des clés n'est pas disponible pour les bases de données protégées par des clés CMEK.
  • Pendant la phase preview, Firestore n'acceptera qu'un nombre limité de bases de données protégées par des clés CMEK.

Étape suivante