Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Autenticación mutua con TLS en Equilibrador de carga de aplicación
La autenticación TLS mutua es una variación de la seguridad de la capa de transporte (TLS). La TLS tradicional establece comunicaciones seguras entre un servidor y un cliente, donde el servidor debe proporcionar su identidad a sus clientes. Con la TLS mutua, un equilibrador de carga negocia la autenticación mutua entre el cliente y el servidor mientras negocia TLS. Al usar la TLS mutua con el Equilibrador de carga de aplicación, se simplifica la administración de la autenticación y se reduce la carga de las aplicaciones.
Al usar la TLS mutua con el Equilibrador de carga de aplicación, su equilibrador de carga puede administrar la autenticación de los clientes para garantizar que solo los clientes de confianza se comuniquen con sus aplicaciones de backend. Al utilizar esta función, Application Load Balancer autentica a los clientes con certificados de una entidad emisora de certificados (CA) externa o mediante la AWS Private Certificate Authority (PCA), de forma opcional, con comprobaciones de revocación. Equilibrador de carga de aplicación transmite la información del certificado del cliente al backend, que las aplicaciones pueden utilizar para la autorización. Al usar la TLS mutua en Equilibrador de carga de aplicación, puede obtener una autenticación integrada, escalable y administrada para las entidades basadas en certificados, que utilizan bibliotecas establecidas.
La TLS mutua para los Equilibradores de carga de aplicación ofrece las dos opciones siguientes para validar los certificados de cliente X.509v3:
Nota: No se admiten los certificados de cliente X.509v1.
Acceso directo a TLS mutua: cuando se utiliza el modo de acceso directo a TLS mutua, el Equilibrador de carga de aplicación envía toda la cadena de certificados del cliente al destino mediante encabezados HTTP. Luego, si usa la cadena de certificados del cliente, puede implementar la correspondiente autenticación del equilibrador de carga y la lógica de autorización de destino en su aplicación.
Verificación TLS mutua: cuando se usa el modo de verificación TLS mutua, Equilibrador de carga de aplicación realiza la autenticación del certificado de cliente X.509 para los clientes cuando un equilibrador de carga negocia las conexiones de TLS.
Para empezar a utilizar la TLS mutua en Equilibrador de carga de aplicación mediante el acceso directo, solo tiene que configurar al oyente para que acepte los certificados de los clientes. Para utilizar la TLS mutua con procesos de verificación, debe hacer lo siguiente:
Cree un nuevo recurso del almacén de confianza.
Cargue su paquete de entidades de certificación (CA) y, si lo desea, las listas de revocación.
Adjunte el almacén de confianza al oyente que está configurado para verificar los certificados de los clientes.
Para conocer step-by-step los procedimientos para configurar el modo de verificación TLS mutua con su Application Load Balancer, consulte. Configuración de una TLS mutua en un Equilibrador de carga de aplicación
Pasos previos a la configuración de la TLS mutua en el Equilibrador de carga de aplicación
Antes de empezar a configurar la TLS mutua en el Equilibrador de carga de aplicación, tenga en cuenta lo siguiente:
- Cuotas
Los balanceadores de carga de aplicaciones incluyen ciertos límites relacionados con la cantidad de almacenes de confianza, certificados de CA y listas de revocación de certificados que se utilizan en su cuenta. AWS
Para obtener más información, consulte Cuotas para sus Equilibradores de carga de aplicación.
- Requisitos para certificados
Los Equilibradores de carga de aplicación son compatibles con los siguientes elementos para los certificados que se utilizan con la autenticación TLS mutua:
Certificado compatible: X.509v3
Claves públicas compatibles: RSA 2K — 8K o ECDSA secp256r1, secp384r1, secp521r1
Algoritmos de firma compatibles: 384 SHA256, 512 con RSA/SHA256, 384, 512 with EC/SHA 256 384 512 hash con RSASSA-PSS con MGF1
- Agrupaciones de certificados de CA
La siguiente información se aplica a los paquetes de entidades de certificación (CA):
Los Equilibradores de carga de aplicación cargan cada paquete de certificados de la entidad de certificación (CA) en un lote. Los Equilibradores de carga de aplicación no admiten la carga de certificados individuales. Si necesita agregar nuevos certificados, debe cargar el archivo del paquete de certificados.
Para reemplazar un paquete de certificados de CA, utilice la API. ModifyTrustStore
- Solicitud de certificado para acceso directo
Cuando se utiliza el acceso directo de TLS mutua, el Equilibrador de carga de aplicación inserta encabezados para presentar la cadena de certificados del cliente a los destinos del backend. El orden de presentación comienza con los certificados de hoja y termina con el certificado raíz.
- Reanudación de la sesión
No se admite la reanudación de la sesión cuando se utilizan los modos de verificación o los accesos directos de TLS mutua con un Equilibrador de carga de aplicación.
- Encabezados HTTP
Los Equilibradores de carga de aplicación utilizan encabezados
X-Amzn-Mtls
para enviar la información del certificado cuando negocian las conexiones de los clientes mediante una TLS mutua. Para obtener más información y ejemplos, consulte Encabezados HTTP y TLS mutua.- Archivos de certificados de CA
Tenga en cuenta que los certificados de CA deben satisfacer los siguientes requisitos:
El archivo de certificado debe usar el formato PEM (Privacy Enhanced Mail).
El contenido del certificado debe estar dentro de los límites
-----BEGIN CERTIFICATE-----
y-----END CERTIFICATE-----
.Los comentarios deben ir precedidos de un carácter
#
y no deben contener ningún carácter-
.No puede haber líneas en blanco.
Ejemplo de un certificado que no se acepta (no válido):
# comments Certificate: Data: Version: 3 (0x2) Serial Number: 01 Signature Algorithm: ecdsa-with-SHA384 Issuer: C=US, O=EXAMPLE, OU=EXAMPLE, CN=EXAMPLE Validity Not Before: Jan 11 23:57:57 2024 GMT Not After : Jan 10 00:57:57 2029 GMT Subject: C=US, O=EXAMPLE, OU=EXAMPLE, CN=EXAMPLE Subject Public Key Info: Public Key Algorithm: id-ecPublicKey Public-Key: (384 bit) pub: 00:01:02:03:04:05:06:07:08 ASN1 OID: secp384r1 NIST CURVE: P-384 X509v3 extensions: X509v3 Key Usage: critical Digital Signature, Key Encipherment, Certificate Sign, CRL Sign X509v3 Basic Constraints: critical CA:TRUE X509v3 Subject Key Identifier: 00:01:02:03:04:05:06:07:08 X509v3 Subject Alternative Name: URI:EXAMPLE.COM Signature Algorithm: ecdsa-with-SHA384 00:01:02:03:04:05:06:07:08 -----BEGIN CERTIFICATE----- Base64–encoded certificate -----END CERTIFICATE-----
Ejemplos de certificados que se aceptan (válidos):
-
Certificado único (codificado en PEM):
# comments -----BEGIN CERTIFICATE----- Base64–encoded certificate -----END CERTIFICATE-----
-
Varios certificados (codificados en PEM):
# comments -----BEGIN CERTIFICATE----- Base64–encoded certificate -----END CERTIFICATE----- # comments -----BEGIN CERTIFICATE----- Base64–encoded certificate -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Base64–encoded certificate -----END CERTIFICATE-----
Encabezados HTTP y TLS mutua
En esta sección, se describen los encabezados HTTP que los Equilibradores de carga de aplicación utilizan para enviar la información de los certificados cuando negocian conexiones con clientes que utilizan una TLS mutua. Los encabezados X-Amzn-Mtls
específicos que utiliza el Equilibrador de carga de aplicación dependen del modo de TLS mutua que haya especificado: modo de acceso directo o modo de verificación.
Para obtener información sobre otros encabezados HTTP compatibles con los Equilibradores de carga de aplicación, consulte Encabezados HTTP y balanceadores de tipo equilibrador de carga de aplicaciones.
Encabezado de HTTP para el modo de acceso directo
Para la TLS mutua en modo de acceso directo, los Equilibradores de carga de aplicación utilizan el siguiente encabezado.
Este encabezado contiene el formato PEM codificado en una URL de toda la cadena de certificados de cliente presentada en la conexión, con los caracteres seguros +=/
.
Ejemplo de contenido del encabezado:
X-Amzn-Mtls-Clientcert: -----BEGIN%20CERTIFICATE-----%0AMIID<...reduced...>do0g%3D%3D%0A-----END%20CERTIFICATE-----%0A-----BEGIN%20CERTIFICATE-----%0AMIID1<...reduced...>3eZlyKA%3D%3D%0A-----END%20CERTIFICATE-----%0A
Encabezados de HTTP para el modo de verificación
Para la TLS mutua en modo de verificación, los Equilibradores de carga de aplicación utilizan los siguientes encabezados.
Este encabezado contiene una representación hexadecimal del número de serie del certificado de hoja.
Ejemplo de contenido del encabezado:
X-Amzn-Mtls-Clientcert-Serial-Number: 03A5B1
Este encabezado contiene una RFC2253 cadena que representa el nombre distintivo (DN) del emisor.
Ejemplo de contenido del encabezado:
X-Amzn-Mtls-Clientcert-Issuer: CN=rootcamtls.com,OU=rootCA,O=mTLS,L=Seattle,ST=Washington,C=US
Este encabezado contiene una representación en RFC2253 cadena del nombre distintivo (DN) del sujeto.
Ejemplo de contenido del encabezado:
X-Amzn-Mtls-Clientcert-Subject: CN=client_.com,OU=client-3,O=mTLS,ST=Washington,C=US
Este encabezado contiene un formato ISO86 01 de la notAfter
fecha notBefore
y.
Ejemplo de contenido del encabezado:
X-Amzn-Mtls-Clientcert-Validity: NotBefore=2023-09-21T01:50:17Z;NotAfter=2024-09-20T01:50:17Z
Este encabezado contiene un formato PEM codificado en una dirección URL del certificado de hoja, con los caracteres seguros +=/
.
Ejemplo de contenido del encabezado:
X-Amzn-Mtls-Clientcert-Leaf: -----BEGIN%20CERTIFICATE-----%0AMIIG<...reduced...>NmrUlw%0A-----END%20CERTIFICATE-----%0A
Anuncie el nombre del asunto de la autoridad de certificación (CA)
Los nombres de asunto de Advertising Certificate Authority (CA) mejoran el proceso de autenticación al ayudar a los clientes a determinar qué certificados se aceptarán durante la autenticación TLS mutua.
Al activar Anunciar los nombres de asunto de CA, Application Load Balancer anunciará la lista de nombres de asunto de las autoridades de certificación (CAs) en las que confía, en función del almacén de confianza al que esté asociado. Cuando un cliente se conecta a un destino a través del Application Load Balancer, el cliente recibe la lista de nombres de sujetos de CA de confianza.
Durante el protocolo de enlace TLS, cuando Application Load Balancer solicita un certificado de cliente, incluye una lista de nombres distinguidos de CA de confianza DNs () en su mensaje de solicitud de certificado. Esto ayuda a los clientes a seleccionar certificados válidos que coincidan con los nombres de asunto de las entidades de certificación anunciadas, lo que agiliza el proceso de autenticación y reduce los errores de conexión.
Puede activar la opción Anunciar el nombre del asunto de CA en los oyentes nuevos y existentes. Para obtener más información, consulte Adición de un oyente HTTPS.
Registros de conexión de Equilibradores de carga de aplicación
Elastic Load Balancing proporciona registros de conexión que capturan atributos sobre las solicitudes enviadas a los Equilibradores de carga de aplicación. Los registros de conexión contienen información como la dirección IP y el puerto del cliente, la información del certificado del cliente, los resultados de la conexión y los cifrados TLS que se utilizan. Estos registros de conexión se pueden usar luego para revisar los patrones de solicitudes y otras tendencias.
Para obtener más información sobre los registros de conexión, consulte Registros de conexión del Equilibrador de carga de aplicación.