Migrar da API Admin OAuth do IAP

A API Admin OAuth do Identity-Aware Proxy (IAP) foi descontinuada. Este guia mostra como migrar clientes OAuth atuais para clientes OAuth gerenciados pelo Google. Se você não usa a API Admin OAuth do IAP, essa mudança não vai afetar você.

Para verificar se o projeto usa APIs Admin OAuth, consulte Verificar o uso de APIs Admin OAuth. Se o projeto estiver usando as APIs Admin OAuth, siga as instruções de migração neste documento ou use alternativas à API Admin OAuth.

O que vai mudar

Estamos descontinuando a API Admin OAuth do IAP, que inclui as seguintes APIs para gerenciamento manual de clientes OAuth e marcas:

Não é mais possível criar ou gerenciar clientes OAuth personalizados usando a API Admin OAuth do IAP. Em vez de gerenciar manualmente os clientes OAuth 2.0, o IAP usa um cliente OAuth gerenciado pelo Google. Isso simplifica o gerenciamento de clientes OAuth, reduz erros manuais e otimiza os processos de implantação.

Para continuar oferecendo uma marca personalizada, recomendamos que você configure clientes OAuth personalizados.

O que não vai mudar

Se você não usa a API Admin OAuth do IAP, essa mudança não vai afetar você.

Essa descontinuação não afeta os clientes OAuth que você configura manualmente usando a API Compute Engine, a API App Engine ou o console Google Cloud .

Você pode continuar criando novas configurações de marca e cliente OAuth e gerenciando-as usando o console Google Cloud . Não é necessário migrar os clientes OAuth atuais. Você pode continuar usando e gerenciando-os pelo consoleGoogle Cloud em vez da API Admin OAuth do IAP.

Verificar o uso das APIs Admin OAuth do IAP

Para verificar se o projeto está usando as APIs Admin OAuth do IAP, faça o seguinte:

  1. No console do Google Cloud , acesse a página Uso da API IAP.

    Acessar o uso da API IAP

  2. Selecione o projeto que você quer verificar para o uso da API Admin do OAuth do IAP.

  3. Na lista Selecionar gráficos, escolha Tráfego por método de API e clique em OK.

  4. Na seção Métodos, procure métodos com o prefixo google.cloud.iap.v1.IdentityAwareProxyOAuthService, que indica que o projeto usa a API Admin OAuth do IAP.

Descrição detalhada

Desde 22 de janeiro de 2025, a API Admin OAuth 2.0 do IAP, usada para criar um cliente OAuth 2.0 do IAP, está descontinuada. O IAP agora usa um cliente OAuth gerenciado pelo Google para acesso do navegador por padrão ou quando nenhum cliente OAuth 2.0 está configurado explicitamente. O cliente OAuth 2.0 gerenciado pelo Google restringe o acesso a aplicativos ativados para IAP a usuários da mesma organização quando eles acessam esses aplicativos por um navegador.

Com a descontinuação da API Admin OAuth 2.0 do Identity-Aware Proxy (IAP), não é mais possível usar essa API para criar ou gerenciar clientes OAuth. Os clientes OAuth criados antes dessa descontinuação não serão invalidados. Você pode continuar usando os clientes OAuth criados anteriormente e gerenciá-los com o console Google Cloud .

Se você tiver aplicativos configurados com clientes OAuth criados usando a API Admin do IAP 2.0 ou de outra forma, eles vão continuar funcionando. Nenhuma mudança é necessária nos aplicativos. No entanto, se os scripts de automação ou as ferramentas de infraestrutura como código (IaC) usarem a API Admin do IAP OAuth 2.0 para configurar novos clientes ou buscar segredos de clientes atuais, será necessário atualizar os scripts para que eles não usem a API Admin do IAP OAuth 2.0.

Se você vai continuar usando o cliente gerenciado pelo usuário ou mudar para a opção gerenciada pelo Google depende dos seus requisitos de branding e acesso externo. Para uma análise detalhada de todas as diferenças funcionais, consulte a tabela de comparação de clientes OAuth gerenciados pelo Google e personalizados. Se o aplicativo exigir um ID do cliente personalizado para branding ou acesso externo, use o console Google Cloud para criar o ID do cliente. Para mais informações sobre clientes OAuth personalizados, consulte Personalizar uma configuração do OAuth para ativar a IAP.

Para saber como configurar clientes OAuth 2.0 gerenciados pelo Google para seus aplicativos, consulte Acesso programático.

Se você tiver um requisito que não é atendido pelo cliente OAuth 2.0 gerenciado pelo Google, compartilhe um único cliente OAuth com vários aplicativos de IAP, eliminando a necessidade de criar manualmente um cliente para cada novo aplicativo.

Ações necessárias

  • Atualizar scripts de automação

    Se você usa o Terraform ou outras ferramentas para automatizar a configuração do IAP e usa a API Admin do OAuth 2.0 do IAP, atualize os scripts de automação para usar um cliente pré-criado ou o cliente OAuth gerenciado pelo Google com o IAP.

  • Configurar o acesso programático para aplicativos usando os clientes OAuth 2.0 gerenciados pelo Google

    Se você já tiver alguns aplicativos protegidos pela IAP e planeja migrá-los usando o cliente OAuth 2.0 gerenciado pelo Google, é possível configurar o acesso programático para esses aplicativos adicionando clientes OAuth 2.0 à lista de permissões.

Migrar recursos ativados para IAP

Para migrar seus recursos e usar o cliente OAuth 2.0 gerenciado pelo Google, siga as etapas para o tipo de recurso que você quer migrar, como um recurso do Compute Engine.

Migrar recursos do App Engine ativados para IAP

Conclua as etapas nesta seção para migrar recursos do App Engine em que o IAP está ativado e um cliente OAuth 2.0 está configurado.

gcloud

Antes de continuar com as etapas, verifique se você tem uma versão atualizada da CLI gcloud. Para instruções sobre como instalar a CLI gcloud, consulte Instalar a CLI gcloud.

  1. Use a Google Cloud CLI para fazer a autenticação.

    gcloud auth login
    
  2. Clique no URL que aparece e faça login.

  3. Depois de fazer login, copie o código de verificação que aparece e cole-o na linha de comando.

  4. Execute o comando a seguir para especificar o projeto que contém os aplicativos que você quer continuar protegendo com o IAP.

    gcloud config set project PROJECT_ID
    
  5. Execute o comando a seguir para buscar o ID do cliente OAuth 2.0 configurado.

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

    Salve o ID do cliente do comando anterior se quiser permitir o acesso programático.

  6. Para permitir o acesso programático do cliente OAuth 2.0, faça uma operação de leitura-atualização-gravação na API de configurações do IAP.

    gcloud iap settings get --resource-type=app-engine --project=$PROJECT > settings.yaml
    
  7. Atualize o arquivo settings.yaml e adicione o ID do cliente OAuth 2.0 buscado anteriormente em programmaticClients, conforme mostrado no exemplo a seguir.

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Aplicar as novas configurações no aplicativo do App Engine

    gcloud iap settings set settings.yaml --resource-type=app-engine --project=PROJECT_ID
    
  9. Para migrar seus apps, execute o seguinte comando.

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

API

  1. Execute o comando a seguir para buscar o ID do cliente 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. Execute o comando a seguir para buscar as configurações de IAP atuais em um arquivo 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. Atualize o arquivo settings.json para adicionar o CLIENT_ID salvo anteriormente como um cliente programático.

    {
        "accessSettings": {
          "oauthSettings": {
            "programmaticClients": [
              "CLIENT_ID"
            ]
          },
        },
    }
    
  4. Execute o comando a seguir para atualizar as configurações da 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. Execute o comando a seguir para preparar um arquivo settings.json.

      cat << EOF > settings.json
      {
      "iap":
          {
            "enabled":true
          }
      }
      EOF
    
  6. Execute o comando a seguir para migrar seus 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"
    

Migrar recursos do Compute Engine ativados para IAP

Conclua as etapas desta seção para migrar recursos do Compute Engine em que o IAP está ativado e um cliente OAuth 2.0 está configurado.

gcloud

Antes de continuar com as etapas, verifique se você tem uma versão atualizada da CLI gcloud. Para instruções sobre como instalar a CLI gcloud, consulte Instalar a CLI gcloud.

  1. Use a Google Cloud CLI para fazer a autenticação.

    gcloud auth login
    
  2. Clique no URL que aparece e faça login.

  3. Depois de fazer login, copie o código de verificação que aparece e cole-o na linha de comando.

  4. Execute o comando a seguir para especificar o projeto que contém os aplicativos que você quer continuar protegendo com o IAP.

    gcloud config set project PROJECT_ID
    
  5. Execute o comando a seguir para buscar o ID do cliente OAuth 2.0 configurado.

    Escopo global

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

    Escopo regional

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

    Salve o ID do cliente do comando anterior se quiser permitir o acesso programático.

  6. Para conceder acesso programático ao cliente OAuth 2.0, faça uma operação de leitura-atualização-gravação na API de configurações do IAP.

    Escopo global

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

    Escopo regional

    gcloud iap settings get \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME > settings.yaml
    
  7. Atualize o arquivo settings.yaml e adicione o ID do cliente OAuth 2.0 buscado anteriormente em programmaticClients, conforme mostrado no exemplo a seguir:

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Aplique as novas configurações no aplicativo do Compute Engine:

    Escopo global

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

    Escopo regional

    gcloud iap settings set settings.yaml \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME
  9. Para migrar seus aplicativos, execute o seguinte comando. Para limpar o ID do cliente OAuth e a chave secreta OAuth, transmita um único espaço entre aspas (" ") no comando. O serviço de back-end usa o cliente OAuth gerenciado pelo Google.

    Escopo global

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

    Escopo regional

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
        --region REGION_NAME \
        --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
    
  10. Para confirmar que você removeu o ID do cliente OAuth e o segredo do cliente OAuth e que o serviço de back-end está usando um cliente OAuth gerenciado pelo Google, execute gcloud compute backend-services describe. Para limpar esses campos durante a migração, o comando gcloud compute backend-services update usa um único espaço (" "), que a API Compute Engine interpreta como uma instrução para remover os valores oauth2ClientId e oauth2ClientSecret.

    Escopo global

    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
        --global
    

    Escopo regional

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

    Depois de executar o comando describe, examine a seção iap da saída. Uma migração bem-sucedida é indicada quando o campo oauth2ClientId mostra um único espaço (' ') e o campo oauth2ClientSecret contém o hash SHA256 (36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068) de um único espaço.

API

  1. Execute o comando a seguir para buscar o ID do cliente OAuth 2.0 configurado.

    Escopo 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"
    

    Escopo 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. Execute o comando a seguir para buscar as configurações de IAP atuais em um arquivo settings.json.

    Escopo 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
    

    Escopo 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. Atualize o arquivo settings.json para adicionar CLIENT_ID salvo anteriormente como um cliente programático.

    {
        "accessSettings": {
          "oauthSettings": {
            "programmaticClients": [
              "CLIENT_ID"
            ]
          },
        },
    }
    
  4. Execute o comando a seguir para atualizar as configurações da IAP.

    Escopo 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"
    

    Escopo 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. Execute o comando a seguir para preparar um arquivo settings.json.

    cat << EOF > settings.json
    {
    "iap":
          {
            "enabled":true,
            "oauth2ClientId": " ",
            "oauth2ClientSecret": " "
          }
    }
    EOF
    
  6. Execute o comando a seguir para migrar seus recursos do IAP.

    Escopo 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"
    

    Escopo 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 o ID do cliente OAuth não está definido, execute o seguinte comando de escopo global ou regional. Depois de executar o comando, verifique a saída para garantir que o campo "ID do cliente OAuth" esteja vazio.

    Escopo 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"
    

    Escopo 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

Se você estiver migrando recursos atuais ativados para IAP para usar um cliente OAuth gerenciado pelo Google, será necessário remover explicitamente os campos oauth2_client_id e oauth2_client_secret. Para remover a definição dos campos e atualizar os valores para um único caractere de espaço em branco, conforme mostrado no exemplo a seguir:

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 = " "
  }
}

Os campos oauth2_client_id e oauth2_client_secret são opcionais. Se você estiver trabalhando com novos recursos ativados para IAP, ignore-os.

Para mais informações sobre como usar o Terraform com o Google Cloud, consulte a documentação do Terraform.

Migrar recursos do Cloud Run ativados para IAP

Conclua as etapas nesta seção para migrar recursos do Cloud Run em que o IAP está ativado e um cliente OAuth 2.0 está configurado.

gcloud

Antes de continuar com as etapas, verifique se você tem uma versão atualizada da CLI gcloud. Para instruções sobre como instalar a CLI gcloud, consulte Instalar a gcloud CLI.

  1. Para autenticar, use a Google Cloud CLI e execute o seguinte comando:

    gcloud auth login
    
  2. Clique no URL que aparece e faça login.

  3. Depois de fazer login, copie o código de verificação que aparece e cole-o na linha de comando.

  4. Execute o comando a seguir para especificar o projeto que contém os aplicativos que você quer continuar protegendo com o IAP.

    gcloud config set project PROJECT_ID
    
  5. Execute o comando a seguir para buscar o ID do cliente OAuth 2.0 configurado.

    Escopo global

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

    Escopo regional

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

    Salve o ID do cliente do comando anterior se quiser permitir o acesso programático.

  6. Para permitir o acesso programático do cliente OAuth 2.0, faça uma operação de leitura-atualização-gravação na API de configurações do IAP.

    Escopo global

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

    Escopo regional

    gcloud iap settings get \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME > settings.yaml
    
  7. Atualize o arquivo settings.yaml e adicione o ID do cliente OAuth 2.0 buscado anteriormente em programmaticClients, como mostrado no exemplo.

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Aplique as novas configurações no aplicativo do Compute Engine.

    Escopo global

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

    Escopo regional

    gcloud iap settings set settings.yaml \
        --resource-type=compute \
        --project=PROJECT_ID \
        --service=BACKEND_SERVICE_NAME \
        --region=REGION_NAME
    
  9. Para migrar seus recursos, execute o comando com escopo global ou regional.

    Escopo global

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

    Escopo regional

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
        --region REGION_NAME \
        --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
    
  10. Para confirmar que o ID do cliente OAuth não está definido, execute o seguinte comando de escopo global ou regional. Depois de executar o comando, verifique a saída para garantir que o campo "ID do cliente OAuth" esteja vazio.

    Escopo global

    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
        --global
    

    Escopo regional

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

API

  1. Execute o comando a seguir para buscar o ID do cliente OAuth 2.0 configurado.

    Escopo 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"
    

    Escopo 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. Execute o comando a seguir para buscar as configurações de IAP atuais em um arquivo settings.json.

    Escopo 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
    

    Escopo 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. Atualize o arquivo settings.json para adicionar CLIENT_ID salvo anteriormente como um cliente programático.

    {
        "accessSettings": {
          "oauthSettings": {
            "programmaticClients": [
              "CLIENT_ID"
            ]
          },
        },
    }
    
  4. Execute o comando a seguir para atualizar as configurações da IAP.

    Escopo 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"
    

    Escopo 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. Execute o comando a seguir para preparar um arquivo settings.json.

    cat << EOF > settings.json
    {
    "iap":
          {
            "enabled":true,
            "oauth2ClientId": " ",
            "oauth2ClientSecret": " "
          }
    }
    EOF
    
  6. Execute o comando a seguir para migrar seus recursos.

    Escopo 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"
    

    Escopo 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 o ID do cliente OAuth não está definido, execute o seguinte comando de escopo global ou regional. Depois de executar o comando, verifique a saída para garantir que o campo "ID do cliente OAuth" esteja vazio.

    Escopo 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"
    

    Escopo 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"
    

Migrar recursos do Google Kubernetes Engine ativados para IAP

Adicione o seguinte bloco de IAP à BackendConfig do BackendConfig. Isso ativa o IAP com o cliente OAuth 2.0 gerenciado pelo Google.

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

Usar um JWT de conta de serviço para autenticar na IAP

É possível se autenticar no IAP sem usar a API Admin OAuth descontinuada com um JWT de conta de serviço.

Receber uma chave secreta do cliente OAuth

Quando você cria um cliente OAuth personalizado no console Google Cloud , a chave secreta do cliente é mostrada apenas naquele momento. Você é responsável por armazenar esse secret com segurança. O Secret Manager é o serviço recomendado para armazenar com segurança chaves secretas do cliente OAuth.

Se você usa o Secret Manager para armazenar a chave secreta do cliente OAuth, consulte Acessar uma versão secreta para instruções sobre como receber a chave secreta do cliente.

Verificar se você está usando a API Admin OAuth do IAP

Para verificar se o projeto usa as APIs Admin OAuth do IAP, consulte Verificar o uso das APIs Admin OAuth.

Alternativas ao uso da API Admin OAuth

Se você precisar obter credenciais do cliente OAuth sem usar a API OAuth, use os seguintes métodos:

  • Console doGoogle Cloud : é possível receber manualmente as credenciais do OAuth na página Credenciais.

  • Secret Manager: é possível armazenar e recuperar o secret usando o Secret Manager. Para saber como usar o Secret Manager com o Terraform, consulte google_secret_manager_secret.

  • JWTs de conta de serviço: use JSON Web Tokens (JWTs) de conta de serviço para autenticação. Com os JWTs de conta de serviço, não é necessário usar clientes OAuth.