Eseguire il pull di immagini da un registro Azure Container a un cluster del servizio Azure Kubernetes in un tenant Microsoft Entra diverso

In alcuni casi, si potrebbe avere il cluster del servizio Azure Kubernetes in un tenant Microsoft Entra e il registro Azure Container in un tenant diverso. Questo articolo illustra i passaggi per abilitare l'autenticazione tra tenant usando le credenziali dell'entità servizio del servizio Azure Kubernetes per eseguire il pull dal registro contenitori.

Nota

Non è possibile collegare il Registro di sistema ed eseguire l'autenticazione usando un'identità gestita del servizio Azure Kubernetes quando il cluster e il registro contenitori si trovano in tenant diversi.

Panoramica dello scenario

Presupposti per l'esecuzione di questo esempio:

  • Il cluster del servizio Azure Kubernetes si trova nel Tenant A e il Registro Azure Container si trova nel Tenant B.
  • Il cluster del servizio Azure Kubernetes viene configurato con l'autenticazione dell'entità servizio nel Tenant A. Altre informazioni su come creare e usare un'entità servizio per i cluster del servizio Azure Kubernetes.

È necessario almeno il ruolo di Collaboratore nella sottoscrizione del cluster del servizio Azure Kubernetes e il ruolo di Proprietario nella sottoscrizione del registro contenitori.

Eseguire la procedura descritta di seguito per:

  • Creare una nuova app multi-tenant (entità servizio) in Tenant A.
  • Effettuare il provisioning dell'app in Tenant B.
  • Configurare l'entità servizio per eseguire il pull dal Registro di sistema in Tenant B
  • Aggiornare il cluster del servizio Azure Kubernetes in Tenant A per effettuare l'autenticazione utilizzando la nuova entità servizio

Istruzioni dettagliate

Passaggio 1: Creare un'applicazione multi-tenant Microsoft Entra

  1. Accedere al portale di Azure in Tenant A.

  2. Cerca e seleziona Microsoft Entra ID.

  3. Sotto la voce Gestisci selezionare Registrazioni app > e Nuova registrazione.

  4. In Tipi di account supportati selezionare Account in qualsiasi directory dell'organizzazione.

  5. In URI di reindirizzamento immettere https://www.microsoft.com.

  6. Selezionare Registra.

  7. Nella pagina Panoramica prendere nota dell'ID applicazione (client). Verrà usato nel passaggio 2 e nel passaggio 4.

    ID applicazione dell'entità servizio

  8. In Certificati e segreti, alla voce Segreti client, selezionare Nuovo segreto client.

  9. Immettere una Descrizione, ad esempio Password e selezionare Aggiungi.

  10. In Segreti client prendere nota del valore del segreto client. È possibile usarlo per aggiornare l'entità servizio del cluster del servizio Azure Kubernetes nel passaggio 4.

    Configurare il segreto client

Passaggio 2: Effettuare il provisioning dell'entità servizio nel tenant del Registro Azure Container (ACR)

  1. Aprire il collegamento seguente usando un account amministratore in Tenant B. Se indicato, inserire l'ID del tenant B e l'ID applicazione (ID client) dell'app multi-tenant.

    https://login.microsoftonline.com/<Tenant B ID>/oauth2/authorize?client_id=<Multitenant application ID>&response_type=code&redirect_uri=<redirect url>
    
  2. Selezionare Acconsenti per conto dell'organizzazione, quindi Accetta.

    Concedere l'accesso al tenant all'applicazione

Passaggio 3: Concedere all'entità servizio l'autorizzazione per eseguire il pull dal Registro di sistema

In Tenant B assegnare il ruolo AcrPull all'entità servizio, con ambito al registro contenitori di destinazione. Per assegnare il ruolo è possibile usare il portale di Azure o altri strumenti. Per procedure di esempio utilizzando l’interfaccia della riga di comando di Azure, vedere Autenticazione al Registro Azure Container con entità servizio.

Assegnare il ruolo acrpull all'app multi-tenant

Passaggio 4: Aggiornare il servizio Azure Kubernetes con il segreto dell'applicazione Microsoft Entra

Usare l'ID applicazione multi-tenant (client) e il segreto client raccolti nel passaggio 1 per aggiornare le credenziali dell'entità servizio del servizio Azure Kubernetes.

L'aggiornamento dell'entità servizio può richiedere alcuni minuti.

Passaggi successivi