Configurar a aceitação dos escopos de autenticação no registo do Microsoft Entra

A autenticação Microsoft Entra com o Azure Container Registry (ACR) segue um processo de duas etapas. Primeiro, os utilizadores autenticam-se com o Microsoft Entra ID para obter um token de autenticação com um âmbito específico de audiência de autenticação (por exemplo, az login). De seguida, os utilizadores autenticam-se com o registo usando esse token de autenticação Microsoft Entra (por exemplo, az acr login). Por defeito, na segunda etapa durante a autenticação do registo, os registos aceitam tanto a autenticação Microsoft Entra com âmbito ARM (acesso amplo Azure Resource Manager) como a autenticação Microsoft Entra com âmbito ACR (acesso específico do registo restrito). Para maior segurança, pode configurar o seu registo para aceitar apenas autenticação Microsoft Entra com âmbito ACR.

Observação

Alguns serviços e integrações Azure podem não funcionar quando o seu registo está configurado para aceitar apenas autenticação Microsoft Entra com âmbito ACR. Teste a compatibilidade em ambientes não produtivos antes de aplicar esta configuração em produção.

Este artigo mostra-lhe como configurar um registo de contentores para autenticação Microsoft Entra com âmbito ACR, utilizando o CLI do Azure ou o portal Azure.

Pré-requisitos

Compreensão dos âmbitos de autenticação do Microsoft Entra para ACR

Esta secção explica o fluxo de autenticação de dois saltos, a diferença entre os escopos de autenticação e como a configuração do registo controla o acesso.

Fluxo de autenticação de duas etapas

A autenticação com ACR envolve dois passos distintos que se aplicam a utilizadores de CLI Azure, serviços Azure e código programático usando Kits de Desenvolvimento de Software (SDKs):

  1. Primeiro salto - Autenticar com o Microsoft Entra ID: Executar az login para autenticar com o Microsoft Entra ID e obter um token de autenticação do Microsoft Entra ID. Este token contém um âmbito de público-alvo que determina a que recursos do Azure pode aceder.

    • Por defeito, az login recebe um token de autenticação Microsoft Entra com âmbito ARM (acesso amplo ao Azure Resource Manager).
    • Ao usar az login --scope https://containerregistry.azure.net/.default, obtém-se um token de autenticação Microsoft Entra com abrangência ACR (acesso restrito ao registo específico).
  2. Segundo salto - Autenticar com o serviço ACR: Executar az acr login para autenticar com o serviço ACR usando o token de autenticação Microsoft Entra a partir do primeiro salto. Neste ponto, a configuração do registo determina se aceita ou rejeita a sua tentativa de autenticação com base no âmbito do seu token de autenticação Microsoft Entra.

Tipos de escopo de autenticação para Microsoft Entra

Autenticação Microsoft Entra com escopo ARM

  • Fornece acesso amplo ao Azure Resource Manager (ARM), o plano de controlo para gerir todos os recursos Azure.
  • Este tipo de mira é o padrão quando se executa az login sem outros parâmetros.
  • Os tokens de autenticação Microsoft Entra com âmbito ARM são excessivamente permissivos para operações de registo de contentores, pois concedem acesso para além do necessário para a autenticação do registo.

Autenticação Microsoft Entra com âmbito ACR

  • Fornece acesso estreito e específico ao registo, limitado apenas a operações ACR.
  • Requer especificar --scope https://containerregistry.azure.net/.default explicitamente durante az login.
  • Segue o princípio do privilégio mínimo concedendo apenas as permissões necessárias para operações de registo de contentores.

Opções de configuração do registo

A configuração do seu registo, controlada pela azureADAuthenticationAsArmPolicy propriedade, determina o que acontece durante o segundo salto de autenticação (az acr login):

  • Quando ativado (por defeito): O registo aceita tanto autenticação do Microsoft Entra com âmbito ARM como ACR.
  • Quando desativado (recomendado): O registo aceita apenas autenticação Microsoft Entra com âmbito ACR e rejeita autenticação com âmbito ARM.

Importante

Ao utilizar Aplicações Web com Azure Container Registry (ACR), as pulls de imagem baseiam-se em credenciais com âmbito ARM. Desativar a autenticação ARM no registo causará falhas na consulta de imagens.

Porque a ACR recomenda apenas autenticação com âmbito ACR

Configurar o registo do sistema para aceitar apenas autenticação Microsoft Entra com âmbito limitado ao ACR oferece vários benefícios:

  • Segurança reforçada: Limita a autenticação a tokens de autenticação Microsoft Entra de âmbito restrito, reduzindo a superfície de ataque.
  • Acesso com privilégio mínimo: Garante que os tokens de autenticação Microsoft Entra usados para autenticação do registo têm apenas as permissões necessárias para operações no registo de contentores.
  • Alinhamento de conformidade: Ajuda a cumprir requisitos de segurança e conformidade que exigem padrões mínimos de acesso a privilégios.
  • Boas práticas: Alinha-se com as melhores práticas de segurança do Azure para gestão de identidade e acessos.

Configurar o registro para autenticação com escopo ACR no Microsoft Entra - CLI do Azure

Pode configurar o seu registo para controlar quais os escopos de autenticação Microsoft Entra aceites durante o segundo salto de autenticação. A azureADAuthenticationAsArmPolicy propriedade controla esta configuração.

Requer CLI do Azure versão 2.40.0 ou posterior. Para encontrar a sua versão, execute az --version.

Verifique a configuração atual do registo

Execute o seguinte comando para ver a configuração atual do seu registo:

az acr config authentication-as-arm show -r <registry>

O valor de estado mostra a configuração atual:

  • ativado (por defeito): O Registo aceita tanto autenticação Microsoft Entra com escopo ARM como com escopo ACR.
  • desativado (recomendado): O registro aceita apenas a autenticação do Microsoft Entra no âmbito do ACR.

Atualizar configuração do registo

Para configurar o seu registo para aceitar apenas a autenticação Microsoft Entra no âmbito do ACR, defina o estado para disabled:

az acr config authentication-as-arm update -r <registry> --status disabled

Para reverter à configuração padrão que aceita autenticação Microsoft Entra com âmbito ARM e ACR:

az acr config authentication-as-arm update -r <registry> --status enabled

Autenticar usando autenticação de âmbito ACR do Microsoft Entra

Esta secção mostra como realizar o fluxo de autenticação em dois passos utilizando a autenticação Microsoft Entra com âmbito em ACR. Este método de autenticação funciona com ambas as configurações do registo, mas é obrigatório quando o seu registo está configurado para aceitar apenas autenticação Microsoft Entra com âmbito ACR.

Primeiro passo: Obter token de autenticação Microsoft Entra com escopo ACR

Para obter um token de autenticação Microsoft Entra com âmbito ACR, especifique o --scope parâmetro ao executar az login:

az login --scope https://containerregistry.azure.net/.default

Este comando autentica-o usando o ID Microsoft Entra e recebe um token de autenticação Microsoft Entra com escopo específico do ACR. O token de autenticação é armazenado na sua cache local.

Observação

Para obter um token de autenticação Microsoft Entra destinado ao serviço ACR, deve especificar https://containerregistry.azure.net/.default. Não podes especificar https://registryname.azurecr.io/ como âmbito, porque o Microsoft Entra ID e o ACR não suportam audiências de autenticação do Microsoft Entra específicas do registo.

Segundo salto: Fazer autenticação com o registro

Depois de obter o token de autenticação Microsoft Entra com âmbito ACR no primeiro salto, autentique com o seu registo:

az acr login -n <registry>

Durante este segundo salto, o registo valida o seu token de autenticação Microsoft Entra. Se configurar o seu registo para aceitar apenas autenticação com âmbito ACR, ele rejeita tokens com âmbito ARM e só aceita o token de autenticação Microsoft Entra com âmbito ACR que recebeu no primeiro salto.

Pode usar o token de autenticação Microsoft Entra, com âmbito ACR, para autenticar com todos os registos ACR a que tem permissões de acesso.

Configurar registo para autenticação com âmbito ACR da Microsoft Entra - portal do Azure

Pode usar o Azure Policy para configurar os seus registos para aceitarem apenas autenticação Microsoft Entra com âmbito ACR. Atribuir uma política incorporada configura automaticamente a propriedade do registo para registos atuais e futuros dentro do âmbito da política. Pode aplicar a política tanto ao nível do grupo de recursos como ao nível da subscrição.

O Azure Container Registry fornece duas definições de políticas incorporadas para configurar a autenticação Microsoft Entra com âmbito ACR:

  • Container registries should have ARM audience token authentication disabled. - Esta política reporta e bloqueia recursos não conformes, podendo atualizar automaticamente os registos não conformes para a configuração recomendada.
  • Configure container registries to disable ARM audience token authentication. - Esta política oferece capacidades de remediação e atualiza os registos não conformes para aceitarem apenas autenticação com âmbito ACR.

Para mais definições de políticas, consulte definições de políticas incorporadas do Azure Container Registry.

Atribuir uma definição de política incorporada

Para configurar os seus registos para aceitarem apenas autenticação Microsoft Entra com âmbito ACR, utilizando a Azure Policy:

  1. Inicie sessão no portal do Azure.

  2. Vai ao grupo de recursos que contém o teu Azure Container Registry.

  3. No menu de serviço, em Definições, selecione Políticas.

  4. Na página de Política , em Autoria, selecione Atribuições e selecione Atribuir política.

  5. Na aba Atribuir Política, use filtros para pesquisar e encontrar o Âmbito, Definição de Política e Nome da Atribuição.

    Captura de ecrã do separador Atribuir política.

  6. Selecione Âmbito para filtrar e procurar a Subscrição e o Grupo de Recursos e selecione Selecionar.

  7. Selecione definição de política para filtrar e procure as definições de políticas incorporadas que configuram a autenticação com âmbito ACR.

    Captura de ecrã de definições de política incorporadas.

  8. Use filtros para selecionar e confirmar Escopo, Definição de política e Nome da atribuição.

  9. Use os filtros para limitar os estados de conformidade ou para pesquisar políticas.

  10. Confirme suas configurações e defina a aplicação da política como habilitada. Esta configuração garante que a política configura os registos dentro do âmbito para aceitarem apenas autenticação Microsoft Entra com âmbito ACR.

  11. Selecione Revisão+Criar.

Próximos passos