La API de OAuth de Identity-Aware Proxy (IAP) para administradores ya no está disponible. 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 Admin de OAuth de IAP, este cambio no te afectará.
Para verificar si tu proyecto usa las APIs de Admin de OAuth, consulta Verifica el uso de las APIs de Admin de OAuth. Si tu proyecto usa las APIs de OAuth Admin, debes seguir las instrucciones de migración de este documento o puedes usar alternativas a la API de OAuth Admin.
¿Qué aspectos cambiarán?
Dejaremos de usar la API de OAuth de IAP, que incluye las siguientes APIs y grupos de comandos de gcloud CLI para la administración manual de clientes de OAuth y marcas:
- APIs de cliente de OAuth
- APIs de Brands
gcloud iap oauth-brands(create,describeylist), incluidos los segmentos de versionesalphaybetagcloud iap oauth-clients(create,delete,describe,listyreset-secret), incluidos los segmentos de versionesalphaybeta
Ya no puedes crear ni administrar clientes de OAuth personalizados con la API de administración de OAuth de IAP. 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 agiliza los procesos de implementación.
Para seguir proporcionando una marca personalizada, te recomendamos que configures clientes de OAuth personalizados.
Qué cosas seguirán iguales
Si no usas la API de Admin de OAuth de IAP, este cambio no te afectará.
Esta baja no afecta a los clientes de OAuth que configuras de forma manual con
la API de Compute Engine, la API de App Engine o la consola de Google Cloud . Tampoco
afecta a otras APIs de IAP ni a los grupos de comandos de gcloud CLI (incluidos sus segmentos alpha y beta) que administran
las políticas de acceso, la configuración o el reenvío de TCP de IAP, como
gcloud iap web (por ejemplo, get-iam-policy
y remove-iam-policy-binding),
gcloud iap settings y
gcloud iap tcp, porque esos comandos usan la
API de IdentityAwareProxyAdminService en lugar de la API de
IdentityAwareProxyOAuthService obsoleta.
Puedes seguir creando configuraciones nuevas de marcas y clientes 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 administración de OAuth de IAP.
Verifica el uso de las APIs de administrador de OAuth de IAP
Para verificar si tu proyecto usa las APIs de OAuth de administrador de IAP, haz lo siguiente:
En la consola de Google Cloud , ve a la página Uso de la API de IAP.
Selecciona el proyecto en el que deseas verificar el uso de la API de Admin de OAuth de IAP.
En la lista Seleccionar gráficos, selecciona Tráfico por método de API y, luego, haz clic en Aceptar.
En la sección Métodos, busca los métodos con el prefijo
google.cloud.iap.v1.IdentityAwareProxyOAuthService, que indica que el proyecto usa la API de Admin de OAuth de IAP.
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, dejará de estar disponible. IAP ahora usa un cliente de OAuth administrado por Google para el acceso al navegador de forma predeterminada o cuando no se configura de forma explícita 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 o 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 antes y administrarlos con la consola de Google Cloud .
Si tienes aplicaciones configuradas con clientes de OAuth creados con la API de Admin de IAP 2.0 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 Admin de OAuth 2.0 de IAP para configurar clientes nuevos o recuperar secretos de clientes existentes, debes actualizar las secuencias de comandos para que no usen la API de Admin de OAuth 2.0 de IAP.
Si sigues usando tu cliente administrado por el usuario existente 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 de comparación de clientes de OAuth personalizados y administrados por Google. Si tu aplicación requiere un ID de cliente personalizado para la personalización de 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 aprender a 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 un cliente de forma manual para cada aplicación nueva.
Acciones necesarias
Actualiza las secuencias de comandos de automatización
Si usas Terraform, gcloud CLI (
gcloud iap oauth-brandsogcloud iap oauth-clients, incluidosalphaybeta) 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 el cliente de OAuth administrado por Google con IAP.Configura el acceso programático para las aplicaciones que usan los clientes de OAuth 2.0 administrados por Google
Si ya tienes algunas aplicaciones protegidas por IAP y planeas migrarlas con el cliente de OAuth 2.0 administrado por Google, puedes configurar el acceso programático para estas aplicaciones agregando clientes de OAuth 2.0 a la lista de entidades permitidas.
Migra recursos habilitados para IAP
Para migrar tus recursos y usar el cliente de OAuth 2.0 administrado por Google, sigue los pasos para el tipo de recurso, como un recurso de Compute Engine, que deseas migrar.
Migra recursos de App Engine habilitados para 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. Para obtener instrucciones sobre cómo instalar gcloud CLI, consulta Instala gcloud CLI.
Usa Google Cloud CLI para autenticarte.
gcloud auth loginHaz clic en la URL que aparece y accede.
Después de acceder, copia el código de verificación que aparece y pégalo en la línea de comandos.
Ejecuta el siguiente comando para especificar el proyecto que contiene las aplicaciones que quieres seguir protegiendo con IAP.
gcloud config set project PROJECT_IDEjecuta 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.
Para incluir el cliente de OAuth 2.0 en la lista de entidades permitidas 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.yamlActualiza el archivo
settings.yamly agrega el ID de cliente de OAuth 2.0 recuperado anteriormente enprogrammaticClients, como se muestra en el siguiente ejemplo.accessSettings: oauthSettings: programmaticClients: - CLIENT_IDAplica la configuración nueva en la aplicación de App Engine
gcloud iap settings set settings.yaml --resource-type=app-engine --project=PROJECT_IDPara migrar tus apps, ejecuta el siguiente comando.
gcloud iap web enable --resource-type=app-engine
API
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"Ejecuta el siguiente comando para recuperar la configuración de IAP existente 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.jsonActualiza el archivo
settings.jsonpara agregar el CLIENT_ID guardado anteriormente como cliente programático.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }Ejecuta el siguiente comando para actualizar la configuración de 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"Ejecuta el siguiente comando para preparar un archivo
settings.json.cat << EOF > settings.json { "iap": { "enabled":true } } EOFEjecuta 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. Para obtener instrucciones sobre cómo instalar gcloud CLI, consulta Instala gcloud CLI.
Usa Google Cloud CLI para autenticarte.
gcloud auth loginHaz clic en la URL que aparece y accede.
Después de acceder, copia el código de verificación que aparece y pégalo en la línea de comandos.
Ejecuta el siguiente comando para especificar el proyecto que contiene las aplicaciones que quieres seguir protegiendo con IAP.
gcloud config set project PROJECT_IDEjecuta 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 quieres permitir el acceso programático.
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.yamlAlcance regional
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yamlActualiza el archivo
settings.yamly agrega el ID de cliente de OAuth 2.0 que recuperaste antes enprogrammaticClients, como se muestra en el siguiente ejemplo:accessSettings: oauthSettings: programmaticClients: - CLIENT_IDAplica la configuración nueva 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
Para migrar tus aplicaciones, ejecuta el siguiente comando. Para borrar el ID de cliente de OAuth y el secreto de OAuth, pasa un solo espacio entre comillas (
" ") en el comando. El servicio de backend usa el cliente de OAuth administrado por Google.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=" "Para confirmar que quitaste el ID de cliente de OAuth y el secreto de cliente de OAuth, y que el servicio de backend usa un cliente de OAuth administrado por Google, ejecuta gcloud compute backend-services describe. Para borrar estos campos durante la migración, el comando
gcloud compute backend-services updateusa un solo espacio (" "), que la API de Compute Engine interpreta como una instrucción para quitar los valoresoauth2ClientIdyoauth2ClientSecret.Alcance global
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --globalAlcance regional
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAMEDespués de ejecutar el comando
describe, examina la seccióniapdel resultado. Se indica una migración correcta cuando el campooauth2ClientIdmuestra un solo espacio (' ') y el campooauth2ClientSecretcontiene el hash SHA256 (36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068) de un solo espacio.
API
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"
Ejecuta el siguiente comando para recuperar la configuración de IAP existente 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
Actualiza el archivo
settings.jsonpara agregar el CLIENT_ID guardado anteriormente como cliente programático.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }Ejecuta el siguiente comando para actualizar la configuración 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://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"
Ejecuta el siguiente comando para preparar un archivo
settings.json.cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOFEjecuta 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"
Para confirmar que el ID de cliente de OAuth no esté configurado, ejecuta el siguiente comando de alcance global o regional. Después de ejecutar el comando, verifica el resultado para asegurarte de que el campo de 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 la configuración de los campos oauth2_client_id
y oauth2_client_secret. Para anular la configuración de los campos, actualiza 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 gcloud CLI.
Para autenticarte, usa Google Cloud CLI y ejecuta el siguiente comando.
gcloud auth loginHaz clic en la URL que aparece y accede.
Después de acceder, copia el código de verificación que aparece y pégalo en la línea de comandos.
Ejecuta el siguiente comando para especificar el proyecto que contiene las aplicaciones que quieres seguir protegiendo con IAP.
gcloud config set project PROJECT_IDEjecuta 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 quieres permitir el acceso programático.
Para agregar el cliente de OAuth 2.0 a la lista de entidades permitidas 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.yamlAlcance regional
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yamlActualiza el archivo
settings.yamly agrega el ID de cliente de OAuth 2.0 recuperado anteriormente enprogrammaticClients, como se muestra en el ejemplo.accessSettings: oauthSettings: programmaticClients: - CLIENT_IDAplica la configuración nueva en la aplicación de Compute Engine.
Alcance global
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAMEAlcance regional
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAMEPara 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=" "Para confirmar que el ID de cliente de OAuth no esté configurado, ejecuta el siguiente comando de alcance global o regional. Después de ejecutar el comando, verifica el resultado para asegurarte de que el campo de ID de cliente de OAuth esté vacío.
Alcance global
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --globalAlcance regional
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME
API
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"
Ejecuta el siguiente comando para recuperar la configuración de IAP existente 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
Actualiza el archivo
settings.jsonpara agregar el CLIENT_ID guardado anteriormente como cliente programático.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }Ejecuta el siguiente comando para actualizar la configuración 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://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"
Ejecuta el siguiente comando para preparar un archivo
settings.json.cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOFEjecuta 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"
Para confirmar que no se estableció 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 de 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 Admin de OAuth 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 de cliente de OAuth.
Si usas Secret Manager para almacenar el secreto del cliente de OAuth, consulta Accede a una versión de un secreto para obtener instrucciones sobre cómo obtener el secreto del cliente.
Verifica si usas la API de Admin de OAuth de IAP
Para verificar si tu proyecto usa las APIs de OAuth Admin de IAP, consulta Verifica el uso de las APIs de OAuth Admin.
Alternativas al uso de la API de Admin de OAuth
Si necesitas obtener credenciales de cliente de OAuth sin usar la API de OAuth, puedes usar los siguientes métodos:
Google Cloud console: Puedes obtener credenciales de OAuth de forma manual a través de la página Credenciales.
Secret Manager: Puedes almacenar y recuperar el Secret con Secret Manager. Para aprender a usar Secret Manager con Terraform, consulta google_secret_manager_secret.
JWT de cuenta de servicio: Usa tokens web JSON (JWT) de cuenta de servicio para la autenticación. Con los JWT de cuentas de servicio, no necesitas usar clientes de OAuth.