Crea una aplicación de Azure Active Directory

En esta sección, crearás una aplicación yde Azure Active Directory (Azure AD) y objetos de principales de servicio. GKE en Azure usa estos objetos para almacenar información de configuración en Azure.

  1. Para crear la aplicación de Azure AD, ejecuta el siguiente comando:

    az ad app create --display-name APPLICATION_NAME
    

    Reemplaza APPLICATION_NAME por un nombre para la aplicación, por ejemplo, anthos-clusters.

  2. Si deseas guardar el ID de la aplicación en una variable de entorno para usarlo más tarde, ejecuta el siguiente comando:

    APPLICATION_ID=$(az ad app list --all \
     --query "[?displayName=='APPLICATION_NAME'].appId" \
     --output tsv)
    

    Reemplaza APPLICATION_NAME por el nombre de la aplicación.

  3. Para crear un principal de servicio para la aplicación, ejecuta el siguiente comando:

    az ad sp create --id "${APPLICATION_ID}"
    

Configura la federación de identidades para cargas de trabajo

La federación de identidades para cargas de trabajo permite que GKE en Azure se autentique en Azure con una cuenta de servicio de Google. Este método de autenticación en Azure es más simple que el método de autenticación heredado de AzureClient, que requiere que administres los certificados y los subas de forma manual a Azure Active Directory (AD).

Para configurar una credencial de identidad federada en tu aplicación de Azure AD, ejecuta los siguientes comandos. Ten en cuenta que puedes agregar hasta veinte credenciales a cada aplicación de Azure AD.

  1. Crea un archivo JSON llamado 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: el nombre de la credencial.
    • PROJECT_NUMBER: el número del proyecto de Google Cloud que aloja el clúster.
  2. Crea una credencial de identidad federada en la aplicación de Azure AD:

    az ad app federated-credential create --id "${APPLICATION_ID}" --parameters credential.json
    

Si deseas obtener más detalles, consulta la documentación de Azure Federación de identidades para cargas de trabajo de Azure AD con Google Cloud.

También puedes aprovisionar la credencial de identidad federada de Azure mediante Terraform. Para obtener más información, consulta azuread_application_federated_identity_credential.

¿Qué sigue?