Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /
Fundamentals

Gestión de claves de encriptación

En esta guía puedes aprender cómo gestionar tus claves de cifrado con un Sistema de Gestió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

  • Sistema de gestión de claves (KMS)

Para obtener más información sobre las claves y los almacenes 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 query utilizado para especificar qué claves rotar. Si ninguna clave de datos coincide con el filtro dado, no se rota ninguna clave. Omite el filtro para rotar todas las claves en tu Colección de Bóvedas de Llaves.

  • Un objeto que representa una nueva llave maestra de cliente. Omitir este objeto para rotar las claves de datos usando sus CMKs 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.

Usar un sistema remoto de gestión de claves para administrar tu Clave maestra de cliente (CMK) tiene las siguientes ventajas sobre el uso de tu sistema de archivos local para host 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 para 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