Claves de encriptación administradas por el cliente (CMEK)

De forma predeterminada, todos los datos en reposo en Firestore en modo Datastore se encriptan Encriptación predeterminada de Google. Firestore en modo Datastore controla y administra esta encriptación por ti sin que debas realizar ninguna acción adicional.

Si tiene requisitos normativos o de cumplimiento específicos relacionados con las claves que protegen tus datos, puedes usar claves de encriptación administradas por el cliente (CMEK) Firestore en modo Datastore En vez de que Google administre las claves de encriptación que protegen tus datos, la base de datos de Firestore en modo Datastore está protegida con una clave que tú controlar y administrar en Cloud Key Management Service (Cloud KMS).

En esta página, se describen CMEK para Firestore en modo Datastore. Obtén más información sobre CMEK. información sobre cuándo y por qué habilitarlas, consulta la Documentación de Cloud KMS. Para obtener instrucciones sobre cómo realizar Para ver las tareas relacionadas con CMEK con Firestore en modo Datastore, consulta Usa CMEK.

Funciones

  • Control de datos: CMEK te permite administrar el acceso a la clave de KMS. Puedes rotar, inhabilitar y destruir la clave utilizada para encriptar los datos en reposo en tu base de datos de Firestore en modo Datastore.
  • Rendimiento: las CMEK no afectan el ANS de Firestore.
  • Auditabilidad: Si habilitar registros de auditoría para Cloud KMS, Todas las operaciones en la clave se registran y se pueden ver en Cloud Logging.
  • Restricciones de las políticas de la organización: Restricciones de la política de la organización de CMEK para especificar requisitos de cumplimiento de encriptación para bases de datos de Firestore en modo Datastore en tu organización.

Precios

Cloud KMS cobra por el costo de la clave y por todas las operaciones criptográficas realizadas con ella. Consulta Consulta los precios de Cloud KMS para obtener más información.

Se te facturarán los costos de operación cuando Firestore en modo Datastore solicite clave de Cloud KMS para realizar una operación de encriptación o desencriptación. La encriptación o la desencriptación no están sincronizadas con tu solicitud. Se hace cada 5 minutos con un sondeo de Cloud KMS. Por lo general, los costos son bajos, si se tienen en cuenta los la cantidad esperada de operaciones criptográficas generadas por Firestore en modo Datastore. Costos de Registros de auditoría de Cloud son un gasto adicional, pero también se espera suele ser baja, dada la cantidad esperada de operaciones criptográficas.

No hay costos adicionales de Firestore en modo Datastore por usar una base de datos protegida con CMEK y se seguirán aplicando los precios de Firestore en modo Datastore.

Si revocas tu clave de una base de datos, el costo de almacenamiento se cobrará según el el tamaño del último día en que la clave estuvo disponible. Seguirás incurriendo de almacenamiento en ese tamaño de base de datos hasta que esta se borra o vuelve a estar disponible.

Qué se protege con CMEK

Cuando creas una base de datos de Firestore protegida con CMEK, se usa tu clave de Cloud KMS para proteger los datos en reposo. Esto incluye los datos almacenados en el disco o la memoria flash. Se aplican algunas excepciones. Los siguientes tipos de datos están encriptados con Google encriptación predeterminada y no por la clave CMEK:

  • Datos en tránsito o en memoria
  • Metadatos de la base de datos

Cómo se controla un estado de clave no disponible

Las operaciones de encriptación y desencriptación no se emiten en todas las solicitudes de datos. En cambio, el sistema de Firestore sondea Cloud Key Management Service cada 5 minutos para verificar si sigue disponible y realiza operaciones de encriptación y desencriptación si la está disponible. Si el sistema detecta que la clave no está disponible, se ejecutará en un minutos, las llamadas posteriores a la base de datos de Firestore, incluidas las lecturas, las escrituras y las consultas, mostrará un error FAILED_PRECONDITION con el mensaje The customer-managed encryption key required by the requested resource is not accessible. Si la base de datos tiene políticas de tiempo de actividad (TTL) y, si hay fechas de vencimiento, se supere cuando la clave no esté disponible, eliminación de datos por TTL se retrasará hasta que se restablezca la clave. Si la base de datos tiene datos de las operaciones en curso, se verán afectadas de la siguiente manera:

Las claves se consideran no disponibles en cualquier situación que rechace intencionalmente Firestore acceda a la clave. Incluye lo siguiente:

Si se restablece la clave, la operación de sondeo detecta que está nuevamente disponible. El acceso se vuelve a habilitar, por lo general, en unos minutos, pero puede demorar hasta unas horas, en casos excepcionales. Ten en cuenta que algunas operaciones en Cloud KMS de servicio, como inhabilitar o destruir una clave, puede tardar hasta 3 hours para propagarse. Firestore no detectar cualquier cambio hasta que entre en vigencia en Cloud KMS.

El restablecimiento de una clave implica lo siguiente, según la situación:

  • Vuelve a habilitar una versión de clave inhabilitada.
  • Restablecer una versión de clave destruida. Antes de que se destruya de forma permanente, se programa una versión de clave para destrucción. Solo puedes restablecer una clave durante el período en el que se encuentra está programada para su destrucción. No puedes restablecer una clave que ya se se destruye de forma permanente.
  • Volver a otorgar los permisos Permiso de agente de servicio de Firestore para acceder a la clave.

Consideraciones de claves externas

Cuando usas una clave de Cloud EKM, Google no tiene control sobre la disponibilidad de tu clave administrada de forma externa en el sistema de socios de administración de claves externas.

Si una clave administrada de forma externa no está disponible, Firestore en modo Datastore continúa admitir operaciones completas de bases de datos usando una versión almacenada en caché de la clave, por un máximo de una hora.

Después de una hora, si Firestore en modo Datastore aún no puede conectarse con Cloud KMS, Firestore en modo Datastore comienza a desconectar la base de datos como medida de protección. Las llamadas a la base de datos fallarán con FAILED_PRECONDITION. con detalles adicionales.

Consulta la documentación de Cloud External Key Manager para obtener más información. importantes cuando se usan claves externas.

Limitaciones

  • No se admite el cambio de una clave de una base de datos protegida con CMEK. rotación de claves, la habilitación y la inhabilitación.
  • Las programaciones de copias de seguridad y las operaciones de restablecimiento no son compatibles con las redes protegidas por CMEK bases de datos. Puedes usar la recuperación de un momento determinado (PITR). para la recuperación ante desastres.
  • Compatibilidad con bases de datos protegidas por CMEK Key Visualizer solo para entidades y de documentos, no de índices.
  • No puedes habilitar CMEK en bases de datos existentes. Puedes habilitar CMEK solo en bases de datos nuevas, y debes habilitarlas cuando las crees. Para migrar datos de una base de datos existente que no es CMEK a una base de datos protegida con CMEK importar tus datos y exportarlos a una nueva base de datos protegida con CMEK
  • El seguimiento de claves no es compatible con las bases de datos protegidas por CMEK.
  • Durante la versión preliminar, Firestore admitirá una cantidad limitada de bases de datos protegidas por CMEK.

¿Qué sigue?