Uso de SSL/TLS para cifrar una conexión a una instancia o clúster de base de datos - Amazon Relational Database Service

Uso de SSL/TLS para cifrar una conexión a una instancia o clúster de base de datos

Puede utilizar la capa de sockets seguros (SSL) o la seguridad de la capa de transporte (TLS) desde su aplicación para cifrar una conexión a una base de datos que ejecute Db2, MariaDB, Microsoft SQL Server, MySQL, Oracle o PostgreSQL.

Las conexiones SSL y TLS proporcionan una capa de seguridad al cifrar los datos que circulan entre el cliente y la instancia o clúster de base de datos. Si lo desea, su conexión SSL/TLS puede realizar una verificación de identidad del servidor validando el certificado del servidor instalado en su base de datos. Para solicitar la verificación de la identidad del servidor, siga este proceso general:

  1. Elija la entidad de certificación (CA) que firma el certificado del servidor de base de datos, para su base de datos. Para obtener más información sobre las entidades de certificación, consulte Entidades de certificación.

  2. Descargue un paquete de certificados para usarlo cuando se conecte a la base de datos. Para descargar un paquete de certificados, consulte Paquetes de certificados para todas las Regiones de AWS y Paquetes de certificados para Regiones de AWS específicas.

    nota

    Todos los certificados están disponibles solo para descarga con conexiones SSL/TLS.

  3. Conéctese a la base de datos mediante el proceso del motor de base de datos para la implementación de las conexiones SSL/TLS. Cada motor base de datos tiene su propio proceso para implementar SSL/TLS. Para obtener información sobre cómo implementar SSL/TLS para su base de datos, siga el enlace que corresponda a su motor de base de datos:

Entidades de certificación

La entidad de certificación (CA) es el certificado que identifica la CA raíz en la parte superior de la cadena de certificados. La CA firma el certificado del servidor de base de datos, que está instalado en cada instancia de base de datos. El certificado del servidor de base de datos identifica la instancia de base de datos como un servidor de confianza.


                            Información general de la entidad de certificación

Amazon RDS proporciona las siguientes CA para firmar el certificado del servidor de base de datos de una base de datos.

Entidad de certificación (CA) Descripción

rds-ca-2019

Utiliza una entidad de certificación con el algoritmo de clave privada RSA 2048 y el algoritmo de firma SHA256. Esta CA vence en 2024 y no admite la rotación automática de certificados de servidor. Si utiliza esta CA y desea mantener el mismo estándar, le recomendamos que cambie a la CA rds-ca-rsa2048-g1.

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.

En las AWS GovCloud (US) Regions, este certificado utiliza una entidad de certificación con el algoritmo de clave privada RSA 2048 y el algoritmo de firma SHA384.

Esta CA sigue siendo válida durante más tiempo que la CA rds-ca-2019. 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.

rds-ca-ecc384-g1

Utiliza una entidad de certificación con el algoritmo de clave privada ECC 384 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 instancia de base de datos, RDS administra el certificado del servidor de base de datos en la base de datos. RDS rota el certificado del servidor de base de datos de forma automática antes de que caduque.

Configuración de la CA para su base de datos

Puede definir la CA para una base de datos con las tareas siguientes:

nota

La CA predeterminada está establecida en rds-ca-rsa2048-g1. Puede anular la CA predeterminada para su Cuenta de AWS mediante el comando modify-certificates.

Las CA disponibles dependen del motor de base de datos y de la versión del motor de base de datos. Al utilizar la AWS Management Console, puede elegir la CA mediante la configuración de la Entidad de certificación, tal como se muestra en la siguiente imagen.


                        Opción Entidad de certificación

La consola solo muestra las CA que están disponibles para le motor de base de datos y la versión del motor de base de datos. Si utiliza la AWS CLI, puede configurar la CA para una instancia de base de datos mediante los comandos create-db-instance o modify-db-instance. Puede configurar la CA para un clúster de base de datos multi-AZ mediante el comando create-db-cluster o modify-db-cluster.

Si utiliza la AWS CLI, puede ver las CA disponibles para su cuenta mediante el comando describe-certificates. Este comando también muestra la fecha de caducidad de cada CA en ValidTill en la salida. Puede buscar las CA que están disponibles para un motor de base de datos y una versión de motor de base de datos específicos mediante el comando describe-db-engine-versions.

El siguiente ejemplo muestra las CA disponibles para la versión predeterminada del motor de base de datos de RDS para PostgreSQL.

aws rds describe-db-engine-versions --default-only --engine postgres

Su resultado es similar al siguiente. Las CA disponibles se enumeran en SupportedCACertificateIdentifiers. El resultado también muestra si la versión del motor de base de datos admite la rotación del certificado sin reiniciarlo en SupportsCertificateRotationWithoutRestart.

{ "DBEngineVersions": [ { "Engine": "postgres", "MajorEngineVersion": "13", "EngineVersion": "13.4", "DBParameterGroupFamily": "postgres13", "DBEngineDescription": "PostgreSQL", "DBEngineVersionDescription": "PostgreSQL 13.4-R1", "ValidUpgradeTarget": [], "SupportsLogExportsToCloudwatchLogs": false, "SupportsReadReplica": true, "SupportedFeatureNames": [ "Lambda" ], "Status": "available", "SupportsParallelQuery": false, "SupportsGlobalDatabases": false, "SupportsBabelfish": false, "SupportsCertificateRotationWithoutRestart": true, "SupportedCACertificateIdentifiers": [ "rds-ca-2019", "rds-ca-rsa2048-g1", "rds-ca-ecc384-g1", "rds-ca-rsa4096-g1" ] } ] }

Validez del certificado del servidor de base de datos

La validez del certificado del servidor de base de datos depende del motor de base de datos y de la versión del motor de base de datos. Si la versión del motor de base de datos admite la rotación de certificados sin reinicio, el certificado del servidor de base de datos tiene una validez de 1 año. De no ser así, la validez es de 3 años.

Para obtener más información acerca de la rotación de certificados del servidor de base de datos, consulte Rotación automática de certificados del servidor.

Visualización de la CA de su instancia de base de datos

Puede ver los detalles sobre la CA de una base de datos en la pestaña Conectividad y seguridad de la consola, como se muestra en la siguiente imagen.


                        Detalles de la entidad de certificación

Si utiliza la AWS CLI, puede ver los detalles de la CA de una instancia de base de datos mediante el comando describe-db-instances. Puede ver los detalles sobre la CA de un clúster de base de datos multi-AZ mediante el comando describe-db-clusters.

Para comprobar el contenido del paquete de certificados de la CA, utilice el siguiente comando:

keytool -printcert -v -file global-bundle.pem

Paquetes de certificados para todas las Regiones de AWS

Para obtener un paquete de certificados que contenga los certificados intermedio y raíz de todas las regiones de Regiones de AWS, descárguelo en https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem.

Si l aplicación está en Microsoft Windows y requiere un archivo PKCS7, puede descargar el paquete de certificados PKCS7. Este paquete contiene los certificados intermedio y raíz en https://truststore.pki.rds.amazonaws.com/global/global-bundle.p7b.

nota

El proxy de Amazon RDS usa certificados de AWS Certificate Manager (ACM). Si está utilizando RDS Proxy, no es necesario descargar certificados de Amazon RDS ni actualizar aplicaciones que usen conexiones RDS Proxy. Para obtener más información, consulte Uso de TLS/SSL con RDS Proxy.

Paquetes de certificados para Regiones de AWS específicas

Para obtener un paquete de certificados que contenga los certificados intermedio y raíz de una Región de AWS, descárguelo desde el enlace de dicha Región de AWS en la tabla siguiente.

Región de AWS Paquete de certificados (PEM) Paquete de certificados (PKCS7)
EE.UU. Este (Norte de Virginia) us-east-1-bundle.pem us-east-1-bundle.p7b
US East (Ohio) us-east-2-bundle.pem us-east-2-bundle.p7b
EE.UU. Oeste (Norte de California) us-west-1-bundle.pem us-west-1-bundle.p7b
EE.UU. Oeste (Oregón) us-west-2-bundle.pem us-west-2-bundle.p7b
Africa (Cape Town) af-south-1-bundle.pem af-south-1-bundle.p7b
Asia Pacific (Hong Kong) ap-east-1-bundle.pem ap-east-1-bundle.p7b
Asia-Pacífico (Hyderabad) ap-south-2-bundle.pem ap-south-2-bundle.p7b
Asia-Pacífico (Yakarta) ap-southeast-3-bundle.pem ap-southeast-3-bundle.p7b
Asia-Pacífico (Melbourne) ap-southeast-4-bundle.pem ap-southeast-4-bundle.p7b
Asia Pacific (Mumbai) ap-south-1-bundle.pem ap-south-1-bundle.p7b
Asia Pacific (Osaka) ap-northeast-3-bundle.pem ap-northeast-3-bundle.p7b
Asia Pacífico (Tokio) ap-northeast-1-bundle.pem ap-northeast-1-bundle.p7b
Asia Pacific (Seoul) ap-northeast-2-bundle.pem ap-northeast-2-bundle.p7b
Asia Pacífico (Singapur) ap-southeast-1-bundle.pem ap-southeast-1-bundle.p7b
Asia Pacífico (Sídney) ap-southeast-2-bundle.pem ap-southeast-2-bundle.p7b
Canada (Central) ca-central-1-bundle.pem ca-central-1-bundle.p7b
Oeste de Canadá (Calgary) ca-west-1-bundle.pem ca-west-1-bundle.p7b
Europa (Fráncfort) eu-central-1-bundle.pem eu-central-1-bundle.p7b
Europe (Ireland) eu-west-1-bundle.pem eu-west-1-bundle.p7b
Europe (London) eu-west-2-bundle.pem eu-west-2-bundle.p7b
Europe (Milan) eu-south-1-bundle.pem eu-south-1-bundle.p7b
Europe (Paris) eu-west-3-bundle.pem eu-west-3-bundle.p7b
Europa (España) eu-south-2-bundle.pem eu-south-2-bundle.p7b
Europe (Stockholm) eu-north-1-bundle.pem eu-north-1-bundle.p7b
Europa (Zúrich) eu-central-2-bundle.pem eu-central-2-bundle.p7b
Israel (Tel Aviv) il-central-1-bundle.pem il-central-1-bundle.p7b
Medio Oriente (Baréin) me-south-1-bundle.pem me-south-1-bundle.p7b
Medio Oriente (EAU) me-central-1-bundle.pem me-central-1-bundle.p7b
América del Sur (São Paulo) sa-east-1-bundle.pem sa-east-1-bundle.p7b

AWS GovCloud (US)Certificados de

Para obtener un paquete de certificados que contenga los certificados intermedio y raíz de una AWS GovCloud (US) Region, descárguelo en https://truststore.pki.us-gov-west-1.rds.amazonaws.com/global/global-bundle.pem.

Si l aplicación está en Microsoft Windows y requiere un archivo PKCS7, puede descargar el paquete de certificados PKCS7. Este paquete contiene los certificados intermedio y raíz en https://truststore.pki.us-gov-west-1.rds.amazonaws.com/global/global-bundle.p7b.

Para obtener un paquete de certificados que contenga los certificados intermedio y raíz de una AWS GovCloud (US) Region, descárguelo desde el enlace de dicha AWS GovCloud (US) Region en la tabla siguiente.

AWS GovCloud (US) Region Paquete de certificados (PEM) Paquete de certificados (PKCS7)
AWS GovCloud (EE. UU. Este) us-gov-east-1-bundle.pem us-gov-east-1-bundle.p7b
AWS GovCloud (EE. UU. Oeste) us-gov-west-1-bundle.pem us-gov-west-1-bundle.p7b