Migra desde la API de OAuth Admin de IAP

La API de administrador de OAuth de Identity-Aware Proxy (IAP) ahora está obsoleta. En esta guía, se muestra cómo puedes migrar de forma opcional los clientes de OAuth existentes a clientes de OAuth administrados por Google. Si no usas la API de administración de OAuth de IAP, este cambio no te afectará.

Para verificar si tu proyecto usa las APIs de administrador de OAuth, consulta Cómo verificar el uso de las APIs de administrador de OAuth. Si tu proyecto usa las APIs de OAuth Admin, debes seguir las instrucciones de migración que se indican en este documento o puedes usar alternativas a la API de OAuth Admin.

¿Qué aspectos cambiarán?

Estamos retirando la API de administración de OAuth de IAP, que incluye las siguientes APIs para la administración manual de clientes y marcas de OAuth:

Ya no puedes crear ni administrar clientes de OAuth personalizados con la API de IAP OAuth Admin. En lugar de administrar manualmente los clientes de OAuth 2.0, IAP usa un cliente de OAuth administrado por Google. Esto simplifica la administración de clientes de OAuth, reduce los errores manuales y optimiza los procesos de implementación.

Para seguir proporcionando desarrollo de marca personalizado, te recomendamos que configures clientes de OAuth personalizados.

Qué se mantendrá igual

Si no usas la API de administración de OAuth de IAP, este cambio no te afectará.

Esta baja en desuso no afecta a los clientes de OAuth que configuras manualmente con la API de Compute Engine, la API de App Engine o la consola de Google Cloud .

Puedes seguir creando nuevas configuraciones de marca y cliente de OAuth, y administrarlas con la consola de Google Cloud . No es necesario que migres tus clientes de OAuth existentes. Puedes seguir usándolos y administrándolos a través de la consola deGoogle Cloud en lugar de la API de IAP OAuth Admin.

Verifica el uso de las APIs de administrador de OAuth de IAP

Para verificar si tu proyecto usa las APIs de OAuth Admin de IAP, haz lo siguiente:

  1. En la consola de Google Cloud , ve a la página Uso de la API de IAP.

    Ir a Uso de la API de IAP

  2. Selecciona el proyecto en el que deseas verificar el uso de la API de IAP OAuth Admin.

  3. En la lista Seleccionar gráficos, selecciona Tráfico por método de API y, luego, haz clic en Aceptar.

  4. En la sección Métodos, busca cualquier método con el prefijo google.cloud.iap.v1.IdentityAwareProxyOAuthService, que indica que el proyecto usa la API de IAP OAuth Admin.

Descripción detallada

A partir del 22 de enero de 2025, la API de Admin de OAuth 2.0 de IAP, que se usa para crear un cliente de OAuth 2.0 de IAP, estará obsoleta. IAP ahora usa un cliente de OAuth administrado por Google para el acceso al navegador de forma predeterminada o cuando no se configura explícitamente ningún cliente de OAuth 2.0. El cliente de OAuth 2.0 administrado por Google restringe el acceso a las aplicaciones habilitadas para IAP a los usuarios de la misma organización cuando acceden a esas aplicaciones a través de un navegador.

Con la baja de la API de Admin de OAuth 2.0 de Identity-Aware Proxy (IAP), ya no puedes usar esta API para crear ni administrar clientes de OAuth. Los clientes de OAuth creados antes de esta baja no se invalidarán. Puedes seguir usando los clientes de OAuth que creaste anteriormente y administrarlos con la consola de Google Cloud .

Si tienes aplicaciones configuradas con clientes de OAuth creados con la API de IAP 2.0 Admin o de otra manera, esas aplicaciones seguirán funcionando. No se requieren cambios en las aplicaciones. Sin embargo, si tus secuencias de comandos de automatización o herramientas de infraestructura como código (IaC) usan la API de IAP OAuth 2.0 Admin para configurar clientes nuevos o recuperar secretos de clientes existentes, debes actualizar las secuencias de comandos para que no usen la API de IAP OAuth 2.0 Admin.

Si continúas usando tu cliente existente administrado por el usuario o consideras cambiar a la opción administrada por Google, dependerá de tus requisitos de desarrollo de la marca y acceso externo. Para obtener un desglose detallado de todas las diferencias funcionales, consulta la tabla comparativa de clientes de OAuth personalizados y administrados por Google. Si tu aplicación requiere un ID de cliente personalizado para la marca o el acceso externo, usa la consola de Google Cloud para crear el ID de cliente. Para obtener más información sobre los clientes de OAuth personalizados, consulta Personaliza una configuración de OAuth para habilitar IAP.

Para obtener información sobre cómo configurar clientes de OAuth 2.0 administrados por Google para tus aplicaciones, consulta Acceso programático.

Si tienes un requisito que no cumple el cliente de OAuth 2.0 administrado por Google, puedes compartir un solo cliente de OAuth con varias aplicaciones de IAP, lo que elimina la necesidad de crear manualmente un cliente para cada aplicación nueva.

Acciones necesarias

  • Actualiza las secuencias de comandos de automatización

    Si usas Terraform o alguna otra herramienta para automatizar la configuración de IAP, y usas la API de Admin de OAuth 2.0 de IAP, debes actualizar las secuencias de comandos de automatización para usar un cliente creado previamente o usar el cliente OAuth administrado por Google con IAP.

  • Configura el acceso programático para las aplicaciones con los clientes de OAuth 2.0 administrados por Google

    Si ya tienes algunas aplicaciones protegidas por la IAP y planeas migrarlas con el cliente de OAuth 2.0 administrado por Google, puedes configurar el acceso programático para estas aplicaciones incluyendo en la lista de entidades permitidas a los clientes de OAuth 2.0.

Migra recursos habilitados para la IAP

Para migrar tus recursos y usar el cliente de OAuth 2.0 administrado por Google, sigue los pasos correspondientes al tipo de recurso que deseas migrar, como un recurso de Compute Engine.

Migra recursos de App Engine habilitados para la IAP

Completa los pasos de esta sección para migrar los recursos de App Engine en los que IAP está habilitado y se configuró un cliente de OAuth 2.0.

gcloud

Antes de continuar con los pasos, asegúrate de tener una versión actualizada de gcloud CLI. Si deseas obtener instrucciones para instalar gcloud CLI, consulta Instala la CLI de gcloud.

  1. Usa Google Cloud CLI para autenticarte.

    gcloud auth login
    
  2. Haz clic en la URL que aparece y accede.

  3. Después de acceder, copia el código de verificación que aparece y pégalo en la línea de comandos.

  4. Ejecuta el siguiente comando para especificar el proyecto que contiene las aplicaciones que deseas seguir protegiendo con IAP.

    gcloud config set project PROJECT_ID
    
  5. Ejecuta el siguiente comando para recuperar el ID de cliente de OAuth 2.0 configurado.

    gcloud app describe --format="value(iap.oauth2ClientId)"
    

    Guarda el ID de cliente del comando anterior si deseas permitir el acceso programático.

  6. Para incluir en la lista de entidades permitidas al cliente de OAuth 2.0 para el acceso programático, realiza una operación de lectura, actualización y escritura en la API de configuración de IAP.

    gcloud iap settings get --resource-type=app-engine --project=$PROJECT > settings.yaml
    
  7. Actualiza el archivo settings.yaml y agrega el ID de cliente de OAuth 2.0 recuperado anteriormente en programmaticClients, como se muestra en el siguiente ejemplo.

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Aplica la nueva configuración en la aplicación de App Engine

    gcloud iap settings set settings.yaml --resource-type=app-engine --project=PROJECT_ID
    
  9. Para migrar tus apps, ejecuta el siguiente comando.

    gcloud iap web enable --resource-type=app-engine
    

API

  1. Ejecuta el siguiente comando para recuperar el ID de cliente de OAuth 2.0 configurado.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    "https://appengine.googleapis.com/v1/apps/PROJECT_ID?fields=iap"
    
  2. Ejecuta el siguiente comando para recuperar la configuración existente de las IAP en un archivo settings.json.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings" > settings.json
    
  3. Actualiza el archivo settings.json para agregar el CLIENT_ID guardado anteriormente como cliente programático.

    {
        "accessSettings": {
          "oauthSettings": {
            "programmaticClients": [
              "CLIENT_ID"
            ]
          },
        },
    }
    
  4. Ejecuta el siguiente comando para actualizar la configuración de las IAP.

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d "@settings.json" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings"
    
  5. Ejecuta el siguiente comando para preparar un archivo settings.json.

      cat << EOF > settings.json
      {
      "iap":
          {
            "enabled":true
          }
      }
      EOF
    
  6. Ejecuta el siguiente comando para migrar tus apps.

      curl -X PATCH \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Accept: application/json" \
      -H "Content-Type: application/json" \
      -d @settings.json \
      "https://appengine.googleapis.com/v1/apps/PROJECT_ID?updateMask=iap"
    

Migra recursos de Compute Engine habilitados para IAP

Completa los pasos de esta sección para migrar los recursos de Compute Engine en los que IAP está habilitado y se configuró un cliente de OAuth 2.0.

gcloud

Antes de continuar con los pasos, asegúrate de tener una versión actualizada de gcloud CLI. Si deseas obtener instrucciones para instalar gcloud CLI, consulta Instala la CLI de gcloud.

  1. Usa Google Cloud CLI para autenticarte.

    gcloud auth login
    
  2. Haz clic en la URL que aparece y accede.

  3. Después de acceder, copia el código de verificación que aparece y pégalo en la línea de comandos.

  4. Ejecuta el siguiente comando para especificar el proyecto que contiene las aplicaciones que deseas seguir protegiendo con IAP.

    gcloud config set project PROJECT_ID
    
  5. Ejecuta el siguiente comando para recuperar el ID de cliente de OAuth 2.0 configurado.

    Alcance global

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
    --global \
    --format="value(iap.oauth2ClientId)"
    

    Alcance regional

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
    --region REGION_NAME \
    --format="value(iap.oauth2ClientId)"
    

    Guarda el ID de cliente del comando anterior si deseas permitir el acceso programático.

  6. Para otorgar acceso programático al cliente de OAuth 2.0, realiza una operación de lectura, actualización y escritura en la API de configuración de IAP.

    Alcance global

    gcloud iap settings get \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME > settings.yaml
    

    Alcance regional

    gcloud iap settings get \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME > settings.yaml
    
  7. Actualiza el archivo settings.yaml y agrega el ID de cliente de OAuth 2.0 recuperado anteriormente en programmaticClients, como se muestra en el siguiente ejemplo:

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Aplica la nueva configuración en la aplicación de Compute Engine:

    Alcance global

    gcloud iap settings set settings.yaml \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME

    Alcance regional

    gcloud iap settings set settings.yaml \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME
  9. Para migrar tus aplicaciones, ejecuta el comando con alcance global o regional.

    Alcance global

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
        --global \
        --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
    

    Alcance regional

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
        --region REGION_NAME \
        --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
    
  10. Para confirmar que no se configuró el ID de cliente de OAuth, ejecuta el siguiente comando de alcance global o regional. Después de ejecutar el comando, verifica el resultado para asegurarte de que el campo ID de cliente de OAuth esté vacío.

    Alcance global

    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
        --global
    

    Alcance regional

    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
        --region REGION_NAME
    

API

  1. Ejecuta el siguiente comando para recuperar el ID de cliente de OAuth 2.0 configurado.

    Alcance global

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
    

    Alcance regional

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
    
  2. Ejecuta el siguiente comando para recuperar la configuración existente de las IAP en un archivo settings.json.

    Alcance global

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
    

    Alcance regional

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
    
  3. Actualiza el archivo settings.json para agregar el CLIENT_ID guardado anteriormente como cliente programático.

    {
        "accessSettings": {
          "oauthSettings": {
            "programmaticClients": [
              "CLIENT_ID"
            ]
          },
        },
    }
    
  4. Ejecuta el siguiente comando para actualizar la configuración de las IAP.

    Alcance global

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d "@settings.json" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
    

    Alcance regional

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d "@settings.json" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
    
  5. Ejecuta el siguiente comando para preparar un archivo settings.json.

    cat << EOF > settings.json
    {
    "iap":
          {
            "enabled":true,
            "oauth2ClientId": " ",
            "oauth2ClientSecret": " "
          }
    }
    EOF
    
  6. Ejecuta el siguiente comando para migrar tus recursos de IAP.

    Alcance global

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d @settings.json \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
    

    Alcance regional

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d @settings.json \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
    
  7. Para confirmar que no se configuró el ID de cliente de OAuth, ejecuta el siguiente comando de alcance global o regional. Después de ejecutar el comando, verifica el resultado para asegurarte de que el campo ID de cliente de OAuth esté vacío.

    Alcance global

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
    

    Alcance regional

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
    

Terraform

Si migras recursos existentes habilitados para IAP para usar un cliente de OAuth administrado por Google, debes anular de forma explícita los campos oauth2_client_id y oauth2_client_secret. Para anular la configuración de los campos y actualizar los valores a un solo carácter de espacio en blanco, como se muestra en el siguiente ejemplo:

resource "google_compute_backend_service" "default" {
  name                  = "tf-test-backend-service-external"
  protocol              = "HTTP"
  load_balancing_scheme = "EXTERNAL"
  iap {
    oauth2_client_id     = " "
    oauth2_client_secret = " "
  }
}

Los campos oauth2_client_id y oauth2_client_secret son opcionales y, si trabajas con recursos nuevos habilitados para IAP, puedes ignorarlos.

Para obtener más información sobre el uso de Terraform con Google Cloud, consulta la documentación de Terraform.

Migra recursos de Cloud Run habilitados para IAP

Completa los pasos de esta sección para migrar los recursos de Cloud Run en los que IAP está habilitado y se configuró un cliente de OAuth 2.0.

gcloud

Antes de continuar con los pasos, asegúrate de tener una versión actualizada de gcloud CLI. Para obtener instrucciones sobre cómo instalar gcloud CLI, consulta Instala la CLI de gcloud.

  1. Para autenticarte, usa Google Cloud CLI y ejecuta el siguiente comando.

    gcloud auth login
    
  2. Haz clic en la URL que aparece y accede.

  3. Después de acceder, copia el código de verificación que aparece y pégalo en la línea de comandos.

  4. Ejecuta el siguiente comando para especificar el proyecto que contiene las aplicaciones que deseas seguir protegiendo con IAP.

    gcloud config set project PROJECT_ID
    
  5. Ejecuta el siguiente comando para recuperar el ID de cliente de OAuth 2.0 configurado.

    Alcance global

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
        --global \
        --format="value(iap.oauth2ClientId)"
    

    Alcance regional

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
      --region REGION_NAME \
      --format="value(iap.oauth2ClientId)"
    

    Guarda el ID de cliente del comando anterior si deseas permitir el acceso programático.

  6. Para incluir en la lista de entidades permitidas al cliente de OAuth 2.0 para el acceso programático, realiza una operación de lectura, actualización y escritura en la API de configuración de IAP.

    Alcance global

    gcloud iap settings get \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME > settings.yaml
    

    Alcance regional

    gcloud iap settings get \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME > settings.yaml
    
  7. Actualiza el archivo settings.yaml y agrega el ID de cliente de OAuth 2.0 recuperado anteriormente en programmaticClients, como se muestra en el ejemplo.

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Aplica la nueva configuración en la aplicación de Compute Engine.

    Alcance global

    gcloud iap settings set settings.yaml \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME
    

    Alcance regional

    gcloud iap settings set settings.yaml \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME
    
  9. Para migrar tus recursos, ejecuta el comando con alcance global o regional.

    Alcance global

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
        --global \
        --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
    

    Alcance regional

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
        --region REGION_NAME \
        --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
    
  10. Para confirmar que no se configuró el ID de cliente de OAuth, ejecuta el siguiente comando de alcance global o regional. Después de ejecutar el comando, verifica el resultado para asegurarte de que el campo ID de cliente de OAuth esté vacío.

    Alcance global

    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
        --global
    

    Alcance regional

    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
        --region REGION_NAME
    

API

  1. Ejecuta el siguiente comando para recuperar el ID de cliente de OAuth 2.0 configurado.

    Alcance global

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
    

    Alcance regional

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
    
  2. Ejecuta el siguiente comando para recuperar la configuración existente de las IAP en un archivo settings.json.

    Alcance global

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
    

    Alcance regional

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
    
  3. Actualiza el archivo settings.json para agregar el CLIENT_ID guardado anteriormente como cliente programático.

    {
        "accessSettings": {
          "oauthSettings": {
            "programmaticClients": [
              "CLIENT_ID"
            ]
          },
        },
    }
    
  4. Ejecuta el siguiente comando para actualizar la configuración de las IAP.

    Alcance global

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d "@settings.json" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
    

    Alcance regional

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d "@settings.json" \
    "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
    
  5. Ejecuta el siguiente comando para preparar un archivo settings.json.

    cat << EOF > settings.json
    {
    "iap":
          {
            "enabled":true,
            "oauth2ClientId": " ",
            "oauth2ClientSecret": " "
          }
    }
    EOF
    
  6. Ejecuta el siguiente comando para migrar tus recursos.

    Alcance global

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d @settings.json \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
    

    Alcance regional

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d @settings.json \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
    
  7. Para confirmar que no se configuró el ID de cliente de OAuth, ejecuta el siguiente comando de alcance global o regional. Después de ejecutar el comando, verifica el resultado para asegurarte de que el campo ID de cliente de OAuth esté vacío.

    Alcance global

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
    

    Alcance regional

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
    

Migra recursos de Google Kubernetes Engine habilitados para IAP

Agrega el siguiente bloque de IAP a la Definición de recurso personalizado (CRD) de BackendConfig. Esto habilita IAP con el cliente de OAuth 2.0 administrado por Google.

apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
  name: config-default
  namespace: my-namespace
spec:
  iap:
    enabled: true

Usa un JWT de cuenta de servicio para autenticarte en IAP

Puedes autenticarte en IAP sin tener que usar la API de OAuth Admin obsoleta con un JWT de cuenta de servicio.

Obtén un secreto del cliente de OAuth

Cuando creas un cliente de OAuth personalizado en la consola de Google Cloud , el secreto del cliente solo se muestra en ese momento. Eres responsable de almacenar este secreto de forma segura. Secret Manager es el servicio recomendado para almacenar de forma segura los secretos del cliente de OAuth.

Si usas Secret Manager para almacenar el secreto del cliente de OAuth, consulta Cómo acceder a una versión secreta para obtener instrucciones sobre cómo obtener el secreto del cliente.

Verifica si usas la API de OAuth Admin de IAP

Para verificar si tu proyecto usa las APIs de OAuth Admin de IAP, consulta Cómo verificar el uso de las APIs de OAuth Admin.

Alternativas al uso de la API de OAuth Admin

Si necesitas obtener credenciales de cliente de OAuth sin usar la API de OAuth, puedes usar los siguientes métodos:

  • Consola deGoogle Cloud : Puedes obtener manualmente las credenciales de OAuth a través de la página Credenciales.

  • Secret Manager: Puedes almacenar y recuperar el secreto con Secret Manager. Para obtener información sobre cómo usar Secret Manager con Terraform, consulta google_secret_manager_secret.

  • JWTs de cuentas de servicio: Usa tokens web JSON (JWT) de cuentas de servicio para la autenticación. Con los JWT de cuentas de servicio, no es necesario usar clientes de OAuth.