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
/ /

Gestiona las Claves de cliente con AWS KMS

Puedes configurar tu proyecto de Atlas para utilizar una AWS Rol de IAM para acceder a sus claves de AWS KMS para el cifrado en reposo. Puede usar un rol existente o crear uno nuevo al habilitar el cifrado en reposo en su proyecto.

Esta página cubre la configuración de la gestión de claves de cliente en tu proyecto Atlas para un acceso basado en roles. También puedes configurar AWS PrivateLink en tu AWS KMS para garantizar que todo el tráfico entre Atlas y tu AWS KMS se lleve a cabo a través de las interfaces de red privadas de AWS.

Si aún no ha habilitado el cifrado en reposo para su proyecto Atlas nuevo o existente, siga las Habilitar el acceso basado en roles para su llave de cifrado para un Proyecto procedimiento para habilitar el cifrado en reposo para su Proyecto Atlas. Si tiene un proyecto de Atlas para el que ya ha activado el cifrado en reposo y ha configurado el acceso basado en credenciales a sus llaves de cifrado, siga el procedimiento Cambiar a acceso basado en roles para su llave de cifrado para un Proyecto para cambiar al acceso basado en roles para sus llaves de cifrado.

Debe configurar la administración de claves de cliente para el proyecto Atlas antes de habilitarla en los clústeres de ese proyecto.

Tip

Para configurar la gestión de claves de clientes, debe tener Project Owner acceso al proyecto.

Los usuarios con acceso Organization Owner deben añadirse al proyecto como Project Owner.

La gestión de claves de clientes en Atlas sigue un proceso denominado cifrado de sobre. Este proceso crea múltiples capas de cifrado al cifrar una clave con otra clave. Para habilitar la gestión de claves de los clientes, Atlas utiliza las siguientes claves de cifrado:

Customer-Managed Key (CMK)

Las llaves gestionadas por el cliente son llaves de cifrado que tú creas, posees y gestionas en AWS KMS. Creas la llave maestra de cliente en AWS KMS y lo conectas a Atlas a nivel de proyecto. Para aprender más acerca de las llaves maestras de clienteutilizadas en AWS KMS, consulta la Documentación de AWS KMS.

Atlas utiliza esta llave solo para cifrar las claves principales de MongoDB.

MongoDB Master Key

Cada nodo en tu clúster de Atlas crea una Clave Maestra de MongoDB. Las claves maestras de MongoDB son claves de cifrado que un MongoDB Server utiliza para cifrar las claves de cifrado por base de datos. Atlas guarda una copia cifrada de la clave localmente.

Esta clave está cifrada con la llave maestra de cliente y cifra las llaves de cifrado por base de datos.

Per-Database Encryption Key

Cada nodo en su clúster de Atlas también crea una clave de cifrado por base de datos en su clúster. Atlas utiliza estas claves para leer y guardar datos a través de WiredTiger, que también cifra y almacena estas claves.

Esta clave está encriptada con la clave maestra de MongoDB.

Considere la siguiente jerarquía de cifrado para un set de réplicas de tres nodos. Atlas utiliza la llave maestra de cliente de AWS KMS para cifrar una clave maestra única de MongoDB para cada nodo del clúster. Cada nodo también contiene tres bases de datos, cada una de las cuales se cifra con una clave de cifrado exclusiva por base de datos. Cuando el clúster se inicia, Atlas descifra la Clave Maestra de MongoDB mediante el uso de la llave maestra de cliente de AWS KMS y la proporciona al Servidor de MongoDB.

Nota

Si revoca el acceso de Atlas a la CMK, Atlas apaga los nodos de su clúster y no podrá acceder a sus datos hasta que restaure el acceso a la CMK.

Diagrama del flujo de trabajo de CMK con AWS KMS y Atlas
haga clic para ampliar

Nota

Esta característica no está disponible para ninguna de las siguientes implementaciones:

  • Clústeres gratuitos

  • Clústeres Flex

Para obtener más información, consulta Límites.

Cuando usas tu propio proveedor de nube KMS, Atlas rota automáticamente las claves maestras de MongoDB al menos cada 90 días. La rotación de tu clave comenzará durante un periodo de mantenimiento, si tienes una configurada. Aplazar el mantenimiento (ya sea manual o automáticamente) puede hacer que la clave se rote más allá del límite de 90días. Las claves se rotan de forma progresiva y el proceso no requiere que los datos se vuelvan a escribir.

Atlas no rota automáticamente la llave maestra de cliente de AWS utilizada para el cifrado en reposo proporcionado por AWS.

Como práctica recomendada, Atlas crea un alert para recordarle que debe rotar su AWS CMK cada 90 días de forma predeterminada al habilitar el cifrado en reposo en un proyecto de Atlas. Puede configurar la duración de esta alerta.

Puede rotar su AWS CMK usted mismo o configurar su instancia de AWS KMS para que la rote automáticamente. Si configura la rotación automática de AWS CMK, el período predeterminado para la rotación es de aproximadamente 365 días.

Si ya has configurado una rotación automática de llave maestra de cliente en AWS y no deseas recibir la alerta de Atlas para rotar tu llave maestra de cliente cada 90 días, puedes modificar el periodo de alerta por defecto para que sea superior a 365 días o desactivar la alerta.

Esta página explica cómo crear una nueva clave y actualizar el ID de llave maestra de cliente en Atlas para rotar la llave maestra de cliente de tu Proyecto de Atlas. Este método de rotación de claves permite un control más granular del periodo de rotación en comparación con la rotación automática de la llave maestra de cliente de AWS KMS.

Importante

Copias de seguridad en la nube con cifrado en reposo

Para los clústeres que utilizan cifrado en reposo y Respalda tu clúster, Atlas utiliza la llave maestra de cliente del Proyecto y las credenciales de usuario AWS IAM en el momento del snapshot para encriptar automáticamente los archivos de datos del snapshot. Esta es una capa adicional de cifrado sobre el cifrado existente aplicado a todos los volúmenes de almacenamiento y snapshots de Atlas.

Atlas no vuelve a cifrar las instantáneas con la nueva CMK tras la rotación.No elimine la CMK anterior hasta que haya comprobado si hay instantáneas que aún la utilicen en todos los clústeres del proyecto con copias de seguridad habilitadas.Atlas elimina las copias de seguridad según la programación de copias de seguridad, la retención y las instantáneas a petición. Una vez que Atlas elimine todas las instantáneas que dependen de una CMK determinada, podrá eliminarla de forma segura.

1
  1. Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Database & Network Access en la sección Security.

  4. En la barra lateral, haga clic en Advanced.

    La página Avanzada se muestra.

2
3
  1. Ingrese la siguiente información:

    Campo
    Acción

    AWS IAM role

    Seleccione un rol de AWS IAM existente que ya tenga acceso a sus claves KMS o autorice un nuevo rol y otórguele acceso a sus claves KMS con los siguientes permisos:

    Para obtener más información, consulta Acceso basado en roles a tu llave de cifrado para un Proyecto.

    Customer Master Key ID

    Introduce tu ID de clave maestra de cliente de AWS.

    Customer Master Key Region

    Selecciona la región AWS en la que creaste tu AWS llave maestra de cliente.

    Atlas solo muestra las regiones de AWS que son compatibles con AWS KMS.

  2. Haga clic en Save.

Atlas muestra un banner en la consola de Atlas durante el proceso de rotación de la llave maestra de cliente. No elimines ni desactives la llave maestra de cliente hasta que tus cambios se hayan implementado.

Durante una Interrupción del servicio regional, tu AWS KMS región podría volverse indisponible. Si has activado el cifrado en reposo utilizando la gestión de claves del cliente, puedes realizar operaciones de cifrado y descifrado mientras al menos un nodo siga disponible. Sin embargo, si todos los nodos se vuelven indisponibles, no puedes realizar operaciones criptográficas. Un nodo se vuelve indisponible si se reinicia durante la interrupción del servicio.

Para que los nodos no disponibles funcionen correctamente, puede reconfigurar su región actual de AWS KMS a una región disponible. Para cambiar su región de KMS, su clave de AWS KMS debe ser una clave multiregión. Para crear una clave multiregión, consulte la documentación de AWS.

Nota

No se puede convertir una clave de una sola región en una clave multiregión.

Para reconfigurar tu región AWS KMS, completa los siguientes pasos en Atlas:

1
  1. Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Database & Network Access en la sección Security.

  4. En la barra lateral, haga clic en Advanced.

    La página Avanzada se muestra.

2
3

Para asegurarse de que Atlas no vuelva a cifrar sus datos, verifique que el AWS IAM role y el Customer Master Key ID reflejen sus credenciales existentes.

4

Selecciona otra AWS región para la que hayas configurado tu clave multiregión.

5

Se puede usar una llave maestra de cliente (CMK) gestionada por el cliente de su AWS KMS a través de una red pública o AWS PrivateLink. Para obtener más información, consulta lo siguiente:

Por defecto, MongoDB y los procesos de búsqueda se ejecutan en los mismos nodos. Con esta arquitectura, el cifrado gestionado por el cliente se aplica a los datos de su base de datos, pero no se aplica a los índices de búsqueda.

Cuando activas nodos de búsqueda dedicados, los procesos de búsqueda se ejecutan en nodos separados. Esto permite activar el cifrado de datos del nodo de búsqueda, para que puedas cifrar tanto los datos de la base de datos como los índices de búsqueda con las mismas claves administradas por el cliente para una cobertura de cifrado integral.

Nota

Los nodos de la base de datos y los nodos de búsqueda utilizan diferentes métodos de cifrado con las mismas claves gestionadas por el cliente. Los nodos de la base de datos usan el motor de almacenamiento cifrado WiredTiger, mientras que los nodos de búsqueda usan cifrado a nivel de disco.

Volver

Cifrado en reposo