Publicación y protección de las API que se ejecutan en máquinas virtuales de Azure VMware Solution

Microsoft Azure API Management le permite publicar de forma segura en consumidores externos o internos. Solo las SKU de desarrollador (desarrollo) y Premium (producción) permiten que la integración de Azure Virtual Network publique las API que se ejecutan en cargas de trabajo de Azure VMware Solution. Además, ambas SKU habilitan la conectividad entre el servicio API Management y el back-end.

La configuración de API Management es la misma para los servicios back-end que se ejecutan en máquinas virtuales (VM) de Azure VMware Solution y locales. API Management también configura la IP virtual en el equilibrador de carga como punto de conexión para ambas implementaciones cuando el servidor backend se coloca detrás de un NSX Load Balancer en Azure VMware Solution.

Implementación externa

Una implementación externa publica las API consumidas por los usuarios externos que usan un punto de conexión público. Los desarrolladores y los ingenieros de DevOps pueden administrar las API a través de Azure Portal o PowerShell y el portal para desarrolladores de API Management.

El diagrama de implementación externa muestra todo el proceso y los actores implicados (se muestran en la parte superior). Los actores son:

  • Administradores: Representa el equipo de administración o DevOps, que administra Azure VMware Solution a través de Azure Portal y mecanismos de automatización como PowerShell o Azure DevOps.

  • Usuarios: Representa los consumidores de las API expuestas y representa tanto a los usuarios como a los servicios que consumen las API.

El flujo de tráfico pasa por la instancia de API Management, que extrae los servicios de back-end conectados a la red virtual del centro. El ExpressRoute Gateway enruta el tráfico a la conexión ExpressRoute Global Reach y llega a un NSX Load Balancer que distribuye el tráfico entrante a las diferentes instancias de servicio backend.

API Management tiene una API pública de Azure y se recomienda activar el servicio Azure DDoS Protection.

Diagrama que muestra una implementación externa de API Management para Azure VMware Solution

Implementación interna

Una implementación interna publica las API consumidas por usuarios o sistemas internos. Los equipos de DevOps y los desarrolladores de API usan las mismas herramientas de administración y el portal para desarrolladores que en la implementación externa.

Use Azure Application Gateway para implementaciones internas para crear un punto de conexión público y seguro para la API. Las funcionalidades de la puerta de enlace se usan para crear una implementación híbrida que permita escenarios diferentes.

  • Use el mismo recurso de API Management para su consumo tanto por consumidores internos como externos.

  • Tener un único recurso de API Management con un subconjunto de API definidas y disponibles para consumidores externos.

  • Proporcionar una solución fácil para activar y desactivar el acceso a API Management desde la red Internet pública.

En el siguiente diagrama de implementación se muestran los consumidores que pueden ser internos o externos, con cada tipo que accede a las mismas API o diferentes.

En una implementación interna, las API se exponen a la misma instancia de API Management. Delante de API Management, Application Gateway se implementa con la funcionalidad Azure Web Application Firewall (WAF) activada. También se implementa, un conjunto de agentes de escucha HTTP y reglas para filtrar el tráfico, exponiendo solo un subconjunto de los servicios back-end que se ejecutan en Azure VMware Solution.

  • El tráfico interno se enruta a través de ExpressRoute Gateway a Azure Firewall y, a continuación, a API Management, directamente o a través de reglas de tráfico.

  • El tráfico externo entra en Azure a través de Application Gateway, que usa la capa de protección externa para API Management.

Diagrama que muestra una implementación interna de API Management para Azure VMware Solution