Efetuar pull de imagens de um registro de contêiner para um cluster do AKS em um locatário diferente do Microsoft Entra

Em alguns casos, você pode ter seu cluster AKS do Azure em um locatário do Microsoft Entra e seu registro de contêiner do Azure em um locatário diferente. Este artigo descreve as etapas necessárias para habilitar a autenticação entre locatários usando a credencial da entidade de serviço do AKS para pull do registro de contêiner.

Observação

Você não pode anexar o registro e autenticar usando uma identidade gerenciada do AKS quando o cluster e o registro de contêiner estão em locatários diferentes.

Visão geral do cenário

Suposições deste exemplo:

  • O cluster do AKS está no Locatário A e o Registro de Contêiner do Azure está no Locatário B.
  • O cluster do AKS é configurado com a autenticação da entidade de serviço no Locatário A. Saiba mais sobre como criar e usar uma entidade de serviço para o cluster do AKS.

Você precisa ter, no mínimo, a função Colaborador na assinatura do cluster do AKS e a função Proprietário na assinatura do registro de contêiner.

Use as seguintes etapas para:

  • Crie um aplicativo multilocatário (entidade de serviço) no Locatário A.
  • Provisione o aplicativo no Locatário B.
  • Configure a entidade de serviço para pull do registro no Locatário B
  • Atualize o cluster do AKS no Locatário A para se autenticar usando a nova entidade de serviço

Instruções passo a passo

Etapa 1: Criar um aplicativo multilocatário do Microsoft Entra

  1. Entre no portal do Azure no Locatário A.

  2. Pesquise e selecione Microsoft Entra ID.

  3. Em Gerenciar, selecione Registros de aplicativo > + Novo registro.

  4. Em Tipos de contas compatíveis, escolha Contas em qualquer diretório organizacional.

  5. Em URI de Redirecionamento, insira https://www.microsoft.com .

  6. Selecione Registrar.

  7. Na página Visão geral, anote a ID do aplicativo (cliente) . Ela será usada nas Etapas 2 e 4.

    Service principal application ID

  8. Em Certificados e segredos, em Segredos do cliente, escolha + Novo segredo do cliente.

  9. Insira uma Descrição como Senha e selecione Adicionar.

  10. Em Segredos do cliente, anote o valor do segredo do cliente. Use-o para atualizar a entidade de serviço do cluster do AKS na Etapa 4.

    Configure client secret

Etapa 2: Provisionar a entidade de serviço no locatário do ACR

  1. Abra o link a seguir usando uma conta de administrador no Locatário B. Quando indicado, insira a ID do Locatário B e a ID do aplicativo (ID do cliente) do aplicativo multilocatário.

    https://login.microsoftonline.com/<Tenant B ID>/oauth2/authorize?client_id=<Multitenant application ID>&response_type=code&redirect_uri=<redirect url>
    
  2. Selecione Consentir em nome da sua organização e Aceitar.

    Grant tenant access to application

Etapa 3: Conceder permissão à entidade de serviço para pull do registro

No Locatário B, atribua a função AcrPull à entidade de serviço, com escopo para o registro de contêiner de destino. Use o portal do Azure ou outras ferramentas para atribuir a função. Para obter exemplos de etapas que usam a CLI do Azure, confira Autenticação no Registro de Contêiner do Azure com entidades de serviço.

Assign acrpull role to multitenant app

Etapa 4: Atualizar o AKS com o segredo do aplicativo Microsoft Entra

Use a ID do aplicativo multilocatário (cliente) e o segredo do cliente coletados na Etapa 1 para atualizar a credencial da entidade de serviço do AKS.

A atualização da entidade de serviço pode levar vários minutos.

Próximas etapas