Planee e implemente la seguridad de la capa de transporte (TLS) en las aplicaciones, incluido Azure App Service y API Management.

Completado

Seguridad de la capa de transporte (TLS) es un protocolo criptográfico diseñado para proteger las comunicaciones a través de redes al proporcionar cifrado, autenticación e integridad de datos. Funciona estableciendo un protocolo de enlace seguro entre un cliente y un servidor, negociando conjuntos de cifrado y validando certificados emitidos por entidades de certificación de confianza. Este proceso garantiza que la información confidencial, como las credenciales y los datos de la aplicación, se transmita en forma cifrada, protegiéndolo de la interceptación o manipulación durante el tránsito. TLS evolucionó a través de varias versiones, con TLS 1.2 y TLS 1.3 que ofrecen un cifrado más seguro, protocolos de enlace más rápidos y privacidad mejorada en comparación con las iteraciones anteriores.

En el contexto de Azure, TLS desempeña un papel fundamental en la protección de datos en servicios como App Service, API Management, Azure Storage y SQL Database. Azure aplica TLS para todas las conexiones para garantizar el cifrado en tránsito, lo que mitiga riesgos como ataques de tipo "man in the middle". Se requieren versiones modernas de TLS (1.2 o posteriores). Azure se alinea con los estándares de seguridad del sector y proporciona características como Confidencialidad directa perfecta y cifrado autenticado, lo que mejora la resistencia frente a las amenazas en constante evolución. Las versiones más recientes de TLS no solo protegen los datos de los clientes, sino que también garantizan el cumplimiento de los requisitos normativos, lo que convierte a TLS en un componente fundamental de la posición de seguridad de Azure.

Qué hace la Seguridad de la Capa de Transporte (TLS) para sus aplicaciones

Seguridad de la capa de transporte (TLS) cifra los datos que viajan entre los clientes y los servidores, lo que impide la interceptación y la manipulación. Cuando un usuario se conecta a la aplicación web o a la API, TLS crea un túnel cifrado que protege la información confidencial(como tokens de autenticación, datos personales y transacciones empresariales) de la interceptación.

Las organizaciones modernas se basan en TLS para:

  • Cumplir los requisitos normativos: estándares como PCI DSS, HIPAA y otros estándares exigen el cifrado de datos en tránsito.
  • Generar confianza en el cliente: los indicadores de seguridad del explorador y las advertencias de certificado crean directamente la confianza del usuario.
  • Evitar infracciones de datos: las conexiones sin cifrar exponen credenciales, tokens de sesión y datos empresariales a atacantes de red.

TLS reemplaza el protocolo de capa de sockets seguros (SSL) en desuso. Configure siempre los servicios para usar TLS 1.2 o superior, con TLS 1.3 recomendado para lograr una seguridad y un rendimiento óptimos.

¿Por qué es importante TLS en Azure?

Los servicios de Azure controlan millones de solicitudes de clientes diariamente entre regiones globales. TLS proporciona tres protecciones críticas:

  • Autenticación: los certificados demuestran su identidad de servicio, lo que impide ataques de intermediarios donde los atacantes suplantan los puntos de conexión.
  • Confidencialidad: el cifrado garantiza que solo las partes autorizadas puedan leer datos transmitidos, incluso cuando el tráfico cruza redes que no son de confianza.
  • Integridad: las firmas criptográficas detectan cualquier alteración de los datos durante la transmisión.

Sin TLS, un atacante de la misma red que los usuarios podrían capturar credenciales de inicio de sesión, claves de API o registros de cliente. Azure incluye compatibilidad integrada con TLS en los servicios de plataforma, pero debe configurar las versiones mínimas y las directivas de certificado para alinearse con los requisitos de seguridad.

Importante

TLS solo protege los datos en tránsito. Debe cifrar los datos en reposo por separado mediante el cifrado de Azure Storage, el cifrado de datos transparente de la base de datos o Azure Disk Encryption.

Configuración de TLS para Azure App Service

En el código de la aplicación, puede acceder a los certificados públicos o privados que agregue a Azure App Service. El código de la aplicación puede actuar como cliente y acceder a un servicio externo que requiera autenticación de certificados. También es posible que tenga que realizar tareas criptográficas.

Este enfoque para usar certificados en el código usa la funcionalidad seguridad de la capa de transporte (TLS) en App Service, que requiere que la aplicación esté en el nivel Básico o superior. Si la aplicación está en el nivel Gratis o Compartido, puede incluir el archivo de certificado en el repositorio de aplicaciones.

Al permitir que App Service administre los certificados tls/Secure Sockets Layer (SSL), puede mantener los certificados y el código de la aplicación por separado y proteger los datos confidenciales.

Azure App Service proporciona terminación TLS administrada con renovación automática de certificados. Puede controlar la versión mínima de TLS y puede aplicar HTTPS para todas las conexiones.

Aplicación de la versión mínima de TLS

  1. En Azure Portal, vaya al recurso de App Service.
  2. En Configuración, seleccione Configuración.
  3. Seleccione la pestaña Configuración general.
  4. Establezca Versión mínima de TLS en 1.2 o 1.3 (recomendado 1.3).
  5. Seleccione Guardar para aplicar el cambio.

Los clientes que intentan conectarse con versiones anteriores de TLS reciben un error de conexión, lo que impide que los sistemas heredados usen criptografía débil.

Requerir conexiones HTTPS

  1. En el recurso de App Service, seleccione Configuración en Configuración.
  2. Seleccione la pestaña Configuración general.
  3. Establezca HTTPS solamente en Activado.
  4. Haga clic en Guardar.

Azure redirige automáticamente las solicitudes HTTP a HTTPS, lo que garantiza que todo el tráfico usa conexiones cifradas. Las conexiones cifradas eliminan las advertencias de contenido mixto en los exploradores y simplifican las auditorías de cumplimiento.

Adición de un certificado de dominio personalizado

Las aplicaciones de App Service reciben un certificado gratuito *.azurewebsites.net . Para cargas de trabajo de producción usando los dominios personalizados:

  1. Compre o importe un certificado que coincida con el nombre de dominio.
  2. En App Service, seleccione Certificados en Configuración.
  3. Seleccione Agregar certificado y siga el asistente para cargar el certificado o crear un certificado administrado de App Service.
  4. Enlace el certificado al dominio personalizado en Dominios personalizados.

Los certificados administrados se renuevan automáticamente antes de la expiración. Los certificados privados requieren renovación manual y recarga.

Configuración de TLS para Azure API Management

Azure API Management se encuentra entre clientes y API de back-end, control de la autenticación, limitación de velocidad y transformación. Usted configura TLS tanto en las capas de la puerta de enlace (orientada al cliente) como en el backend (servicio a servicio).

Establecimiento de la versión mínima de TLS para la puerta de enlace

  1. En Azure Portal, abra la instancia de API Management.
  2. En Seguridad, seleccione Protocolos y cifrados.
  3. Desactive las casillas de SSL 3.0, TLS 1.0 y TLS 1.1.
  4. Asegúrese de que TLS 1.2 está habilitado (la compatibilidad con TLS 1.3 depende del nivel de servicio).
  5. Haga clic en Guardar.

Establecer una versión mínima de TLS impide que los clientes negocian versiones de protocolo débiles. Pruebe con los consumidores de API antes de deshabilitar TLS 1.1 si admite aplicaciones móviles anteriores o sistemas heredados.

Aplicación de HTTPS para puntos de conexión de API

  1. Vaya a las API en la instancia de API Management.
  2. Seleccione la API que desea proteger.
  3. En Configuración, busque la opción esquema de dirección URL .
  4. Seleccione Solo HTTPS.
  5. Haga clic en Guardar.

API Management rechaza las solicitudes HTTP con una respuesta 403 Forbidden, protegiendo contra la exposición accidental de puntos de conexión no cifrados.

Configuración de la validación de TLS de back-end

Cuando API Management llama a los servicios de back-end, compruebe que esas conexiones también usan TLS:

  1. En la API, seleccione Diseño y elija una operación.
  2. En la sección Back-end , seleccione el icono de lápiz que desea editar.
  3. Habilite Validate certificate chain (Validar cadena de certificados ) y Validate certificate name (Validar nombre de certificado).
  4. Cargue certificados raíz de confianza si el back-end usa certificados privados o autofirmados.

Compruebe las conexiones respaldadas para impedir que API Management acepte certificados no válidos o expirados de los servicios back-end y mantenga el cifrado de un extremo a otro.

Sugerencia

Use Azure Key Vault para almacenar y rotar certificados para App Service y API Management. Un proceso centralizado de administración del ciclo de vida de los certificados simplifica los informes de cumplimiento.

Planeamiento de la configuración de TLS

Antes de implementar los cambios de TLS en producción:

  • Auditar clientes existentes: identifique los sistemas que usan TLS 1.0 o 1.1 y planee sus actualizaciones.
  • Probar renovaciones de certificados: compruebe que la renovación automatizada funciona para certificados administrados y documente procedimientos de renovación manual para certificados privados.
  • Configuración de la supervisión: configure alertas de Azure Monitor para errores de protocolo de enlace TLS y advertencias de expiración de certificados.
  • Asignaciones de cumplimiento de documentos: registre qué configuraciones de TLS cumplen con requisitos normativos específicos para los registros de auditoría.

Deshabilitar las versiones anteriores de TLS puede interrumpir la compatibilidad con los clientes heredados. Coordinar con los propietarios de aplicaciones y planear un lanzamiento por fases con una comunicación clara a los consumidores de API.

Conclusiones clave

  • Configure la versión mínima de TLS en 1.2 o superior en todos los servicios de Azure para evitar vulnerabilidades de criptografía débiles.
  • Aplique conexiones solo HTTPS en App Service y API Management para eliminar el tráfico sin cifrar.
  • Habilite la validación de certificados de back-end en API Management para mantener el cifrado de un extremo a otro a través de los límites del servicio.
  • Use Azure Key Vault para la administración centralizada de certificados y los flujos de trabajo de renovación automatizada.
  • Pruebe los cambios de configuración de TLS en entornos de ensayo antes del lanzamiento de producción para identificar problemas de compatibilidad de cliente.
  • Audite las instancias existentes de Azure App Service y API Management para identificar los servicios que aún permiten TLS 1.0 o 1.1.
  • Cree una instancia de Azure Key Vault y migre el almacenamiento de certificados desde cargas manuales a la administración centralizada basada en almacenes.
  • Configure las alertas de Azure Monitor para la expiración del certificado (30 días antes de la expiración) y los errores de protocolo de enlace TLS para evitar interrupciones del servicio.