Permitir que os serviços confiáveis acessem com segurança um registro de contêiner restrito à rede
Registro de Contêiner do Azure pode permitir que os serviços confiáveis do Azure selecionem para acessar um registro configurado com regras de acesso à rede. Quando serviços confiáveis são permitidos, uma instância de serviço confiável pode ignorar com segurança as regras de rede do Registro e executar operações como imagens pull ou push. Este artigo explica como habilitar e usar serviços confiáveis com um registro de contêiner do Azure restrito à rede.
Use o Azure Cloud Shell ou uma instalação local da CLI do Azure para executar os exemplos de comando neste arquivo. Para usá-lo localmente, é necessária a versão 2.18 ou posterior. Execute az --version
para encontrar a versão. Se você precisa instalar ou atualizar, consulte Instalar a CLI do Azure.
Limitações
- Alguns cenários de acesso ao Registro com serviços confiáveis exigem uma identidade gerenciada para recursos do Azure. A não ser que você tenha observado que há suporte para uma identidade gerenciada atribuída pelo usuário, somente uma identidade atribuída pelo sistema poderá ser usada.
- Permitir serviços confiáveis não se aplica a um registro de contêiner configurado com um ponto de extremidade de serviço. O recurso afeta apenas os registros que são restritos com um ponto de extremidade privado ou que têm regras de acesso de IP públicos aplicadas.
Sobre os serviços confiáveis
Registro de Contêiner do Azure tem um modelo de segurança em camadas, dando suporte a várias configurações de rede que restringem o acesso a um registro, incluindo:
- Ponto de extremidade privado com o link privado do Azure. Quando configurado, o ponto de extremidade privado de um Registro é acessível somente aos recursos dentro da rede virtual, usando endereços IP privados.
- Regras de firewall do Registro, que permitem o acesso ao ponto de extremidade público do Registro somente de endereços IP públicos específicos ou intervalos de endereços. Você também pode configurar o firewall para bloquear todo o acesso por meio do ponto de extremidade público ao usar pontos de extremidades privados.
Quando implantado em uma rede virtual ou configurado com regras de firewall, um registro nega acesso a usuários ou serviços de fora dessas fontes.
Vários serviços multi-locatário do Azure operam de redes que não podem ser incluídas nessas configurações de rede do Registro, impedindo que eles executem operações como efetuar pull ou enviar imagens por push para o Registro. Ao designar determinadas instâncias de serviço como "confiáveis", um proprietário do registro pode permitir a seleção de recursos do Azure para ignorar com segurança as configurações de rede do registro para executar operações de registro.
Serviços confiáveis
As instâncias dos serviços a seguir podem acessar um registro de contêiner de rede restrita se a configuração permitir serviços confiáveis do registro estiver habilitada (o padrão). Mais serviços serão adicionados ao longo do tempo.
Quando indicado, o acesso pelo serviço confiável requer configuração adicional de uma identidade gerenciada em uma instância de serviço, atribuição de uma função RBAC e autenticação com o registro. Para ver as etapas de exemplo, consulte Fluxo de trabalho de serviços confiáveis, mais adiante neste artigo.
Serviço confiável | Cenários de uso compatíveis | Configurar a identidade gerenciada com a função RBAC |
---|---|---|
Instâncias de Contêiner do Azure | Implantar nas Instâncias de Contêiner do Azure por meio do Registro de Contêiner do Azure usando uma identidade gerenciada | Sim, uma identidade atribuída tanto pelo sistema quanto pelo usuário |
Microsoft Defender para Nuvem | Verificação de vulnerabilidade através do Microsoft Defender para registros de contêiner | Não |
Tarefas do ACR | Acessar o registro pai ou um registro diferente de uma tarefa ACR | Sim |
Machine Learning | Implantar ou treinar um modelo em um espaço de trabalho Machine Learning usando uma imagem de contêiner personalizada do Docker | Sim |
Registro de Contêiner do Azure | Importar imagens de ou para um registro de contêiner do Azure restrito à rede | Não |
Observação
No momento, habilitar a configuração “Permitir serviços confiáveis” não se aplica ao Serviço de Aplicativo.
Permitir serviços confiáveis - CLI
Por padrão, a configuração permitir serviços confiáveis está habilitada em um novo registro de contêiner do Azure. Desabilite ou habilite a configuração executando o comando az acr update.
Para desabilitar:
az acr update --name myregistry --allow-trusted-services false
Para habilitar a configuração em um registro existente ou em um registro em que ele já está desabilitado:
az acr update --name myregistry --allow-trusted-services true
Permitir serviços confiáveis - Portal
Por padrão, a configuração permitir serviços confiáveis está habilitada em um novo registro de contêiner do Azure.
Para desabilitar ou reabilitar a configuração no Portal:
- No portal, navegue até o registro de contêiner.
- Em Configurações, selecione Rede.
- Em Permitir acesso à rede pública, selecione Redes selecionadas ou Desabilitada.
- Realize um dos seguintes procedimentos:
- Para desabilitar o acesso por serviços confiáveis, em Exceção de firewall, desmarque Permitir que os serviços confiáveis da Microsoft acessem este registro de contêiner.
- Para permitir o acesso por serviços confiáveis, em Exceção de firewall, marque Permitir que os serviços confiáveis da Microsoft acessem este registro de contêiner.
- Selecione Salvar.
Fluxo de trabalho de serviços confiáveis
Aqui está um fluxo de trabalho típico para permitir que uma instância de um serviço confiável acesse um registro de contêiner de rede restrita. Esse fluxo de trabalho é necessário quando a identidade gerenciada de uma instância de serviço é usada para ignorar as regras de rede do registro.
- Habilite uma identidade gerenciada em uma instância de um dos serviços confiáveis para o Registro de Contêiner do Azure.
- Atribua à identidade uma função do Azure ao registro. Por exemplo, atribua a função ACRPull para pull de imagens de contêiner.
- No registro restrito à rede, configure a configuração para permitir o acesso por serviços confiáveis.
- Use as credenciais da identidade para autenticar com o registro restrito à rede.
- Efetuar pull de imagens do Registro ou executar outras operações permitidas pela função.
Exemplo: Tarefas do ACR
O exemplo a seguir demonstra o uso Tarefas do ACR como um serviço confiável. Para obter detalhes, confira Autenticação entre Registros em uma tarefa do ACR usando uma identidade gerenciada do Azure.
- Criar ou atualizar um registro de contêiner do Azure.
Criar uma tarefa de ACR.
- Habilita uma identidade gerenciada atribuída pelo sistema ao criar a tarefa.
- Desabilite o modo de autenticação padrão (
--auth-mode None
) da tarefa.
- Atribua à identidade da tarefa uma função do Azure para acessar o registro. Por exemplo, atribua a função AcrPush, que tem permissões para efetuar pull e push de imagens.
- Adicione credenciais de identidade gerenciada para o registro à tarefa.
- Para confirmar que a tarefa ignora as restrições de rede, desabilite o acesso público no registro.
- Execute a tarefa. Se o registro e a tarefa estão configurados corretamente, a tarefa é executado com êxito, porque o registro permite o acesso.
Para testar a desabilitação do acesso por serviços confiáveis:
- Desabilite a configuração para permitir o acesso por serviços confiáveis.
- Execute a tarefa novamente. Nesse caso, a tarefa de executar falha, porque o registro não permite mais o acesso pela tarefa.
Próximas etapas
- Para restringir o acesso a um registro usando um ponto de extremidade privado em uma rede virtual, confira Configurar o Link Privado do Azure para um registro de contêiner do Azure.
- Para configurar regras de firewall do Registro, consulte Configurar regras de rede de IP pública.