Planear el aislamiento de red
En este artículo, aprenderá a planear el aislamiento de red para Azure Machine Learning y nuestras recomendaciones. Este artículo es para los administradores de TI que quieren diseñar la arquitectura de red.
Arquitectura recomendada (patrón de aislamiento de red gestionada)
El uso de una red virtual administrada proporciona una configuración más sencilla para el aislamiento de red. Protege automáticamente el área de trabajo y los recursos de proceso administrados en una red virtual administrada. Puede agregar conexiones de punto de conexión privado para otros servicios de Azure en los que se basa el área de trabajo, como cuentas de Azure Storage. En función de sus necesidades, puede permitir todo el tráfico de salida a la red pública o permitir solo el tráfico de salida que apruebe. El tráfico de salida requerido por el servicio Azure Machine Learning se habilita automáticamente para la red virtual administrada. Recomendamos usar el aislamiento de red gestionada por el área de trabajo para disponer de un método de aislamiento de red sin fricciones. Tenemos dos patrones: permitir el modo de salida de Internet o permitir solo el modo de salida aprobado.
Permitir el modo de salida de Internet
Use esta opción si desea permitir que los ingenieros de aprendizaje automático accedan a Internet libremente. Puede crear otras reglas de salida de punto de conexión privado para permitirles acceder a los recursos privados en Azure.
Permitir solo el modo de salida aprobado
Use esta opción si desea minimizar el riesgo de filtración de datos y controlar a qué pueden acceder los ingenieros de aprendizaje automático. Puede controlar las reglas de salida mediante el punto de conexión privado, la etiqueta de servicio y el FQDN.
Arquitectura recomendada (use la red virtual de Azure)
Si tiene un requisito específico o una directiva de empresa que le impide usar una red virtual administrada, puede usar una red virtual de Azure para el aislamiento de red.
El diagrama siguiente es nuestra arquitectura recomendada para hacer que todos los recursos sean privados pero permitan el acceso saliente a Internet desde la red virtual. En este diagrama se describe la siguiente arquitectura:
- Poner todos los recursos en la misma región.
- Una red virtual del centro de conectividad que contiene el firewall.
- Una red virtual radial que contiene los siguientes recursos:
- Una subred de entrenamiento contiene instancias de proceso y clústeres usados para entrenar modelos de ML. Estos recursos están configurados para ninguna dirección IP pública.
- Una subred de puntuación contiene un clúster de AKS.
- Una subred "pe" contiene puntos de conexión privados que se conectan al área de trabajo y a los recursos privados usados por el área de trabajo (almacenamiento, almacén de claves, registro de contenedor, etc.).
- Los puntos de conexión en línea administrados usan el punto de conexión privado del área de trabajo para procesar las solicitudes entrantes. También se usa un punto de conexión privado para permitir que las implementaciones de puntos de conexión en línea administrados accedan al almacenamiento privado.
Esta arquitectura equilibra la seguridad de red y la productividad de los ingenieros de ML.
Esta creación de entornos se puede automatizar mediante una plantilla de Bicep o una plantilla de Terraform. sin punto de conexión en línea administrado o AKS. El punto de conexión en línea administrado es la solución si no tiene un clúster de AKS existente para la puntuación del modelo de IA. Consulte la documentación sobre cómo proteger el punto de conexión en línea para obtener más información. AKS con la extensión de Azure Machine Learning es la solución si tiene un clúster de AKS existente para la puntuación del modelo de IA. Consulte la documentación sobre cómo adjuntar Kubernetes para obtener más información.
Eliminación del requisito de firewall
Si desea quitar el requisito de firewall, puede usar grupos de seguridad de red y la NAT de la red virtual de Azure para permitir que Internet salga de los recursos informáticos privados.
Uso del área de trabajo pública
Puede usar un área de trabajo pública si está de acuerdo con la autenticación y autorización de Microsoft Entra con acceso condicional. Un área de trabajo pública tiene ciertas características para mostrar datos en la cuenta de almacenamiento privada y se recomienda usar el área de trabajo privada.
Arquitectura recomendada con prevención de filtración de datos
En este diagrama se muestra la arquitectura recomendada para que todos los recursos sean privados y controlen los destinos salientes para evitar la filtración de datos. Se recomienda esta arquitectura al usar Azure Machine Learning con los datos confidenciales en producción. En este diagrama se describe la siguiente arquitectura:
- Poner todos los recursos en la misma región.
- Una red virtual del centro de conectividad que contiene el firewall.
- Además de las etiquetas de servicio, el firewall usa FQDN para evitar la filtración de datos.
- Una red virtual radial que contiene los siguientes recursos:
- Una subred de entrenamiento contiene instancias de proceso y clústeres usados para entrenar modelos de ML. Estos recursos están configurados para ninguna dirección IP pública. Además, se ha implementado una directiva de punto de conexión de servicio y un punto de conexión de servicio para evitar la filtración de datos.
- Una subred de puntuación contiene un clúster de AKS.
- Una subred "pe" contiene puntos de conexión privados que se conectan al área de trabajo y a los recursos privados usados por el área de trabajo (almacenamiento, almacén de claves, registro de contenedor, etc.).
- Los puntos de conexión en línea administrados usan el punto de conexión privado del área de trabajo para procesar las solicitudes entrantes. También se usa un punto de conexión privado para permitir que las implementaciones de puntos de conexión en línea administrados accedan al almacenamiento privado.
En las tablas siguientes se enumeran las etiquetas de servicio de Azure salientes necesarias y los nombres de dominio completos (FQDN) con la configuración de protección contra filtración de datos:
Etiqueta de servicio de salida | Protocolo | Port |
---|---|---|
AzureActiveDirectory |
TCP | 80, 443 |
AzureResourceManager |
TCP | 443 |
AzureMachineLearning |
UDP | 5831 |
BatchNodeManagement |
TCP | 443 |
FQDN de salida | Protocolo | Port |
---|---|---|
mcr.microsoft.com |
TCP | 443 |
*.data.mcr.microsoft.com |
TCP | 443 |
ml.azure.com |
TCP | 443 |
automlresources-prod.azureedge.net |
TCP | 443 |
Uso del área de trabajo pública
Puede usar el área de trabajo pública si está bien con la autenticación y autorización de Microsoft Entra con acceso condicional. Un área de trabajo pública tiene ciertas características para mostrar datos en la cuenta de almacenamiento privada y se recomienda usar el área de trabajo privada.
Consideraciones clave para comprender los detalles
Azure Machine Learning tiene recursos IaaS y PaaS
El aislamiento de red de Azure Machine Learning implica tanto componentes de plataforma como servicio (PaaS) como de infraestructura como servicio (IaaS). Los servicios PaaS, como el área de trabajo de Azure Machine Learning, el almacenamiento, el almacén de claves, el registro de contenedor y la supervisión, se pueden aislar mediante Private Link. Los servicios informáticos de IaaS, como las instancias de proceso o los clústeres para el entrenamiento de modelos de IA y Azure Kubernetes Service (AKS) o los puntos de conexión en línea administrados para la puntuación de modelos de IA, se pueden insertar en la red virtual y comunicarse con los servicios PaaS mediante Private Link. El diagrama siguiente es un ejemplo de esta arquitectura.
En este diagrama, las instancias de proceso, los clústeres de proceso y los clústeres de AKS se encuentran dentro de la red virtual. Pueden acceder al área de trabajo o al almacenamiento de Azure Machine Learning mediante un punto de conexión privado. En lugar de un punto de conexión privado, puede usar un punto de conexión de servicio para Azure Storage y Azure Key Vault. Los demás servicios no admiten el punto de conexión de servicio.
Configuraciones de entrada y salida necesarias
Azure Machine Learning tiene varias configuraciones de entrada y salida necesarias con la red virtual. Si tiene una red virtual independiente, la configuración es sencilla mediante el grupo de seguridad de red. Sin embargo, puede tener una arquitectura de red en estrella tipo hub-and-spoke o de malla, firewall, aplicación virtual de red, proxy y enrutamiento definido por el usuario. En cualquier caso, asegúrese de permitir entrantes y salientes con los componentes de seguridad de red.
En este diagrama, tiene una arquitectura de red en estrella tipo hub-and-spoke. La red virtual de radio tiene recursos para Azure Machine Learning. La red virtual del centro de conectividad tiene un firewall que controla la salida de Internet desde las redes virtuales. En este caso, el firewall debe permitir la salida a los recursos necesarios y los recursos de proceso de la red virtual de radio deben poder acceder al firewall.
Sugerencia
En el diagrama, la instancia de proceso y el clúster de proceso no están configurados para ninguna dirección IP pública. Si en su lugar usa una instancia de proceso o un clúster con una dirección IP pública, debe permitir la entrada desde la etiqueta de servicio de Azure Machine Learning mediante un grupo de seguridad de red (NSG) y el enrutamiento definido por el usuario para omitir el firewall. Este tráfico entrante provendría de un servicio de Microsoft (Azure Machine Learning). Sin embargo, se recomienda usar la opción sin dirección IP pública para quitar este requisito de entrada.
Resolución DNS de recursos y aplicaciones de vínculo privado en la instancia de proceso
Si tiene su propio servidor DNS hospedado en Azure o en el entorno local, debe crear un reenviador condicional en el servidor DNS. El reenviador condicional envía solicitudes DNS a Azure DNS para todos los servicios PaaS habilitados para el vínculo privado. Para más información, consulte los artículos Escenarios de configuración de DNS y Configuración de DNS específica de Azure Machine Learning.
Protección contra la filtración de datos
Tenemos dos tipos de salida: solo lectura y lectura y escritura. Los actores malintencionados no pueden aprovechar la salida de solo lectura, pero sí la salida de lectura y escritura. Azure Storage y Azure Frontdoor (la etiqueta de servicio frontdoor.frontend
) serían salientes de lectura y escritura en nuestro caso.
Puede mitigar este riesgo de filtración de datos mediante nuestra solución de prevención de filtración de datos. Usamos una directiva de punto de conexión de servicio con un alias de Azure Machine Learning para permitir la salida solo a cuentas de almacenamiento administradas de Azure Machine Learning. No es necesario abrir puertos entrantes en el firewall.
En este diagrama, la instancia de proceso y el clúster deben acceder a las cuentas de almacenamiento administradas de Azure Machine Learning para obtener scripts de configuración. En lugar de abrir la salida al almacenamiento, puede usar la directiva de punto de conexión de servicio con el alias de Azure Machine Learning para permitir el acceso de almacenamiento solo a las cuentas de almacenamiento de Azure Machine Learning.
En las tablas siguientes se enumeran las etiquetas de servicio de Azure salientes necesarias y los nombres de dominio completos (FQDN) con la configuración de protección contra filtración de datos:
Etiqueta de servicio de salida | Protocolo | Port |
---|---|---|
AzureActiveDirectory |
TCP | 80, 443 |
AzureResourceManager |
TCP | 443 |
AzureMachineLearning |
UDP | 5831 |
BatchNodeManagement |
TCP | 443 |
FQDN de salida | Protocolo | Port |
---|---|---|
mcr.microsoft.com |
TCP | 443 |
*.data.mcr.microsoft.com |
TCP | 443 |
ml.azure.com |
TCP | 443 |
automlresources-prod.azureedge.net |
TCP | 443 |
Punto de conexión en línea administrado
La seguridad de la comunicación entrante y saliente se configura por separado para los puntos de conexión en línea administrados.
Comunicación entrante
Azure Machine Learning usa un punto de conexión privado para proteger la comunicación entrante a un punto de conexión en línea administrado. Establezca la marca public_network_access
del punto de conexión en disabled
para evitar el acceso público a él. Cuando esta marca está deshabilitada, solo se puede acceder al punto de conexión a través del punto de conexión privado del área de trabajo de Azure Machine Learning y no se puede acceder desde redes públicas.
Comunicación saliente
Para proteger la comunicación saliente de una implementación a los recursos, Azure Machine Learning usa una red virtual administrada por el área de trabajo. La implementación debe crearse en la VNET administrada del área de trabajo para que pueda usar los puntos de conexión privados de la red virtual administrada del área de trabajo para la comunicación saliente.
En el diagrama de arquitectura siguiente, se muestra cómo fluyen las comunicaciones a través de puntos de conexión privados al punto de conexión en línea administrado. Las solicitudes de puntuación entrantes desde la red virtual de un cliente fluyen a través del punto de conexión privado del área de trabajo al punto de conexión en línea administrado. La comunicación saliente de las implementaciones a los servicios se controla a través de puntos de conexión privados desde la red virtual administrada del área de trabajo a esas instancias de servicio.
Para obtener más información, consulte Aislamiento de red con puntos de conexión en línea administrados.
Escasez de direcciones IP privadas en la red principal
Azure Machine Learning requiere direcciones IP privadas; una dirección IP por instancia de proceso, un nodo de clúster de proceso y un punto de conexión privado. También necesitará muchas direcciones IP si usa AKS. Es posible que la red en estrella tipo hub-and-spoke conectada a la red local no tenga un espacio de direcciones IP privadas suficientemente grande. En este escenario, puede usar redes virtuales aisladas y no emparejadas para los recursos de Azure Machine Learning.
En este diagrama, la red virtual principal requiere las direcciones IP para los puntos de conexión privados. Puede tener redes virtuales en estrella tipo hub-and-spoke para varias áreas de trabajo de Azure Machine Learning con espacios de direcciones grandes. Una desventaja de esta arquitectura es duplicar el número de puntos de conexión privados.
Aplicación de la directiva de red
Puede usar directivas integradas si desea controlar los parámetros de aislamiento de red con el área de trabajo de autoservicio y la creación de recursos informáticos.
Otras consideraciones secundarias
Configuración del proceso de compilación de imágenes para ACR detrás de la red virtual
Si coloca el registro de contenedor de Azure (ACR) detrás del punto de conexión privado, ACR no puede compilar las imágenes de Docker. Debe usar la instancia de proceso o el clúster de proceso para compilar imágenes. Para más información, consulte el artículo Cómo establecer el proceso de compilación de imágenes.
Habilitación de la interfaz de usuario de Studio con el área de trabajo habilitada para el vínculo privado
Si tiene previsto usar el Estudio de Azure Machine Learning, hay pasos de configuración adicionales que son necesarios. Estos pasos son evitar cualquier escenario de filtración de datos. Para más información, consulte el artículo Cómo usar el Estudio de Azure Machine Learning en una red virtual de Azure.
Pasos siguientes
Para más información sobre el uso de una red virtual administrada, consulte los artículos siguientes:
- Aislamiento de red gestionada
- Uso del punto de conexión privado para acceder al área de trabajo
- Uso de un DNS personalizado
Para más información sobre el uso de una instancia de Azure Virtual Network, consulte los artículos siguientes: