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.

  1. 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.

  2. 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.

  3. 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.

  1. 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.
  2. 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.

A seguir