Actualización de los certificados TLS de Amazon DocumentDB
Temas
El certificado de la autoridad de certificación (CA) para los clústeres de Amazon DocumentDB se actualizará a partir de agosto de 2024. Si utiliza clústeres de Amazon DocumentDB con Seguridad de la capa de transporte (TLS) habilitada (la configuración predeterminada) y no ha rotado los certificados de servidor y aplicación cliente, se requieren los pasos siguientes para mitigar los problemas de conectividad entre la aplicación y los clústeres de Amazon DocumentDB.
Los certificados de CA y del servidor se actualizaron de conformidad con las prácticas recomendadas de mantenimiento y seguridad estándar para Amazon DocumentDB. Las aplicaciones cliente deben añadir los nuevos certificados de CA a sus almacenes de confianza y las instancias de Amazon DocumentDB existentes deben actualizarse para utilizar los nuevos certificados de CA antes de esta fecha de vencimiento.
Actualización de la aplicación y del clúster de Amazon DocumentDB
Siga los pasos indicados en esta sección para actualizar el grupo de certificados de CA de la aplicación (Paso 1) y los certificados de servidor del clúster (Paso 2). Antes de aplicar los cambios a los entornos de producción, recomendamos encarecidamente probar estos pasos en un entorno de desarrollo o ensayo.
nota
Debe completar los pasos 1 y 2 en cada Región de AWS en la que tenga clústeres de Amazon DocumentDB.
Paso 1: Descargar el nuevo certificado de CA y actualizar la aplicación
Descargue el nuevo certificado de CA y actualice su aplicación de tal forma que use este nuevo certificado de CA para crear las conexiones TLS a Amazon DocumentDB. Descargue el nuevo paquete de certificados de CA desde https://truststore.pki.rds.amazonaws.com/global/global-bundle.pemglobal-bundle.pem
.
nota
Si accede al almacén de claves que incluye tanto el certificado de CA antiguo (rds-ca-2019-root.pem
) como los nuevos (rds-ca-rsa2048-g1
, rds-ca-rsa4096-g1
, rds-ca-ecc384-g1
) compruebe que el almacén de claves tenga seleccionado global-bundle
.
wget https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem
A continuación, actualice las aplicaciones de tal forma que utilicen el nuevo paquete de certificados. El nuevo paquete de CA contiene tanto el certificado de CA anterior (rds-ca-2019) como los certificados de CA nuevos (rds-ca-rsa2048-g1, rds-ca-rsa4096-g1, rds-ca-ecc384-g1). Al tener ambos certificados de CA en el nuevo paquete de CA puede actualizar la aplicación y el clúster en dos pasos.
Para las aplicaciones de Java, se debe crear un nuevo almacén de confianza con el nuevo certificado de CA. Para obtener instrucciones, consulte la pestaña de Java del tema Conexión con TLS habilitado.
Para comprobar que la aplicación utiliza el último grupo de certificados de CA, consulte ¿Cómo puedo estar seguro de que estoy usando el paquete de CA más reciente?. Si ya está utilizando el último grupo de certificados de CA en la aplicación, puede saltar al paso 2.
Para obtener ejemplos de uso de un grupo de CA con su aplicación, consulte Cifrado de datos en tránsito y Conexión con TLS habilitado.
nota
Actualmente, MongoDB Go Driver 1.2.1 sólo acepta un certificado de servidor de CA en sslcertificateauthorityfile
. Consulte Conexión con TLS habilitado para conectarse a Amazon DocumentDB mediante Go cuando TLS esté habilitado.
Paso 2: Actualizar el certificado de servidor
Después de que la aplicación se haya actualizado con el fin de utilizar el nuevo paquete de CA, el siguiente paso consiste en actualizar el certificado de servidor al modificar cada instancia en un clúster de Amazon DocumentDB. Para modificar instancias para utilizar el nuevo certificado de servidor, consulte las instrucciones siguientes.
Amazon DocumentDB proporciona las siguientes CA para firmar el certificado del servidor de base de datos de una instancia de base de datos:
-
rds-ca-ecc384-g1: utiliza una entidad de certificación con el algoritmo de clave privada RSA 384 y el algoritmo de firma SHA384. Esta CA admite la rotación automática de certificados de servidor. Solo es compatible con Amazon DocumentDB 4.0 y 5.0.
-
rds-ca-rsa2048-g1: utiliza una entidad de certificación con el algoritmo de clave privada RSA 2048 y el algoritmo de firma SHA256 en la mayoría de las regiones de AWS. Esta CA admite la rotación automática de certificados de servidor.
-
rds-ca-rsa4096-g1: utiliza una entidad de certificación con el algoritmo de clave privada RSA 4096 y el algoritmo de firma SHA384. Esta CA admite la rotación automática de certificados de servidor.
nota
Si utiliza la AWS CLI, puede ver la validez de las entidades de certificación enumeradas anteriormente mediante describe-certificates.
Estos certificados de CA se incluyen en el paquete de certificados regionales y globales. Al utilizar la CA rds-ca-rsa2048-g1, rds-ca-rsa4096-g1 o rds-ca-ecc384-g1 con una base de datos, Amazon DocumentDB administra el certificado del servidor de base de datos en la base de datos. Amazon DocumentDB rota el certificado del servidor de base de datos de forma automática antes de que caduque.
nota
Amazon DocumentDB no requiere un reinicio para la rotación de certificados si el clúster se ejecuta en las siguientes versiones de parches del motor:
Amazon DocumentDB 3.6: 1.0.208662 o posterior
Amazon DocumentDB 4.0: 2.0.10179 o posterior
Amazon DocumentDB 5.0: 3.0.4780 o posterior
Para determinar la versión de parche actual del motor de Amazon DocumentDB, ejecute el siguiente comando: db.runCommand({getEngineVersion: 1})
.
Antes de actualizar el certificado de servidor, asegúrese de haber completado Paso 1.
Resolución de problemas
Si tiene problemas para conectarse al clúster como parte de la rotación de certificados, le sugerimos lo siguiente:
-
Compruebe que sus clientes están utilizando el paquete de certificados más reciente. Consulte ¿Cómo puedo estar seguro de que estoy usando el paquete de CA más reciente?.
-
Compruebe que las instancias están utilizando el certificado más reciente. Consulte ¿Cómo puedo saber cuáles de mis instancias de Amazon DocumentDB usan el certificado de servidor antiguo/nuevo?.
-
Compruebe que la última entidad emisora de certificados está siendo utilizada por la aplicación. Algunos controladores, como Java y Go, requieren código adicional para importar varios certificados de un paquete de certificados al almacén de confianza. Para obtener más información sobre cómo conectarse a Amazon DocumentDB con TLS, consulte Conexión mediante programación a Amazon DocumentDB.
-
Póngase en contacto con el soporte. Si tiene preguntas o problemas, póngase en contacto con AWS Support
.
Preguntas frecuentes
A continuación se presentan respuestas a algunas preguntas comunes acerca de los certificados TLS.
¿Qué hago si tengo preguntas o problemas?
Si tiene preguntas o problemas, póngase en contacto con AWS Support
¿Cómo sé si estoy usando TLS para conectarme a mi clúster de Amazon DocumentDB?
Para determinar si el clúster usa TLS, examine el parámetro tls
del grupo de parámetros del clúster. Si el parámetro tls
se encuentra establecido en enabled
, está utilizando el certificado TLS para conectarse al clúster. Para obtener más información, consulte Administración de los grupos de parámetros de clúster de Amazon DocumentDB.
¿Por qué hay que actualizar los certificados de CA y de servidor?
Los certificados de CA y de servidor de Amazon DocumentDB se están actualizando de conformidad con las prácticas recomendadas de mantenimiento y seguridad estándar para Amazon DocumentDB. Los certificados de CA y de servidor actuales caducan a partir de agosto de 2024.
¿Qué sucede si no realizo ninguna acción antes de la fecha de caducidad?
Si utiliza TLS para conectarse al clúster de Amazon DocumentDB y no realiza el cambio de certificados antes de agosto de 2024, las aplicaciones que se conectan a través de TLS ya no podrán comunicarse más con el clúster de Amazon DocumentDB.
Amazon DocumentDB no rotará los certificados de la base de datos automáticamente antes de la fecha de caducidad. Debe actualizar las aplicaciones y los clústeres para utilizar los nuevos certificados de CA antes o después de la fecha de caducidad.
¿Cómo puedo saber cuáles de mis instancias de Amazon DocumentDB usan el certificado de servidor antiguo/nuevo?
Para identificar las instancias de Amazon DocumentDB que siguen utilizando el certificado de servidor antiguo, puede utilizar la AWS Management Console o la AWS CLI de Amazon DocumentDB.
Identificación de las instancias de los clústeres que utilizan el certificado anterior
Inicie sesión en la AWS Management Console y abra la consola de Amazon DocumentDB en https://console.aws.amazon.com/docdb
. -
En la lista de regiones de la parte superior derecha de la pantalla, elija la Región de AWS en la que residen sus instancias.
-
En el panel de navegación en el lado izquierdo de la consola, en DAX, elija Clústeres.
-
En la columna Autoridad de certificación (cerca del extremo derecho de la tabla), se muestran las instancias que todavía contienen el certificado de servidor antiguo (
rds-ca-2019
) y el certificado de servidor nuevo (rds-ca-rsa2048-g1
).
Para identificar las instancias de los clústeres que utilizan el certificado de servidor anterior, utilice el comando describe-db-clusters
con lo siguiente.
aws docdb describe-db-instances \ --filters Name=engine,Values=docdb \ --query 'DBInstances[*].{CertificateVersion:CACertificateIdentifier,InstanceID:DBInstanceIdentifier}'
¿Cómo puedo modificar instancias individuales de mi clúster de Amazon DocumentDB para actualizar el certificado de servidor?
Recomendamos actualizar al mismo tiempo los certificados de servidor de todas las instancias de un clúster determinado. Para modificar las instancias del clúster, puede utilizar la consola o la AWS CLI.
nota
Antes de actualizar el certificado de servidor, asegúrese de haber completado el paso 1.
Inicie sesión en la AWS Management Console y abra la consola de Amazon DocumentDB en https://console.aws.amazon.com/docdb
. -
En la lista de regiones en la esquina superior derecha de la pantalla, seleccione la Región de AWS en la que residen sus clústeres.
-
En el panel de navegación en el lado izquierdo de la consola, en DAX, elija Clústeres.
-
En la columna Autoridad de certificación (cerca del extremo derecho de la tabla), se muestran las instancias que todavía contienen el certificado de servidor antiguo (
rds-ca-2019
). -
En la tabla Clústeres, en Identificador del clúster, seleccione una instancia para modificarla.
-
Elija Actions (Acciones) y después Modify (Modificar).
-
En Certificate authority (Entidad de certificación), seleccione el nuevo certificado de servidor (
rds-ca-rsa2048-g1
) para esta instancia. -
Puede ver un resumen de los cambios en la página siguiente. Tenga en cuenta que se muestra una alerta adicional para recordarle que debe asegurarse de que su aplicación utilice el paquete más reciente de certificados de CA antes de modificar la instancia, con el fin de evitar que se interrumpa la conectividad.
-
Puede optar por aplicar la modificación durante el próximo periodo de mantenimiento o bien aplicarla de inmediato.
-
Seleccione Modify instance (Modificar instancia) para completar la actualización.
Complete los pasos siguientes para identificar y rotar el certificado de servidor antiguo para las instancias de Amazon DocumentDB existentes mediante la AWS CLI.
-
Para modificar las instancias de inmediato, ejecute el siguiente comando para cada instancia del clúster.
aws docdb modify-db-instance --db-instance-identifier
<yourInstanceIdentifier>
--ca-certificate-identifier rds-ca-rsa2048-g1 --apply-immediately -
Para modificar las instancias de los clústeres de tal forma que usen el nuevo certificado de CA durante el próximo periodo de mantenimiento del clúster, ejecute el siguiente comando para cada instancia del clúster.
aws docdb modify-db-instance --db-instance-identifier
<yourInstanceIdentifier>
--ca-certificate-identifier rds-ca-rsa2048-g1 --no-apply-immediately
¿Qué sucede si añado una nueva instancia a un clúster existente?
Todas las instancias nuevas que se creen utilizan el certificado de servidor antiguo y requieren conexiones TLS que usen el certificado de CA antiguo. Cualquier instancia nueva de Amazon DocumentDB creada después del 25 de enero de 2024 utilizará de forma predeterminada el nuevo certificado rds-ca-rsa2048-g1.
¿Qué sucede si se sustituye una instancia o se produce una conmutación por error en el clúster?
Si se sustituye una instancia en el clúster, la nueva instancia que se crea continúa usando el mismo certificado de servidor que se estaba utilizando anteriormente. Se recomienda actualizar los certificados de servidor para todas las instancias al mismo tiempo. Si se produce una conmutación por error en el clúster, se usará el certificado de servidor del nuevo nodo principal.
Si no uso TLS para conectarme al clúster, ¿tengo que actualizar todas las instancias?
Recomendamos encarecidamente habilitar TLS. En caso de que no habilite TLS, le recomendamos que rote los certificados de las instancias de Amazon DocumentDB si planea usar TLS para conectarse a los clústeres en el futuro. Si no planea usar nunca TLS para conectarse a los clústeres de Amazon DocumentDB, no es necesaria ninguna acción.
Si no estoy usando TLS para conectarme a mi clúster pero tengo previsto hacerlo en el futuro, ¿qué tengo que hacer?
Si creó un clúster antes de enero de 2024, siga el paso 1 y el paso 2 de la sección anterior para asegurarse de que la aplicación utiliza la agrupación de CA actualizada y de que cada instancia de Amazon DocumentDB utiliza el certificado de servidor más reciente. Si crea un clúster después del 25 de enero de 2024, el clúster ya tendrá el certificado de servidor más reciente (rds-ca-rsa2048-g1). Para comprobar que la aplicación utiliza el grupo de CA más reciente, consulte Si no uso TLS para conectarme al clúster, ¿tengo que actualizar todas las instancias?
¿Puede prorrogarse el plazo más allá de agosto de 2024?
Si sus aplicaciones se conectan a través de TLS, la fecha límite no se podrá prorrogar.
¿Cómo puedo estar seguro de que estoy usando el paquete de CA más reciente?
Para comprobar que tiene el paquete más reciente, use el siguiente comando. Para ejecutar este comando, debe tener Java instalado y las herramientas de Java deben estar en la variable PATH de su intérprete de comandos. Para obtener más información, consulte Uso de Java
keytool -printcert -v -file global-bundle.pem
keytool -printcert -v -file global-bundle.p7b
¿Por qué veo “RDS” en el nombre del paquete de CA?
Para determinadas funciones de administración, como la administración de certificados, Amazon DocumentDB utiliza tecnología operativa que se comparte con Amazon Relational Database Service (Amazon RDS).
¿Cuándo caduca el nuevo certificado?
El nuevo certificado del servidor caducará (por lo general) de la siguiente manera:
-
rds-ca-rsa2048-g1: caduca en 2061
-
rds-ca-rsa4096-g1: caduca en 2121
-
rds-ca-ecc384-g1: caduca en 2121
¿Qué tipo de errores veré si no tomo medidas antes de que caduque el certificado?
Los mensajes de error variarán en función del controlador. En general, verá errores de validación de certificados que contienen la cadena “el certificado ha caducado”.
Si he aplicado el nuevo certificado de servidor, ¿puedo revertirlo al certificado de servidor antiguo?
Si necesita revertir una instancia al certificado de servidor antiguo, recomendamos que haga lo mismo para todas las instancias del clúster. Puede revertir el certificado de servidor para cada instancia de un clúster mediante la AWS Management Console o la AWS CLI.
Inicie sesión en la AWS Management Console y abra la consola de Amazon DocumentDB en https://console.aws.amazon.com/docdb
. -
En la lista de regiones en la esquina superior derecha de la pantalla, seleccione la Región de AWS en la que residen sus clústeres.
-
En el panel de navegación en el lado izquierdo de la consola, en DAX, elija Clústeres.
-
En la tabla Clústeres, en Identificador del clúster, seleccione una instancia para modificarla. Elija Actions (Acciones) y después Modify (Modificar).
-
En Certificate authority (Entidad de certificación), puede seleccionar el certificado de servidor antiguo (
rds-ca-2019
). -
Elija Continue (Continuar) para ver un resumen de las modificaciones.
-
En la página que aparece, puede elegir programar las modificaciones para que se apliquen en el próximo periodo de mantenimiento o aplicar las modificaciones inmediatamente. Realice la selección y elija Modify instance (Modificar instancia).
nota
Si opta por aplicar las modificaciones inmediatamente, también se aplican los cambios de la cola de modificaciones pendientes. Si alguna de las modificaciones pendientes requiere un tiempo de inactividad, elegir esta opción puede provocar un tiempo de inactividad inesperado.
aws docdb modify-db-instance --db-instance-identifier
<db_instance_name>
ca-certificate-identifier rds-ca-2019<--apply-immediately | --no-apply-immediately>
Si elige --no-apply-immediately
, los cambios se aplicarán durante el próximo periodo de mantenimiento del clúster.
Si restauro a partir de una instantánea o de una restauración puntual, ¿tendrá el nuevo certificado de servidor?
Si restaura una instantánea o realiza una restauración puntual después de agosto de 2024, el nuevo clúster que se crea utilizará el nuevo certificado de entidad de certificación.
¿Qué sucede si tengo problemas para conectarme directamente a mi clúster de Amazon DocumentDB desde cualquier versión de Mac OS?
Mac OS ha actualizado los requisitos para certificados de confianza. Ahora los certificados de confianza deben tener una validez de 397 días o menos (consulte https://support.apple.com/en-us/HT211025
nota
Esta restricción se observa en las versiones más recientes de Mac OS.
Los certificados de instancia de Amazon DocumentDB son válidos durante más de cuatro años, más que el máximo de Mac OS. Para conectarse directamente a un clúster de Amazon DocumentDB desde un equipo que ejecuta Mac OS, debe permitir certificados no válidos al crear la conexión TLS. En este caso, los certificados no válidos significan que el período de validez es superior a 397 días. Debe comprender los riesgos antes de permitir certificados no válidos al conectarse al clúster de Amazon DocumentDB.
Para conectarse a un clúster de Amazon DocumentDB desde Mac OS utilizando la AWS CLI, utilice el parámetro tlsAllowInvalidCertificates
.
mongo --tls --host <hostname> --username <username> --password <password> --port 27017 --tlsAllowInvalidCertificates