Proteger os recursos da área de trabalho do Azure Machine Learning com redes virtuais (VNets)

Gorjeta

A Microsoft recomenda o uso de redes virtuais gerenciadas do Azure Machine Learning em vez das etapas neste artigo. Com uma rede virtual gerenciada, o Azure Machine Learning lida com o trabalho de isolamento de rede para seu espaço de trabalho e cálculos gerenciados. Você também pode adicionar pontos de extremidade privados para recursos necessários para o espaço de trabalho, como a Conta de Armazenamento do Azure. Para obter mais informações, consulte Isolamento de rede gerenciado pelo espaço de trabalho.

Proteja os recursos do espaço de trabalho do Azure Machine Learning e os ambientes de computação usando as Redes Virtuais do Azure (VNets). Este artigo usa um cenário de exemplo para mostrar como configurar uma rede virtual completa.

Este artigo faz parte de uma série sobre como proteger um fluxo de trabalho do Azure Machine Learning. Veja os outros artigos desta série:

Este artigo faz parte de uma série sobre como proteger um fluxo de trabalho do Azure Machine Learning. Veja os outros artigos desta série:

Para obter um tutorial sobre como criar um espaço de trabalho seguro, consulte Tutorial: Criar um espaço de trabalho seguro ou Tutorial: Criar um espaço de trabalho seguro usando um modelo.

Pré-requisitos

Este artigo pressupõe que você tenha familiaridade com os seguintes artigos:

Cenário de exemplo

Nesta seção, você aprenderá como um cenário de rede comum é configurado para proteger a comunicação do Azure Machine Learning com endereços IP privados.

A tabela a seguir compara como os serviços acessam diferentes partes de uma rede do Azure Machine Learning com e sem uma VNet:

Cenário Área de trabalho Recursos associados Ambiente de computação de treinamento Inferência do ambiente de computação
Nenhuma rede virtual IP público IP público IP público IP público
Área de trabalho pública, todos os outros recursos numa rede virtual IP público IP público (ponto de extremidade de serviço)
- ou -
IP Privado (ponto final privado)
IP público IP privado
Proteger recursos numa rede virtual IP Privado (ponto final privado) IP público (ponto de extremidade de serviço)
- ou -
IP Privado (ponto final privado)
IP privado IP privado
  • Espaço de trabalho - Crie um ponto de extremidade privado para seu espaço de trabalho. O ponto de extremidade privado conecta o espaço de trabalho à vnet através de vários endereços IP privados.
    • Acesso público - Opcionalmente, você pode habilitar o acesso público para um espaço de trabalho seguro.
  • Recurso associado - Use pontos de extremidade de serviço ou pontos de extremidade privados para se conectar a recursos de espaço de trabalho, como armazenamento do Azure, Cofre de Chaves do Azure. Para os Serviços de Contêiner do Azure, use um ponto de extremidade privado.
    • Os pontos de extremidade de serviço fornecem a identidade de sua rede virtual para o serviço do Azure. Depois de habilitar pontos de extremidade de serviço em sua rede virtual, você pode adicionar uma regra de rede virtual para proteger os recursos de serviço do Azure à sua rede virtual. Os pontos de extremidade de serviço usam endereços IP públicos.
    • Pontos de extremidade privados são interfaces de rede que conectam você com segurança a um serviço com tecnologia do Azure Private Link. O ponto de extremidade privado usa um endereço IP privado da sua rede virtual, trazendo efetivamente o serviço para a sua rede virtual.
  • Acesso à computação de treinamento - Acesse destinos de computação de treinamento, como a Instância de Computação do Azure Machine Learning e os Clusters de Computação do Azure Machine Learning com endereços IP públicos ou privados.
  • Acesso à computação de inferência - Acesse clusters de computação do Azure Kubernetes Services (AKS) com endereços IP privados.

As próximas seções mostram como proteger o cenário de rede descrito anteriormente. Para proteger a sua rede, deve:

  1. Proteja o espaço de trabalho e os recursos associados.
  2. Proteja o ambiente de treinamento.
  3. Proteja o ambiente de inferência.
  4. Opcionalmente: ative a funcionalidade de estúdio.
  5. Defina as configurações do firewall.
  6. Configure a resolução de nomes DNS.

Espaço de trabalho público e recursos seguros

Importante

Embora esta seja uma configuração suportada para o Azure Machine Learning, a Microsoft não a recomenda. Os dados na Conta de Armazenamento do Azure por trás da rede virtual podem ser expostos no espaço de trabalho público. Você deve verificar essa configuração com sua equipe de segurança antes de usá-la na produção.

Se pretender aceder à área de trabalho através da Internet pública, mantendo todos os recursos associados protegidos numa rede virtual, utilize os seguintes passos:

  1. Crie uma Rede Virtual do Azure. Essa rede protege os recursos usados pelo espaço de trabalho.

  2. Use uma das seguintes opções para criar um espaço de trabalho acessível publicamente:

    • Crie um espaço de trabalho do Azure Machine Learning que não use a rede virtual. Para obter mais informações, consulte Gerenciar espaços de trabalho do Azure Machine Learning.

    OU

  3. Adicione os seguintes serviços à rede virtual usando um ponto de extremidade de serviço ou um ponto de extremidade privado. Permita também que serviços confiáveis da Microsoft acessem esses serviços:

  4. Em propriedades da(s) Conta(s) de Armazenamento do Azure para seu espaço de trabalho, adicione seu endereço IP do cliente à lista permitida nas configurações de firewall. Para obter mais informações, consulte Configurar firewalls e redes virtuais.

Proteger o espaço de trabalho e os recursos associados

Use as etapas a seguir para proteger seu espaço de trabalho e os recursos associados. Essas etapas permitem que seus serviços se comuniquem na rede virtual.

  1. Crie uma Redes Virtuais do Azure. Esta rede protege o espaço de trabalho e outros recursos. Em seguida, crie um espaço de trabalho habilitado para Link Privado para habilitar a comunicação entre sua rede virtual e o espaço de trabalho.

  2. Adicione os seguintes serviços à rede virtual usando um ponto de extremidade de serviço ou um ponto de extremidade privado. Permita também que serviços confiáveis da Microsoft acessem esses serviços:

    Serviço Informações sobre o ponto final Permitir informações confiáveis
    Azure Key Vault Ponto de extremidade de serviço Ponto de extremidade
    privado
    Permitir que serviços confiáveis da Microsoft ignorem esse firewall
    Conta de armazenamento do Azure Ponto final privado e de serviço
    Ponto final privado
    Conceder acesso a partir de instâncias
    de recursos do Azure ou
    Conceder acesso a serviços fidedignos do Azure
    Azure Container Registry Ponto final privado Permitir serviços confiáveis
  1. Crie uma Redes Virtuais do Azure. Esta rede virtual protege o espaço de trabalho e outros recursos. Em seguida, crie um espaço de trabalho habilitado para Link Privado para habilitar a comunicação entre sua rede virtual e o espaço de trabalho.

  2. Adicione os seguintes serviços à rede virtual usando um ponto de extremidade de serviço ou um ponto de extremidade privado. Permita também que serviços confiáveis da Microsoft acessem esses serviços:

    Serviço Informações sobre o ponto final Permitir informações confiáveis
    Azure Key Vault Ponto de extremidade de serviço Ponto de extremidade
    privado
    Permitir que serviços confiáveis da Microsoft ignorem esse firewall
    Conta de armazenamento do Azure Ponto final privado e de serviço
    Ponto final privado
    Conceder acesso a partir de instâncias
    de recursos do Azure ou
    Conceder acesso a serviços fidedignos do Azure
    Azure Container Registry Ponto final privado Permitir serviços confiáveis

Diagram showing how the workspace and associated resources communicate inside a VNet.

Para obter instruções detalhadas sobre como concluir essas etapas, consulte Proteger um espaço de trabalho do Azure Machine Learning.

Para obter instruções detalhadas sobre como concluir essas etapas, consulte Proteger um espaço de trabalho do Azure Machine Learning.

Limitações

Proteger seu espaço de trabalho e recursos associados em uma rede virtual tem as seguintes limitações:

  • O espaço de trabalho e a conta de armazenamento padrão devem estar na mesma rede virtual. No entanto, sub-redes dentro da mesma VNet são permitidas. Por exemplo, o espaço de trabalho em uma sub-rede e o armazenamento em outra.

    Recomendamos que o Cofre da Chave do Azure e o Registro de Contêiner do Azure para o espaço de trabalho também estejam na mesma rede virtual. No entanto, ambos os recursos também podem estar em uma VNet emparelhada .

Proteger o ambiente de formação

Nesta seção, você aprenderá a proteger o ambiente de treinamento no Azure Machine Learning. Você também aprende como o Aprendizado de Máquina do Azure conclui um trabalho de treinamento para entender como as configurações de rede funcionam juntas.

Para proteger o ambiente de treinamento, use as seguintes etapas:

  1. Crie uma instância de computação do Azure Machine Learning e um cluster de computadores na rede virtual para executar o trabalho de treinamento.

  2. Se seu cluster de computação ou instância de computação usa um endereço IP público, você deve Permitir comunicação de entrada para que os serviços de gerenciamento possam enviar trabalhos para seus recursos de computação.

    Gorjeta

    O cluster de computação e a instância de computação podem ser criados com ou sem um endereço IP público. Se criado com um endereço IP público, você obtém um balanceador de carga com um IP público para aceitar o acesso de entrada do serviço em lote do Azure e do serviço Azure Machine Learning. Você precisará configurar o UDR (Roteamento Definido pelo Usuário) se usar um firewall. Se criado sem um IP público, você obtém um serviço de link privado para aceitar o acesso de entrada do serviço em lote do Azure e do serviço Azure Machine Learning sem um IP público.

  1. Crie uma instância de computação do Azure Machine Learning e um cluster de computadores na rede virtual para executar o trabalho de treinamento.

  2. Se seu cluster de computação ou instância de computação usa um endereço IP público, você deve Permitir comunicação de entrada para que os serviços de gerenciamento possam enviar trabalhos para seus recursos de computação.

    Gorjeta

    O cluster de computação e a instância de computação podem ser criados com ou sem um endereço IP público. Se criado com um endereço IP público, você obtém um balanceador de carga com um IP público para aceitar o acesso de entrada do serviço em lote do Azure e do serviço Azure Machine Learning. Você precisará configurar o UDR (Roteamento Definido pelo Usuário) se usar um firewall. Se criado sem um IP público, você obtém um serviço de link privado para aceitar o acesso de entrada do serviço em lote do Azure e do serviço Azure Machine Learning sem um IP público.

Diagram showing how to secure managed compute clusters and instances.

Para obter instruções detalhadas sobre como concluir essas etapas, consulte Proteger um ambiente de treinamento.

Para obter instruções detalhadas sobre como concluir essas etapas, consulte Proteger um ambiente de treinamento.

Exemplo de apresentação de trabalho de formação

Nesta seção, você aprenderá como o Azure Machine Learning se comunica com segurança entre serviços para enviar um trabalho de treinamento. Este exemplo mostra como todas as suas configurações funcionam juntas para proteger a comunicação.

  1. O cliente carrega scripts de treinamento e dados de treinamento para contas de armazenamento protegidas com um serviço ou ponto de extremidade privado.

  2. O cliente envia um trabalho de treinamento para o espaço de trabalho do Azure Machine Learning por meio do ponto de extremidade privado.

  3. O serviço Lote do Azure recebe o trabalho do espaço de trabalho. Em seguida, ele envia o trabalho de treinamento para o ambiente de computação por meio do balanceador de carga público para o recurso de computação.

  4. O recurso de computação recebe o trabalho e começa o treinamento. O recurso de computação usa informações armazenadas no cofre de chaves para acessar contas de armazenamento para baixar arquivos de treinamento e carregar saídas.

Diagram showing the secure training job submission workflow.

Limitações

  • A Instância de Computação do Azure e os Clusters de Cálculo do Azure têm de estar na mesma VNet, região e subscrição que a área de trabalho e os recursos associados.

Proteger o ambiente de inferência

Você pode habilitar o isolamento de rede para pontos de extremidade online gerenciados para proteger o seguinte tráfego de rede:

  • Solicitações de pontuação de entrada.
  • Comunicação de saída com o espaço de trabalho, o Registro de Contêiner do Azure e o Armazenamento de Blobs do Azure.

Para obter mais informações, consulte Habilitar isolamento de rede para pontos de extremidade online gerenciados.

Nesta seção, você aprenderá as opções disponíveis para proteger um ambiente de inferência ao usar a extensão da CLI do Azure para ML v1 ou o SDK Python do Azure Machine Learning v1. Ao fazer uma implantação v1, recomendamos que você use clusters do Azure Kubernetes Services (AKS) para implantações de produção de alta escala.

Você tem duas opções para clusters AKS em uma rede virtual:

  • Implante ou anexe um cluster AKS padrão à sua rede virtual.
  • Anexe um cluster AKS privado à sua rede virtual.

Os clusters AKS padrão têm um plano de controle com endereços IP públicos. Você pode adicionar um cluster AKS padrão à sua VNet durante a implantação ou anexar um cluster depois que ele for criado.

Os clusters privados do AKS têm um plano de controle, que só pode ser acessado através de IPs privados. Os clusters privados do AKS devem ser anexados após a criação do cluster.

Para obter instruções detalhadas sobre como adicionar clusters padrão e privados, consulte Proteger um ambiente de inferência.

Independentemente do cluster AKS padrão ou do cluster AKS privado usado, se o cluster AKS estiver atrás da VNET, seu espaço de trabalho e seus recursos associados (armazenamento, cofre de chaves e ACR) devem ter pontos de extremidade privados ou pontos de extremidade de serviço na mesma VNET que o cluster AKS.

O diagrama de rede a seguir mostra um espaço de trabalho seguro do Azure Machine Learning com um cluster AKS privado conectado à rede virtual.

Diagram showing an attached private AKS cluster.

Opcional: Ativar acesso público

Você pode proteger o espaço de trabalho atrás de uma VNet usando um ponto de extremidade privado e ainda permitir o acesso pela Internet pública. A configuração inicial é a mesma que proteger o espaço de trabalho e os recursos associados.

Depois de proteger o espaço de trabalho com um ponto de extremidade privado, use as seguintes etapas para permitir que os clientes desenvolvam remotamente usando o SDK ou o estúdio do Azure Machine Learning:

  1. Habilite o acesso público ao espaço de trabalho.
  2. Configure o firewall do Armazenamento do Azure para permitir a comunicação com o endereço IP de clientes que se conectam pela Internet pública.
  1. Habilite o acesso público ao espaço de trabalho.
  2. Configure o firewall do Armazenamento do Azure para permitir a comunicação com o endereço IP de clientes que se conectam pela Internet pública.

Opcional: ativar a funcionalidade de estúdio

Se o armazenamento estiver em uma rede virtual, você deverá usar etapas de configuração adicionais para habilitar a funcionalidade completa no estúdio. Por padrão, os seguintes recursos são desativados:

  • Pré-visualizar dados no estúdio.
  • Visualizar os dados no estruturador.
  • Implementar um modelo no estruturador.
  • Submeter uma experimentação de AutoML.
  • Iniciar um projeto de etiquetagem.

Para habilitar a funcionalidade completa do estúdio, consulte Usar o estúdio do Azure Machine Learning em uma rede virtual.

Limitações

A rotulagem de dados assistida por ML não suporta uma conta de armazenamento padrão atrás de uma rede virtual. Em vez disso, use uma conta de armazenamento diferente do padrão para rotulagem de dados assistida por ML.

Gorjeta

Desde que não seja a conta de armazenamento padrão, a conta usada pela rotulagem de dados pode ser protegida atrás da rede virtual.

Configurar as definições da firewall

Configure seu firewall para controlar o tráfego entre os recursos do espaço de trabalho do Azure Machine Learning e a Internet pública. Embora recomendemos o Firewall do Azure, você pode usar outros produtos de firewall.

Para obter mais informações sobre configurações de firewall, consulte Usar espaço de trabalho atrás de um firewall.

DNS Personalizado

Se você precisar usar uma solução DNS personalizada para sua rede virtual, deverá adicionar registros de host para seu espaço de trabalho.

Para obter mais informações sobre os nomes de domínio e endereços IP necessários, consulte como usar um espaço de trabalho com um servidor DNS personalizado.

Microsoft Sentinel

O Microsoft Sentinel é uma solução de segurança que pode ser integrada ao Azure Machine Learning. Por exemplo, usando blocos de anotações Jupyter fornecidos por meio do Azure Machine Learning. Para obter mais informações, consulte Usar blocos de anotações Jupyter para caçar ameaças à segurança.

Acesso público

O Microsoft Sentinel pode criar automaticamente um espaço de trabalho para você se você estiver de acordo com um ponto de extremidade público. Nessa configuração, os analistas do centro de operações de segurança (SOC) e os administradores de sistema se conectam aos blocos de anotações em seu espaço de trabalho por meio do Sentinel.

Para obter informações sobre esse processo, consulte Criar um espaço de trabalho do Azure Machine Learning a partir do Microsoft Sentinel

Diagram showing Microsoft Sentinel public connection.

Ponto final privado

Se quiser proteger seu espaço de trabalho e recursos associados em uma rede virtual, você deve criar o espaço de trabalho do Azure Machine Learning primeiro. Você também deve criar uma 'caixa de salto' de máquina virtual na mesma VNet que seu espaço de trabalho e habilitar a conectividade do Azure Bastion com ela. Semelhante à configuração pública, os analistas e administradores de SOC podem se conectar usando o Microsoft Sentinel, mas algumas operações devem ser executadas usando o Azure Bastion para se conectar à VM.

Para obter mais informações sobre essa configuração, consulte Criar um espaço de trabalho do Azure Machine Learning a partir do Microsoft Sentinel

Daigram showing Microsoft Sentinel connection through a VNet.

Próximos passos

Este artigo faz parte de uma série sobre como proteger um fluxo de trabalho do Azure Machine Learning. Veja os outros artigos desta série: