· · 3 minutos de lectura

Endpoints Privados, VNets, NSGs — Aspire Gestiona la Red Ahora

El nuevo soporte de redes empresariales de Azure para Aspire permite modelar VNets, endpoints privados, puertas de enlace NAT, NSGs y perímetros de seguridad de red directamente en tu AppHost, sin deriva de infraestructura.

Aspire Azure Networking Security .NET
Este artículo también está disponible en:English, Català, Deutsch, Français, Português, Italiano, 日本語, 中文, 한국어, Русский, हिन्दी, Polski, Türkçe, العربية, Bahasa Indonesia, Nederlands

He visto este escenario demasiadas veces. La aplicación está lista. La demo es excelente. Luego aparece la lista de verificación de seguridad: saca el almacenamiento de internet público, ejecuta dentro de una VNet, proporciona IPs de salida para la lista de autorización del socio, demuestra que solo las subredes correctas hablan con los servicios correctos.

En ese punto el modelo de aplicación y el modelo de infraestructura comienzan a divergir de maneras que son dolorosas de mantener.

El nuevo soporte de redes empresariales de Azure para Aspire aborda esto directamente. Describes la forma de la red junto a los recursos que la usan, en tu AppHost.

Los Bloques de Construcción

Aquí está para qué sirve cada concepto de red de Azure, resumido:

CaracterísticaÚsala cuandoPor qué importa
Red virtualNecesitas un espacio de direcciones privadoEl límite de red para subredes, endpoints privados y enrutamiento
SubredNecesitas separar cargas de trabajo dentro de la VNetCada parte del sistema obtiene su propio rango de direcciones y superficie de política
Subred delegadaUn servicio de plataforma (como ACA) necesita gestionar una subredPermite que el servicio coloque infraestructura gestionada en tu VNet de forma segura
Puerta de enlace NATNecesitas IPs públicas de salida predeciblesDirección estable para listas de autorización y auditoría
Endpoint privadoQuieres un recurso PaaS accesible privadamentePone una IP privada para ese servicio dentro de tu VNet, elimina la exposición pública
NSGNecesitas reglas de tráfico a nivel de subredPermitir/denegar explícito para tráfico entrante y saliente por subred

Describiéndolo en tu AppHost

El cambio clave aquí es que estás modelando la red junto a los recursos que la usan, no en un archivo Bicep separado que se aleja del modelo de aplicación con el tiempo.

Desde el AppHost, puedes:

  • Crear VNets y subredes con AddVirtualNetwork() y AddSubnet()
  • Adjuntar una puerta de enlace NAT a subredes para IPs de salida estables
  • Crear endpoints privados para almacenamiento, Key Vault, SQL y otros servicios PaaS
  • Definir NSGs con reglas de seguridad de entrada y salida
  • Configurar Perímetros de Seguridad de Red para políticas entre recursos

El resultado es que cuando ejecutas azd up, la infraestructura coincide con lo que el modelo de aplicación dice que necesita. No lo que dice una plantilla mantenida manualmente.

Por Qué Importa para Aplicaciones Reales

Algunas cosas que se vuelven significativamente más fáciles una vez que la red se modela en Aspire:

Endpoints privados para Key Vault y almacenamiento — describes WithPrivateEndpoint() en esos recursos, y Aspire maneja la configuración de zonas DNS y el adjunto de endpoints. La aplicación nunca cambia.

IPs de salida consistentes — agrega una puerta de enlace NAT a la subred relevante y cada solicitud de salida de tu aplicación pasa por una IP conocida y estable. Los socios pueden autorizarla. Los auditores pueden rastrearla.

Reglas NSG desde el código — en lugar de hacer clic en el portal o mantener un fragmento de Bicep, tus reglas de seguridad viven en el AppHost junto a los recursos que protegen.

Este es el tipo de integración que no hace que las demos sean emocionantes pero hace que los sistemas de producción sean mantenibles.

Conclusión

La seguridad de red apareciendo tarde en el ciclo de vida del proyecto es un problema resuelto si la modelas junto con la aplicación desde el principio. El soporte de redes empresariales de Aspire hace eso posible sin requerir un seguimiento de infraestructura separado.

Detalles completos en la publicación original: Securing Azure apps with Aspire enterprise networking

Compartir:
Ver código fuente de este artículo en GitHub ↗
← Aspire 13.3: Soporte de Kubernetes, Registros del Navegador y la Habilidad Aspireify
Tu Agente de IA Tiene un Problema de Identidad (Y Aquí Está la Plantilla que lo Resuelve) →