Criar um aplicativo do Azure Active Directory
Nesta seção, crie um aplicativo do Azure Active Directory (Azure AD) e objetos principais de serviço. O GKE no Azure usa esses objetos para armazenar informações de configuração no Azure.
Para criar o aplicativo do Azure AD, execute o seguinte comando:
az ad app create --display-name APPLICATION_NAME
Substitua
APPLICATION_NAME
por um nome para o aplicativo, por exemplo,anthos-clusters
.Para salvar o ID do aplicativo em uma variável de ambiente para uso posterior, execute o seguinte comando:
APPLICATION_ID=$(az ad app list --all \ --query "[?displayName=='APPLICATION_NAME'].appId" \ --output tsv)
Substitua
APPLICATION_NAME
pelo nome do aplicativo.Para criar um principal de serviço para o aplicativo, execute o seguinte comando:
az ad sp create --id "${APPLICATION_ID}"
Configurar a federação de identidade da carga de trabalho
A federação de identidade da carga de trabalho permite que o GKE no Azure seja autenticado no Azure usando uma conta de serviço do Google. Esse método de autenticação no Azure é mais simples do que o método de autenticação legado do AzureClient, que exige que você gerencie os certificados e faça o upload manual deles no Azure Active Directory (AD).
Para configurar uma credencial de identidade federada no aplicativo Azure AD, execute os comandos a seguir. É possível adicionar até 20 credenciais a cada aplicativo do Azure AD.
Crie um arquivo JSON chamado
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
: o nome da credencial.PROJECT_NUMBER
: o número do projeto do Google Cloud que hospeda o cluster.
Crie uma credencial de identidade federada no aplicativo Azure AD:
az ad app federated-credential create --id "${APPLICATION_ID}" --parameters credential.json
Para mais detalhes, consulte a documentação do Azure Federação de identidade da carga de trabalho do Azure AD com o Google Cloud.
Também é possível provisionar a credencial de identidade federada do Azure usando o Terraform. Para mais detalhes, consulte azuread_application_federated_identity_credential.