Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Fundamentals

Gestión de claves de encriptación

En esta guía, puede aprender a administrar sus claves de cifrado con un sistema de administración de claves (KMS) en tu aplicación con Queryable Encryption habilitado.

MongoDB utiliza los siguientes componentes para realizar Queryable Encryption:

  • Llaves de cifrado de datos (DEK)

  • Llaves maestras de cliente (CMK)

  • Colecciones de Bóvedas de Llaves

  • Sistemade gestión de claves (KMS)

Para obtener más información sobre claves y bóvedas de claves, consulte Claves y almacenes de claves.

Se pueden rotar llaves de cifrado utilizando el KeyVault.rewrapManyDataKey() método. El método rewrapManyDataKey descifra automáticamente varias claves de datos y las vuelve a cifrar utilizando una llave maestra de cliente especificada. Luego actualiza las claves rotadas en la Colección de Bóvedas de Llaves. Este método te permite rotar las claves de cifrado en función de dos argumentos opcionales:

  • Un documento de filtro de consulta que se utiliza para especificar las claves que se rotarán. Si ninguna clave de datos coincide con el filtro especificado, no se rota ninguna clave. Omita el filtro para rotar todas las claves de su colección de almacén de claves.

  • Un objeto que representa una nueva CMK. Omítalo para rotar las claves de datos usando sus CMK actuales.

El método rewrapManyDataKey tiene la siguiente sintaxis:

let keyVault = db.getMongo().getKeyVault()
keyVault.rewrapManyDataKey(
{
"<Your custom filter>"
},
{
provider: "<KMS provider>",
masterKey: {
"<dataKeyOpts Key>" : "<dataKeyOpts Value>"
}
}
)

La Queryable Encryption admite los siguientes proveedores de sistemas de gestión de claves:

  • Amazon Web Services KMS

  • Azure Key Vault

  • Google Cloud KMS

  • Cualquier sistema de gestión de claves compatible con KMIP.

  • Proveedor de clave local (solo para pruebas)

Para aprender más sobre estos proveedores, incluidos diagramas que muestran cómo tu aplicación los utiliza para realizar el Queryable Encryption, consulta Proveedores KMS.

El uso de un sistema de administración de claves remoto para administrar su clave maestra de cliente tiene las siguientes ventajas sobre el uso de su sistema de archivos local para alojar la CMK:

  • Almacenamiento seguro de la clave con auditoría de acceso

  • Reducción del riesgo de problemas de permisos de acceso

  • Disponibilidad y distribución de la clave a clientes remotos

  • Copia de seguridad y recuperación automatizadas de claves

  • Gestión centralizada del ciclo de vida de las claves de cifrado

Además, para los siguientes proveedores de KMS, tu KMS cifra y descifra de forma remota tu clave de cifrado de datos, lo que garantiza que tu clave maestra de cliente nunca se exponga a tu aplicación habilitada para Queryable Encryption:

  • Amazon Web Services KMS

  • Azure Key Vault

  • Google Cloud KMS

Para guías que detallen cómo configurar una aplicación habilitada para Encriptación Consultable con cada uno de los proveedores de KMS admitidos, consulta las siguientes páginas:

Volver

Proveedores de KMS

En esta página