Planejar o isolamento da rede
Neste artigo, você aprenderá a planejar seu isolamento de rede para o Azure Machine Learning e nossas recomendações. Este artigo é para administradores de TI que desejam projetar arquitetura de rede.
Arquitetura recomendada (padrão de isolamento de rede gerenciado)
O uso de uma rede virtual gerenciada fornece uma configuração mais fácil para o isolamento de rede. Ele protege automaticamente seu espaço de trabalho e recursos de computação gerenciados em uma rede virtual gerenciada. Você pode adicionar conexões de ponto de extremidade privadas para outros serviços do Azure nos quais o espaço de trabalho depende, como Contas de Armazenamento do Azure. Dependendo das suas necessidades, pode permitir todo o tráfego de saída para a rede pública ou permitir apenas o tráfego de saída que aprovar. O tráfego de saída exigido pelo serviço Azure Machine Learning é automaticamente habilitado para a rede virtual gerenciada. Recomendamos o uso do isolamento de rede gerenciado pelo espaço de trabalho para um método interno de isolamento de rede sem atrito. Temos dois padrões: permitir o modo de saída da Internet ou permitir apenas o modo de saída aprovado.
Permitir o modo de saída pela Internet
Use esta opção se quiser permitir que seus engenheiros de aprendizado de máquina acessem a internet livremente. Você pode criar outras regras de saída de ponto de extremidade privado para permitir que eles acessem seus recursos privados no Azure.
Permitir apenas o modo de saída aprovado
Use esta opção se quiser minimizar o risco de exfiltração de dados e controlar o que seus engenheiros de aprendizado de máquina podem acessar. Você pode controlar as regras de saída usando o ponto de extremidade privado, a tag de serviço e o FQDN.
Arquitetura recomendada (use sua VNet do Azure)
Se você tiver um requisito específico ou uma política da empresa que o impeça de usar uma rede virtual gerenciada, poderá usar uma rede virtual do Azure para isolamento de rede.
O diagrama a seguir é nossa arquitetura recomendada para tornar todos os recursos privados, mas permitir o acesso de saída à Internet a partir de sua rede virtual. Este diagrama descreve a seguinte arquitetura:
- Coloque todos os recursos na mesma região.
- Uma rede virtual de hub, que contém seu firewall.
- Uma VNet falada, que contém os seguintes recursos:
- Uma sub-rede de treinamento contém instâncias de computação e clusters usados para treinar modelos de ML. Esses recursos são configurados para nenhum IP público.
- Uma sub-rede de pontuação contém um cluster AKS.
- Uma sub-rede 'pe' contém pontos de extremidade privados que se conectam ao espaço de trabalho e recursos privados usados pelo espaço de trabalho (armazenamento, cofre de chaves, registro de contêiner, etc.)
- Os pontos de extremidade online gerenciados usam o ponto de extremidade privado do espaço de trabalho para processar solicitações de entrada. Um ponto de extremidade privado também é usado para permitir que implantações de endpoint online gerenciadas acessem o armazenamento privado.
Essa arquitetura equilibra a segurança da rede e a produtividade dos engenheiros de ML.
Você pode automatizar a criação desses ambientes usando um modelo Bicep ou um modelo Terraform. sem endpoint online gerenciado ou AKS. O endpoint online gerenciado é a solução se você não tiver um cluster AKS existente para sua pontuação de modelo de IA. Veja como proteger a documentação do endpoint online para obter mais informações. O AKS com a extensão Azure Machine Learning é a solução se você tiver um cluster AKS existente para sua pontuação de modelo de IA. Veja como anexar a documentação do kubernetes para obter mais informações.
Removendo o requisito de firewall
Se quiser remover o requisito de firewall, você pode usar grupos de segurança de rede e NAT de rede virtual do Azure para permitir a saída da Internet de seus recursos de computação privados.
Usando o espaço de trabalho público
Você pode usar um espaço de trabalho público se estiver de acordo com a autenticação e autorização do Microsoft Entra com acesso condicional. Um espaço de trabalho público tem alguns recursos para mostrar dados em sua conta de armazenamento privado e recomendamos o uso do espaço de trabalho privado.
Arquitetura recomendada com prevenção de exfiltração de dados
Este diagrama mostra a arquitetura recomendada para tornar todos os recursos privados e controlar os destinos de saída para evitar a exfiltração de dados. Recomendamos essa arquitetura ao usar o Azure Machine Learning com seus dados confidenciais em produção. Este diagrama descreve a seguinte arquitetura:
- Coloque todos os recursos na mesma região.
- Uma rede virtual de hub, que contém seu firewall.
- Além das tags de serviço, o firewall usa FQDNs para impedir a exfiltração de dados.
- Uma VNet falada, que contém os seguintes recursos:
- Uma sub-rede de treinamento contém instâncias de computação e clusters usados para treinar modelos de ML. Esses recursos são configurados para nenhum IP público. Além disso, um ponto de extremidade de serviço e uma política de ponto de extremidade de serviço estão em vigor para evitar a exfiltração de dados.
- Uma sub-rede de pontuação contém um cluster AKS.
- Uma sub-rede 'pe' contém pontos de extremidade privados que se conectam ao espaço de trabalho e recursos privados usados pelo espaço de trabalho (armazenamento, cofre de chaves, registro de contêiner, etc.)
- Os pontos de extremidade online gerenciados usam o ponto de extremidade privado do espaço de trabalho para processar solicitações de entrada. Um ponto de extremidade privado também é usado para permitir que implantações de endpoint online gerenciadas acessem o armazenamento privado.
As tabelas a seguir listam as Marcas de Serviço do Azure de saída necessárias e os FQDN (nomes de domínio totalmente qualificados) com a configuração de proteção contra exfiltração de dados:
Etiqueta de serviço de saída | Protocolo | Porta |
---|---|---|
AzureActiveDirectory |
TCP | 80, 443 |
AzureResourceManager |
TCP | 443 |
AzureMachineLearning |
UDP | 5831 |
BatchNodeManagement |
TCP | 443 |
FQDN de saída | Protocolo | Porta |
---|---|---|
mcr.microsoft.com |
TCP | 443 |
*.data.mcr.microsoft.com |
TCP | 443 |
ml.azure.com |
TCP | 443 |
automlresources-prod.azureedge.net |
TCP | 443 |
Usando o espaço de trabalho público
Você pode usar o espaço de trabalho público se estiver de acordo com a autenticação e autorização do Microsoft Entra com acesso condicional. Um espaço de trabalho público tem alguns recursos para mostrar dados em sua conta de armazenamento privado e recomendamos o uso do espaço de trabalho privado.
Principais considerações para entender os detalhes
O Azure Machine Learning tem recursos de IaaS e PaaS
O isolamento de rede do Azure Machine Learning envolve componentes de Plataforma como Serviço (PaaS) e Infraestrutura como Serviço (IaaS). Os serviços PaaS, como o espaço de trabalho do Azure Machine Learning, armazenamento, cofre de chaves, registro de contêiner e monitor, podem ser isolados usando o Private Link. Os serviços de computação IaaS, como instâncias/clusters de computação para treinamento de modelos de IA e o Serviço Kubernetes do Azure (AKS) ou pontos de extremidade online gerenciados para pontuação de modelos de IA, podem ser injetados em sua rede virtual e se comunicar com serviços PaaS usando o Private Link. O diagrama a seguir é um exemplo dessa arquitetura.
Neste diagrama, as instâncias de computação, clusters de computação e clusters AKS estão localizados em sua rede virtual. Eles podem acessar o espaço de trabalho ou o armazenamento do Azure Machine Learning usando um ponto de extremidade privado. Em vez de um ponto de extremidade privado, você pode usar um ponto de extremidade de serviço para o Armazenamento do Azure e o Cofre da Chave do Azure. Os outros serviços não suportam o ponto de extremidade do serviço.
Configurações de entrada e saída necessárias
O Azure Machine Learning tem várias configurações de entrada e saída necessárias com sua rede virtual. Se você tiver uma rede virtual autônoma, a configuração será simples usando o grupo de segurança de rede. No entanto, você pode ter uma arquitetura de rede hub-spoke ou mesh, firewall, dispositivo virtual de rede, proxy e roteamento definido pelo usuário. Em ambos os casos, certifique-se de permitir a entrada e saída com seus componentes de segurança de rede.
Neste diagrama, você tem uma arquitetura de rede hub and spoke. A VNet spoke tem recursos para o Azure Machine Learning. A VNet do hub tem um firewall que controla a saída da Internet de suas redes virtuais. Nesse caso, seu firewall deve permitir a saída para os recursos necessários e seus recursos de computação na VNet spoke devem ser capazes de alcançar seu firewall.
Gorjeta
No diagrama, a instância de computação e o cluster de computação são configurados para nenhum IP público. Se, em vez disso, você usar uma instância de computação ou cluster com IP público, precisará permitir a entrada da marca de serviço do Azure Machine Learning usando um NSG (Grupo de Segurança de Rede) e roteamento definido pelo usuário para ignorar seu firewall. Esse tráfego de entrada seria de um serviço da Microsoft (Azure Machine Learning). No entanto, recomendamos o uso da opção sem IP público para remover esse requisito de entrada.
Resolução DNS de recursos de link privado e aplicativo em instância de computação
Se você tiver seu próprio servidor DNS hospedado no Azure ou localmente, precisará criar um encaminhador condicional em seu servidor DNS. O encaminhador condicional envia solicitações DNS para o DNS do Azure para todos os serviços PaaS habilitados para link privado. Para obter mais informações, consulte os cenários de configuração de DNS e os artigos de configuração de DNS específicos do Azure Machine Learning.
Proteção contra transferência de dados não autorizada
Temos dois tipos de saída; Somente leitura e leitura/gravação. A saída somente leitura não pode ser explorada por atores mal-intencionados, mas a saída de leitura/gravação pode ser. O Armazenamento do Azure e o Azure Frontdoor (a frontdoor.frontend
etiqueta de serviço) são saídas de leitura/escrita no nosso caso.
Você pode reduzir esse risco de exfiltração de dados usando nossa solução de prevenção de exfiltração de dados. Usamos uma política de ponto de extremidade de serviço com um alias do Azure Machine Learning para permitir a saída apenas para contas de armazenamento gerenciado do Azure Machine Learning. Não é necessário abrir a saída para Armazenamento no firewall.
Neste diagrama, a instância de computação e o cluster precisam acessar as contas de armazenamento gerenciado do Azure Machine Learning para obter scripts de configuração. Em vez de abrir a saída para o armazenamento, você pode usar a política de ponto de extremidade de serviço com o alias do Azure Machine Learning para permitir o acesso ao armazenamento somente às contas de armazenamento do Azure Machine Learning.
As tabelas a seguir listam as Marcas de Serviço do Azure de saída necessárias e os FQDN (nomes de domínio totalmente qualificados) com a configuração de proteção contra exfiltração de dados:
Etiqueta de serviço de saída | Protocolo | Porta |
---|---|---|
AzureActiveDirectory |
TCP | 80, 443 |
AzureResourceManager |
TCP | 443 |
AzureMachineLearning |
UDP | 5831 |
BatchNodeManagement |
TCP | 443 |
FQDN de saída | Protocolo | Porta |
---|---|---|
mcr.microsoft.com |
TCP | 443 |
*.data.mcr.microsoft.com |
TCP | 443 |
ml.azure.com |
TCP | 443 |
automlresources-prod.azureedge.net |
TCP | 443 |
Ponto de extremidade online gerenciado
A segurança para comunicação de entrada e saída é configurada separadamente para pontos de extremidade online gerenciados.
Comunicação de entrada
O Azure Machine Learning usa um ponto de extremidade privado para proteger a comunicação de entrada para um ponto de extremidade online gerenciado. Defina o sinalizador do ponto de public_network_access
extremidade para disabled
impedir o acesso público a ele. Quando esse sinalizador é desabilitado, seu ponto de extremidade pode ser acessado somente por meio do ponto de extremidade privado do seu espaço de trabalho do Azure Machine Learning e não pode ser acessado de redes públicas.
Comunicação de saída
Para proteger a comunicação de saída de uma implantação para recursos, o Aprendizado de Máquina do Azure usa uma rede virtual gerenciada por espaço de trabalho. A implantação precisa ser criada na VNet gerenciada pelo espaço de trabalho para que ele possa usar os pontos de extremidade privados da rede virtual gerenciada pelo espaço de trabalho para comunicação de saída.
O diagrama de arquitetura a seguir mostra como as comunicações fluem através de pontos de extremidade privados para o ponto de extremidade online gerenciado. As solicitações de pontuação recebidas da rede virtual de um cliente fluem através do ponto de extremidade privado do espaço de trabalho para o ponto de extremidade online gerenciado. A comunicação de saída de implantações para serviços é tratada por meio de pontos de extremidade privados da rede virtual gerenciada do espaço de trabalho para essas instâncias de serviço.
Para obter mais informações, consulte Isolamento de rede com pontos de extremidade online gerenciados.
Falta de endereços IP privados na sua rede principal
O Azure Machine Learning requer IPs privados; um IP por instância de computação, nó de cluster de computação e ponto de extremidade privado. Você também precisa de muitos IPs se usar AKS. Sua rede hub-spoke conectada à sua rede local pode não ter um espaço de endereço IP privado grande o suficiente. Nesse cenário, você pode usar VNets isoladas e não emparelhadas para seus recursos do Azure Machine Learning.
Neste diagrama, sua VNet principal requer os IPs para pontos de extremidade privados. Você pode ter redes virtuais hub-spoke para vários espaços de trabalho do Azure Machine Learning com grandes espaços de endereço. Uma desvantagem dessa arquitetura é dobrar o número de pontos de extremidade privados.
Aplicação da política de rede
Você pode usar políticas internas se quiser controlar os parâmetros de isolamento de rede com espaço de trabalho de autoatendimento e criação de recursos de computação.
Outras considerações menores
Configuração de computação de construção de imagem para ACR por trás da VNet
Se você colocar seu registro de contêiner do Azure (ACR) atrás de seu ponto de extremidade privado, seu ACR não poderá criar suas imagens do docker. Você precisa usar instância de computação ou cluster de computação para criar imagens. Para obter mais informações, consulte o artigo Como definir a computação de compilação de imagem.
Ativação da interface do usuário do estúdio com espaço de trabalho habilitado para link privado
Se você planeja usar o estúdio do Azure Machine Learning, há etapas de configuração adicionais que são necessárias. Essas etapas são para evitar quaisquer cenários de exfiltração de dados. Para obter mais informações, consulte o artigo Como usar o estúdio do Azure Machine Learning em uma rede virtual do Azure.
Próximos passos
Para obter mais informações sobre como usar uma rede virtual gerenciada, consulte os seguintes artigos:
- Isolamento de rede gerenciado
- Usar ponto de extremidade privado para acessar seu espaço de trabalho
- Utilizar o DNS personalizado
Para obter mais informações sobre como usar uma Rede Virtual do Azure, consulte os seguintes artigos: