Compartir vía


Consideraciones de seguridad para el acelerador de zonas de aterrizaje de Azure Integration Services

La buena seguridad es la piedra angular de cualquier aplicación de Azure. Azure Integration Services se enfrenta a un desafío determinado, ya que hay muchos recursos que componen una aplicación y cada uno de estos recursos tiene sus propias consideraciones de seguridad. Para asegurarse de que comprende las consideraciones específicas de cada servicio, consulte las siguientes líneas base de seguridad:

Consideraciones de diseño

Al diseñar el modelo de seguridad, hay dos áreas de diseño diferentes: seguridad en tiempo de diseño y seguridad en tiempo de ejecución.

  • La seguridad en tiempo de diseño implica el acceso a la administración y creación de recursos de Azure a través de Azure Portal o una API de administración. En Azure, usamos el identificador de Entra de Microsoft y el control de acceso basado en rol (RBAC) para lograrlo.

  • Run-Time seguridad implica el acceso a puntos de conexión y recursos durante el flujo de una aplicación, por ejemplo, autenticación y autorización de un usuario que llama a una aplicación lógica o una operación de API en API Management.

Decida al principio si necesita:

  • Nube privada : todos los recursos residen en una red virtual y solo usan direcciones privadas, sin acceso a ni desde la red pública de Internet, potencialmente disponibles para los recursos locales a través de VPN o ExpressRoute.

  • Nube pública : todos los recursos orientados al público tienen acceso a la red pública de Internet, aunque están bloqueados para restringir el acceso desde la red pública de Internet.

  • Híbrido : algunos recursos son privados y algunos son públicos.

La elección que realice afectará al costo de los recursos, junto con la cantidad de seguridad que puede implementar para las aplicaciones.

Entre las consideraciones generales de seguridad se incluyen:

  • Uso de servicios de Azure para proteger el tráfico de entrada y salida.

  • Usar Microsoft Entra ID y OAuth 2.0 para administrar la autenticación.

  • Aplicación de directivas de gobernanza con Azure Policy.

  • Bloquear el acceso a los recursos (control de acceso).

  • Cifrado de datos tanto en tránsito como en reposo.

  • Registro de todos los intentos de acceder a los recursos.

  • Auditoría del acceso a los recursos.

Recomendaciones de diseño

Recomendaciones de diseño de red

  • Examine el uso de Application Gateway (Azure Application Gateway o Azure Front Door) con un firewall de aplicaciones web (WAF) delante de los puntos de conexión accesibles; esto le ayudará con el cifrado automático de datos y le permitirá supervisar y configurar los puntos de conexión con mayor facilidad.

    • Front Door es una red de entrega de aplicaciones que proporciona equilibrio de carga global y servicio de aceleración de sitios para aplicaciones web. Front Door ofrece funcionalidades de nivel 7, como la descarga SSL, el enrutamiento basado en rutas de acceso, la conmutación por error rápida y el almacenamiento en caché para mejorar el rendimiento y la disponibilidad de las aplicaciones.

    • Traffic Manager es un equilibrador de carga de tráfico basado en DNS que permite distribuir el tráfico de forma óptima a los servicios en regiones globales de Azure, a la vez que proporciona alta disponibilidad y capacidad de respuesta. Dado que Traffic Manager es un servicio de equilibrio de carga basado en DNS, carga el equilibrio solo en el nivel de dominio. Por ese motivo, no se puede hacer la conmutación por error de manera tan rápida como lo hace Front Door debido a desafíos comunes en torno al almacenamiento en caché del DNS y los sistemas que no respetan el TTL del DNS.

    • Application Gateway proporciona un controlador de entrega de aplicaciones administrada con varias funcionalidades de equilibrio de carga de nivel 7. Puede usar Application Gateway para optimizar la productividad de la granja de servidores web al descargar la desencriptación SSL que consume muchos recursos de CPU en la puerta de enlace.

    • Azure Load Balancer es un servicio de equilibrio de carga de entrada y salida de Capa 4 de alto rendimiento y latencia ultra baja para todos los protocolos UDP y TCP. Load Balancer controla millones de solicitudes por segundo. El Balanceador de Carga cuenta con redundancia de zona, lo que garantiza una alta disponibilidad en zonas de disponibilidad.

  • Implemente el aislamiento de red para los recursos de Integration Services mediante la integración de Red Virtual (VNet) para colocarlos en una subred aislada, combinando esto con el uso de Azure Private Link y puntos de conexión privados. Consulte el artículo Topología de red y conectividad de esta serie para obtener una revisión de esta guía de diseño.

  • Protección del tráfico de salida con Azure Firewall

  • Use el filtrado de IP para bloquear los puntos de conexión para que solo puedan acceder a ellos mediante direcciones de red conocidas (esto es aplicable a las aplicaciones lógicas no integradas en redes virtuales).

  • Si tiene recursos disponibles públicamente, emplee la ofuscación de DNS para disuadir a los atacantes; la ofuscación significa usar nombres de dominio personalizados o nombres específicos de recursos de Azure que no revelen el propósito o el propietario de un recurso.

Recomendaciones de diseño de cifrado

  • Al almacenar datos (en Azure Storage o Azure SQL Server, por ejemplo), habilite siempre el cifrado en reposo. Bloquear el acceso a los datos, idealmente solo para los servicios y un número limitado de administradores. Recuerde que esto también se aplica a los datos de registro. Para más información, consulte Cifrado de datos de Azure en reposo y Descripción general del cifrado de Azure.

  • Use siempre cifrado en tránsito (tráfico TLS, por ejemplo) al transferir datos entre recursos; nunca envíe datos a través de un canal sin cifrar.

  • Al usar protocolos TLS, use siempre TLS 1.2 o superior.

  • Mantenga los secretos en Azure Key Vault y, a continuación, vincule estos a App Settings (Functions, Logic Apps), Named Values (API Management) o Configuration Entries (App Configuration).

  • Implemente una directiva de rotación de claves para asegurarse de que todas las claves que se usan en el entorno se rotan periódicamente para evitar ataques mediante claves en peligro.

  • Para Logic App, usa la ofuscación para proteger los datos en el historial de ejecución.

Recomendaciones de diseño de autenticación y acceso

  • Siga siempre el principio de privilegios mínimos al asignar acceso: asigne a una identidad los permisos mínimos que necesita. A veces, esto implicará la creación de un rol personalizado de Microsoft Entra. Si no hay un rol integrado con los permisos mínimos que necesita, considere la posibilidad de crear un rol personalizado con solo estos permisos.

  • Siempre que sea posible, use siempre identidades administradas cuando un recurso necesite acceder a un servicio. Por ejemplo, si el flujo de trabajo de la aplicación lógica necesita acceder a Key Vault para recuperar un secreto, use la identidad administrada de la aplicación lógica para lograrlo; Las identidades administradas proporcionan un mecanismo más seguro y fácil de administrar para acceder a los recursos, ya que Azure administra la identidad en su nombre.

  • Use OAuth 2.0 como mecanismo de autenticación entre puntos de conexión de recursos:

    • En Logic Apps o Functions, habilite Easy Auth, que requiere que todos los autores de llamadas externos usen una identidad de OAuth (normalmente, microsoft Entra ID, pero podría ser cualquier proveedor de identidades).

    • En API Management, use el elemento de directiva jwt-validation para requerir un flujo de OAuth para las conexiones a los puntos de conexión.

    • En Azure Storage y Key Vault, configure directivas de acceso para restringir el acceso a identidades específicas.

Recomendaciones de diseño de gobernanza

  • Use Azure Policy de manera activa para buscar problemas de seguridad o errores. Por ejemplo, los puntos de conexión sin filtrado de IP.

  • Cuando esté disponible, use Microsoft Defender for Cloud para examinar los recursos e identificar posibles puntos débiles.

  • Revise periódicamente los registros de auditoría (idealmente mediante una herramienta automatizada) para identificar los ataques de seguridad y cualquier acceso no autorizado a los recursos.

  • Considere el uso de pruebas de penetración para identificar las debilidades del diseño de seguridad.

  • Use procesos de implementación automatizados para configurar la seguridad. Siempre que sea posible, use una canalización de CI/CD como Azure DevOps con Terraform para no solo implementar los recursos, sino también para configurar la seguridad. Esto garantiza que los recursos se protegerán automáticamente cada vez que se implementen.

Paso siguiente

Revise las áreas de diseño críticas para realizar consideraciones y recomendaciones completas para la arquitectura.