Creazione di un'applicazione Azure Active Directory
In questa sezione dovrai creare gli oggetti dell'applicazione e dell'entità servizio di Azure Active Directory (Azure AD). GKE su Azure utilizza questi oggetti per archiviare le informazioni di configurazione su Azure.
Per creare l'applicazione Azure AD, esegui questo comando:
az ad app create --display-name APPLICATION_NAMESostituisci
APPLICATION_NAMEcon un nome per l'applicazione, ad esempioanthos-clusters.Per salvare l'ID dell'applicazione in una variabile di ambiente per un utilizzo successivo, esegui questo comando:
APPLICATION_ID=$(az ad app list --all \ --query "[?displayName=='APPLICATION_NAME'].appId" \ --output tsv)Sostituisci
APPLICATION_NAMEcon il nome dell'applicazione.Per creare un'entità servizio per l'applicazione, esegui questo comando:
az ad sp create --id "${APPLICATION_ID}"
Configurare la federazione delle identità per i workload
La federazione delle identità per i workload consente a GKE su Azure di eseguire l'autenticazione ad Azure utilizzando un account di servizio Google. Questo metodo di autenticazione ad Azure è più semplice del metodo di autenticazione AzureClient legacy, che richiede di gestire i certificati e caricarli manualmente in Azure Active Directory (AD).
Per configurare una credenziale di identità federata nell'applicazione Azure AD, esegui questi comandi. Tieni presente che puoi aggiungere fino a venti credenziali a ogni applicazione Azure AD.
Crea un file JSON denominato
credential.json.{ "name": "CREDENTIAL_NAME", "issuer": "https://accounts.google.com", "subject": "service-PROJECT_NUMBER@gcp-sa-gkemulticloud.iam.gserviceaccount.com", "audiences": ["api://AzureADTokenExchange"], "description": "Allow GKE on Azure to authenticate to the Azure AD application using a Google service account." }CREDENTIAL_NAME: il nome della credenziale.PROJECT_NUMBER: il numero del Google Cloud progetto che ospita il cluster.
Crea una credenziale di identità federata nell'applicazione Azure AD:
az ad app federated-credential create --id "${APPLICATION_ID}" --parameters credential.json
Per maggiori dettagli, consulta la documentazione di Azure Federazione delle identità per i carichi di lavoro di Azure AD con Google Cloud.
Puoi anche eseguire il provisioning della credenziale di identità federata di Azure utilizzando Terraform. Per maggiori dettagli, consulta azuread_application_federated_identity_credential.