Melhores práticas de segurança e conformidade do lote

Este artigo fornece orientações e melhores práticas para aumentar a segurança ao usar o Lote do Azure.

Por padrão, as contas do Lote do Azure têm um ponto de extremidade público e podem ser acessadas publicamente. Quando um pool do Lote do Azure é criado, ele é provisionado em uma sub-rede especificada de uma rede virtual do Azure. As máquinas virtuais no pool do Lote são acessadas por meio de endereços IP públicos criados pelo Lote. Os nós de computação em um pool podem se comunicar entre si quando necessário, como para executar tarefas de várias instâncias, mas os nós em um pool não conseguem se comunicar com máquinas virtuais fora do pool.

Diagram showing a typical Batch environment.

Muitos recursos estão disponíveis para ajudá-lo a criar uma implantação mais segura do Lote do Azure. É possível restringir o acesso a nós e reduzir a capacidade de descoberta dos nós por meio da Internet, provisionando o pool sem endereços IP públicos. Os nós de computação podem se comunicar de forma segura com outras máquinas virtuais, ou com uma rede local, provisionando o pool em uma sub-rede de uma rede virtual do Azure. Também é possível habilitar o acesso privado de redes virtuais de um serviço da plataforma Link Privado do Azure.

Diagram showing a more secure Batch environment.

Configuração do pools

Muitos recursos de segurança só estão disponíveis para pools configurados usando a Configuração de Máquina Virtual, e não para pools com configuração dos Serviços de Nuvem. É recomendável usar pools de configuração de máquina virtual que utilizam Conjuntos de Dimensionamento de Máquinas Virtuais do Azure, sempre que possível.

Os pools também podem ser configurados em um dos dois modos de comunicação de nó, clássicos ou simplificados. No modelo de comunicação de nó clássico, o serviço do Lote inicia a comunicação com os nós de computação e os nós de computação também exigem comunicação com o Armazenamento do Azure. No modo de comunicação de nó simplificado, os nós de computação iniciam a comunicação com o serviço do Lote. Devido ao escopo reduzido das conexões de entrada/saída necessárias e à não necessidade de acesso de saída do Armazenamento do Azure para a operação de linha de base, a recomendação é usar o modelo de comunicação de nó simplificado. O modelo de comunicação do nó clássico será desativado em 31 de março de 2026.

Autenticação da conta do Lote

O acesso à conta do Lote dá suporte a dois métodos de autenticação: Chave Compartilhada e Microsoft Entra ID.

É altamente recomendável usar o Microsoft Entra ID para autenticação da conta do Lote. Alguns recursos do Lote exigem esse método de autenticação, incluindo muitos dos recursos relacionados à segurança discutidos aqui. O mecanismo de autenticação da API de serviço para uma conta do Lote pode ser restrito somente ao Microsoft Entra ID usando a propriedade allowedAuthenticationModes. Quando essa propriedade for definida, as chamadas à API que usam a autenticação de Chave Compartilhada serão rejeitadas.

Modo de alocação de pool da conta do Lote

Ao criar uma conta do Lote, você pode escolher entre dois modos de alocação de pool:

  • Serviço do Lote: a opção padrão, em que os recursos de serviço de nuvem subjacente ou Conjunto de Dimensionamento de Máquinas Virtuais usados para alocar e gerenciar nós de pool são criados em assinaturas de propriedade do Lote e não são visíveis diretamente no portal do Azure. Somente os pools e os nós do Lote são visíveis.
  • Assinatura do usuário: os recursos subjacentes do serviço de nuvem ou do conjunto de dimensionamento de máquinas virtuais são criados na mesma assinatura que a conta do Lote. Portanto, esses recursos são visíveis na assinatura, além dos recursos correspondentes do Lote.

Com o modo de assinatura do usuário, as VMs do Lote e outros recursos são criados diretamente em sua assinatura, quando um pool é criado. O modo de assinatura do usuário será necessário se desejar criar pools do Lote usando o Instâncias de Máquinas Virtuais Reservadas do Azure, usar o Azure Policy em recursos do conjunto de dimensionamento de máquinas virtuais e/ou gerenciar a cota principal na assinatura (compartilhada entre todas as contas do Lote na assinatura). Para criar uma conta do Lote no modo de assinatura do usuário, você também deverá registrar sua assinatura com o Lote do Azure e associar a conta com um Azure Key Vault.

Restringir acesso aos pontos de extremidade da rede

Pontos de extremidade da rede do Azure

Por padrão, os pontos de extremidade com endereços IP públicos são usados para se comunicar com contas do Lote, pools do Lote e nós do pool.

API da conta do Lote

Quando uma conta do Lote é criada, é criado um ponto de extremidade público que é usado para invocar a maioria das operações para a conta usando uma API REST. O ponto de extremidade da conta tem uma URL base usando o formato https://{account-name}.{region-id}.batch.azure.com. O acesso à conta do Lote é protegido, com a comunicação com o ponto de extremidade da conta sendo criptografada usando HTTPS e cada solicitação autenticada usando a chave compartilhada ou a autenticação do Microsoft Entra.

Azure Resource Manager

Além de operações específicas de uma conta do Lote, as operações de gerenciamento se aplicam a contas individuais e múltiplas do Lote. Essas operações de gerenciamento são acessadas por meio do Azure Resource Manager.

As operações de gerenciamento de Lote por meio do Azure Resource Manager são criptografadas usando HTTPS e cada solicitação é autenticada usando a autenticação do Microsoft Entra.

Nós de computação do pool do Lote

O serviço do Lote se comunica com um agente de nó do Lote que é executado em cada nó no pool. Por exemplo, o serviço instrui o agente do nó a executar uma tarefa, interromper uma tarefa ou obter os arquivos para uma tarefa. A comunicação com o agente de nó é habilitada por um ou mais balanceadores de carga (o número exato depende do número de nós no pool em questão). O balanceador de carga encaminha a comunicação para o nó desejado, sendo que cada nó é endereçado por um número de porta exclusivo. Por padrão, balanceadores de carga têm endereços IP públicos associados a eles. Também é possível acessar remotamente os nós do pool por meio de RDP ou SSH (esse acesso está habilitado por padrão, com comunicação por meio de balanceadores de carga).

Sistema operacional do nó de computação do Lote

O Lote oferece suporte a sistemas operacionais Windows e Linux. O Lote oferece suporte ao Linux com um agente de nó alinhado para um subconjunto de distribuições do sistema operacional Linux. É recomendável que o sistema operacional fique atualizado com os patches mais recentes fornecidos pelo distribuidor do sistema operacional.

O Lote oferece suporte para imagens e agentes de nó eliminados ao longo do tempo, normalmente alinhado com linhas do tempo de suporte do editor. É recomendável evitar o uso de imagens com datas de fim de vida (EOL) iminentes ou imagens que já passaram da data de EOL. É sua responsabilidade atualizar periodicamente sua exibição das datas de EOL pertinentes aos seus pools e migrar suas cargas de trabalho antes que a data de EOL ocorra. Se você estiver usando uma imagem personalizada com um agente de nó especificado, siga as datas de fim da vida útil de suporte ao Lote para a imagem para a qual sua imagem personalizada é derivada ou alinhada. Uma imagem sem uma data batchSupportEndOfLife especificada indica que essa data ainda não foi determinada pelo serviço do Lote. A ausência de uma data não indica que a respectiva imagem terá suporte indefinidamente. Uma data de EOL pode ser adicionada ou atualizada no futuro a qualquer momento. As datas de EOL podem ser descobertas por meio da ListSupportedImages API, do PowerShell ou da CLI do Azure.

Segurança de Camada de Transporte (TLS) do sistema operacional Windows

O agente de nó do Lote não modifica os padrões de nível do sistema operacional para versões SSL/TLS ou ordenação de pacote de criptografia. No Windows, as versões SSL/TLS e a ordem do pacote de criptografia são controladas no nível do sistema operacional e, portanto, o agente do nó do Lote adota as configurações definidas pela imagem usada por cada nó de computação. Embora o agente do nó do Lote tente utilizar as configurações mais seguras disponíveis quando possível, ele ainda pode ser limitado pelas configurações de nível do sistema operacional. Recomendamos examinar os padrões de nível do sistema operacional e defina-os adequadamente para o modo mais seguro que é passível de suporte para seu fluxo de trabalho e requisitos organizacionais. Para obter mais informações, acesse Gerenciar TLS para imposição de ordem do pacote de criptografia e configurações de registro TLS para controle de versão SSL/TLS para SSP Schannel. Observe que algumas alterações de configuração precisar de uma reinicialização para entrar em vigor. É recomendável utilizar um sistema operacional mais recente com padrões de segurança modernos ou uma imagem personalizada com configurações modificadas em vez da aplicação dessas configurações com uma tarefa inicial do Lote.

Restringir o acesso aos pontos de extremidade do Lote

Vários recursos estão disponíveis para limitar o acesso aos vários pontos de extremidade do Lote, especialmente quando a solução usa uma rede virtual.

Usar pontos de extremidade privados

O Link Privado do Azure permite acesso aos serviços PaaS do Azure e aos serviços de parceiros/de propriedade de clientes hospedados no Azure em um ponto de extremidade privado na sua rede virtual. É possível usar o Link Privado para restringir o acesso a uma conta do Lote de dentro da rede virtual ou por meio de qualquer rede virtual emparelhada. Os recursos mapeados para o Link Privado também podem ser acessados localmente no emparelhamento privado por meio de VPN ou do Azure ExpressRoute.

Para usar pontos de extremidade privados, uma conta do lote precisa ser configurada adequadamente quando criada; a configuração de acesso à rede pública deve ser desabilitada. Depois de criados, os pontos de extremidade privados podem ser criados e associados à conta do Lote. Para obter mais informações, consulte Usar pontos de extremidade privados com contas do Lote do Azure.

Criar pools em redes virtuais

Os nós de computação de um pool do Lote podem se comunicar entre si a fim de executar tarefas de várias instâncias sem a necessidade de uma rede virtual (VNET). No entanto, por padrão, os nós em um pool não conseguem se comunicar com máquinas virtuais que estejam fora do pool em uma rede virtual e tenham endereços IP privados, como servidores de licença ou servidores de arquivos.

Para permitir que nós de computação se comuniquem de forma segura com outras máquinas virtuais, ou com uma rede local, é possível configurar um pool em uma sub-rede de uma VNET do Azure.

Quando os pools têm pontos de extremidade de IP público, a sub-rede deve permitir a comunicação de entrada do serviço do Lote para conseguir agendar tarefas e realizar outras operações nos nós de computação e a comunicação de saída para se comunicar com o Armazenamento do Azure ou com outros recursos, conforme a necessidade da carga de trabalho. Para pools na configuração da Máquina Virtual, o Lote adiciona grupos de segurança de rede (NSGs) no nível das interfaces de rede anexadas ao nós de computação. Esses NSGs têm regras para habilitar:

  • Tráfego TCP de entrada dos endereços IP do serviço do Lote
  • Tráfego TCP de entrada para acesso remoto
  • Tráfego de saída em qualquer porta para a rede virtual (pode ser alterado por regras de NSG no nível de sub-rede)
  • Tráfego de saída em qualquer porta para a Internet (pode ser alterado por regras de NSG no nível de sub-rede)

Não é necessário especificar NSGs no nível da sub-rede da rede virtual, pois o Lote configura os próprios NSGs. Se tiver um NSG associado à sub-rede na qual os nós de computação do Lote estão implantados ou se quiser aplicar regras de NSG personalizadas para substituir os padrões aplicados, será necessário configurar esse NSG com, pelo menos, as regras de segurança de entrada e saída, conforme mostrado nas tabelas a seguir.

Para obter mais informações, consulte Criar um pool de Lote do Azure em uma rede virtual.

Criar pools com endereços IP públicos estáticos

Por padrão, os endereços IP públicos associados aos pools são dinâmicos; eles são criados quando um pool é criado e os endereços IP podem ser adicionados ou removidos quando um pool é redimensionado. Quando os aplicativos de tarefa em execução em nós de pool precisam acessar serviços externos, o acesso a esses serviços pode precisar ser restrito a IPs específicos. Nesse caso, ter endereços IP dinâmicos não será gerenciável.

É possível criar recursos de endereço IP público estático na mesma assinatura que a conta do Lote antes da criação do pool. Em seguida, será possível especificar esses endereços ao criar o pool.

Para obter mais informações, consulte Criar um pool do Lote do Azure com endereços IP públicos especificados.

Criar pools sem endereços IP públicos

Por padrão, todos os nós de computação em um pool de configuração de máquina virtual do Lote do Azure recebem um ou mais endereços IP públicos. Esses pontos de extremidade são usados pelo serviço do Lote para agendar tarefas e para comunicação com nós de computação, incluindo acesso de saída à Internet.

Para restringir o acesso a esses nós e reduzir a capacidade de descoberta desses nós por meio da Internet, você pode provisionar o pool sem endereços IP públicos.

Para saber mais, confira Criar um pool sem endereços IP públicos.

Limitar o acesso remoto a nós de pool

Por padrão, o lote permite um usuário de nó com conectividade de rede para conectar-se externamente a um nó de computação em um pool do Lote usando RDP ou SSH.

Para limitar o acesso remoto a nós, use um dos seguintes métodos:

  • Configure o PoolEndpointConfiguration para negar acesso. O grupo de segurança de rede (NSG) apropriado será associado ao pool.
  • Criar um pool sem endereços IP públicos. Por padrão, esses pools não podem ser acessados fora da VNet.
  • Associe um NSG à VNet para negar acesso às portas RDP ou SSH.
  • Não crie nenhum usuário no nó. Sem nenhum usuário de nó, o acesso remoto não será possível.

Criptografar dados

Criptografar dados em trânsito

Toda a comunicação com o ponto de extremidade da conta do Lote (ou via Azure Resource Manager) deve usar HTTPS. É necessário usar https:// nas URLs da conta do Lote especificadas em APIs ao se conectar ao serviço do Lote.

Os clientes que se comunicam com o serviço do Lote devem ser configurados para usar armazenamento local de thread (TLS) 1.2.

Criptografar dados inativos do Lote

Algumas das informações especificadas nas APIs do Lote, como certificados de conta, metadados de trabalho e tarefa e linhas de comando de tarefa, são criptografadas automaticamente quando armazenadas pelo serviço do Lote. Por padrão, esses dados são criptografados usando chaves gerenciadas pela plataforma Lote do Azure exclusivas para cada conta do Lote.

Também é possível criptografar esses dados usando chaves gerenciadas pelo cliente. O Azure Key Vault é usado para gerar e armazenar a chave, com o identificador de chave registrado em sua conta do Lote.

Criptografar discos de nó de computação

Os nós de computação em lote têm dois discos por padrão: um disco do sistema operacional e o SSD temporário local. Arquivos e diretórios gerenciados pelo Lote estão localizados no SSD temporário, que é o local padrão para arquivos como arquivos de saída da tarefa. Os aplicativos de tarefa do Lote podem usar o local padrão no SSD ou no disco do sistema operacional.

Para segurança extra, criptografe esses discos usando um destes recursos de criptografia de disco do Azure:

Acessar com segurança os serviços de nós de computação

Usar as Identidades gerenciadas do pool com as permissões de acesso apropriadas configuradas para a identidade gerenciada atribuída pelo usuário para acessar os serviços do Azure que oferecem suporte à identidade gerenciada, incluindo ao Azure Key Vault. Se você precisar provisionar certificados em nós do Lote, utilize a extensão de VM do Azure Key Vault disponível na Identidade Gerenciada do pool para instalar e gerenciar certificados no pool do Lote. Para saber mais sobre como implantar certificados do Azure Key Vault com a Identidade Gerenciada em pools do Lote, consulte Habilitar a rotação automática de certificados em um pool do Lote.

Governança e conformidade

Conformidade

Para ajudar os clientes a cumprir suas próprias obrigações de conformidade em setores e mercados regulamentados em todo o mundo, o Azure mantém um grande portfólio de ofertas de conformidade.

Essas ofertas de conformidade são baseadas em vários tipos de garantia, incluindo certificações formais, atestados, validações, autorizações e avaliações produzidas por empresas de auditoria independentes, bem como alterações contratuais, autoavaliações e documentos de orientação para clientes produzidos pela Microsoft. Revise a visão geral abrangente das ofertas de conformidade para determinar quais podem ser relevantes para suas soluções do Lote.

Azure Policy

O Azure Policy ajuda a impor padrões organizacionais e a avaliar a conformidade em escala. Casos de uso comuns do Azure Policy incluem implementar a governança para consistência de recursos, conformidade regulatória, segurança, custo e gerenciamento.

Dependendo do modo de alocação do pool e dos recursos aos quais uma política deve ser aplicada, use o Azure Policy com o Lote de uma das seguintes maneiras:

  • Diretamente, usando o recurso Microsoft.Batch/batchAccounts. É possível usar um subconjunto das propriedades de uma conta do Lote. Por exemplo, sua política pode incluir regiões válidas da conta do Lote, modo de alocação de pools permitido e se uma rede pública está habilitada para contas.
  • Indiretamente, usando o recurso Microsoft.Compute/virtualMachineScaleSets. Contas do Lote com o modo de alocação do pool de assinatura do usuário podem ter a política definida nos recursos do conjunto de dimensionamento de máquinas virtuais que são criadas na assinatura da conta do Lote. Por exemplo, tamanhos permitidos de VMs e garantir que certas extensões sejam executadas em cada nó de pool.

Próximas etapas