Bermigrasi dari IAP OAuth Admin API

Panduan ini menjelaskan cara bermigrasi dari klien OAuth 2.0 yang dibuat menggunakan Identity-Aware Proxy (IAP) OAuth Admin API ke klien OAuth 2.0 yang dikelola Google dan di-deploy secara otomatis oleh IAP.

Yang berubah

Kami menghentikan penggunaan IAP OAuth Admin API, yang mencakup API berikut untuk pengelolaan merek dan klien OAuth secara manual:

Daripada mengelola klien OAuth 2.0 secara manual, IAP kini akan membuat dan mengelola klien OAuth secara otomatis jika diperlukan. Perubahan ini menyederhanakan pengelolaan klien, mengurangi error manual, dan menyederhanakan proses deployment Anda.

Yang tidak berubah

Penghentian penggunaan ini tidak memengaruhi klien OAuth yang Anda konfigurasi secara manual menggunakan Compute Engine API, App Engine API, atau konsol Google Cloud .

Anda dapat terus membuat konfigurasi merek dan klien OAuth baru serta mengelolanya menggunakan Google Cloud konsol, dan konfigurasi yang ada akan terus didukung sepenuhnya.

Jika Anda tidak menggunakan IAP OAuth Admin API, perubahan ini tidak akan memengaruhi Anda.

Deskripsi mendetail

Mulai 22 Januari 2025, IAP OAuth 2.0 Admin API, yang digunakan untuk membuat klien IAP OAuth 2.0, akan dihentikan penggunaannya. IAP OAuth 2.0 Admin API tidak lagi diperlukan karena Anda tidak perlu lagi mengonfigurasi klien OAuth. IAP kini menggunakan klien OAuth yang dikelola Google untuk akses browser secara default atau saat tidak ada klien OAuth 2.0 yang dikonfigurasi secara eksplisit. Klien OAuth 2.0 yang dikelola Google membatasi akses ke aplikasi yang mendukung IAP untuk pengguna dalam organisasi yang sama saat mereka mengakses aplikasi tersebut melalui browser.

Dengan penghentian penggunaan Identity-Aware Proxy (IAP) OAuth 2.0 Admin API, Anda tidak dapat lagi membuat atau mengelola klien OAuth baru. Klien OAuth yang dibuat sebelum penghentian penggunaan ini tidak akan dibatalkan. Anda dapat terus menggunakan klien OAuth yang sebelumnya Anda buat, dan mengelola klien tersebut menggunakan konsol Google Cloud .

Jika Anda memiliki aplikasi yang dikonfigurasi dengan klien OAuth yang dibuat menggunakan IAP 2.0 Admin API atau lainnya, aplikasi tersebut akan terus berfungsi. Tidak ada perubahan yang diperlukan pada aplikasi. Namun, jika Anda telah mengonfigurasi otomatisasi untuk membuat klien baru saat deployment aplikasi atau mengambil rahasia klien untuk klien yang ada, Anda harus memperbarui skrip otomatisasi untuk menghapus dependensi pada IAP OAuth 2.0 Admin API.

Jika Anda berencana menggunakan klien OAuth 2.0 yang dikelola Google, gunakan panduan "Akses terprogram" untuk mengonfigurasi akses terprogram bagi aplikasi ini.

Jika Anda memiliki persyaratan yang tidak dipenuhi oleh klien OAuth 2.0 yang dikelola Google, Anda dapat membagikan satu klien OAuth dengan beberapa aplikasi IAP, sehingga tidak perlu membuat klien secara manual untuk setiap aplikasi baru.

Tindakan yang diperlukan

  • Perbarui skrip otomatisasi

    Jika Anda menggunakan Terraform atau alat lain untuk mengotomatiskan konfigurasi IAP, dan menggunakan IAP OAuth 2.0 Admin API, Anda harus memperbarui skrip otomatisasi untuk menggunakan klien yang dibuat sebelumnya atau menggunakan klien OAuth yang dikelola Google dengan IAP.

  • Mengonfigurasi akses terprogram untuk aplikasi menggunakan klien OAuth2.0 yang Dikelola Google

    Jika sudah memiliki beberapa aplikasi yang dilindungi oleh IAP dan Anda berencana memigrasikannya untuk menggunakan klien OAuth 2.0 yang Dikelola Google, Anda dapat mengonfigurasi akses terprogram untuk aplikasi ini dengan memasukkan klien OAuth 2.0 ke dalam daftar yang diizinkan.

Memigrasikan resource yang mendukung IAP

Untuk memigrasikan resource Anda agar menggunakan klien OAuth 2.0 yang dikelola Google, ikuti langkah-langkah untuk jenis resource, seperti resource Compute Engine, yang ingin Anda migrasikan.

Memigrasikan resource App Engine yang mendukung IAP

Selesaikan langkah-langkah di bagian ini untuk memigrasikan resource App Engine tempat IAP diaktifkan dan klien OAuth 2.0 dikonfigurasi.

gcloud

Sebelum melanjutkan ke langkah-langkahnya, pastikan Anda memiliki gcloud CLI versi terbaru. Untuk mengetahui petunjuk cara menginstal gcloud CLI, lihat Menginstal gcloud CLI.

  1. Gunakan Google Cloud CLI untuk melakukan autentikasi.

    gcloud auth login
    
  2. Klik URL yang muncul, lalu login.

  3. Setelah Anda login, salin kode verifikasi yang muncul dan tempelkan di command line.

  4. Jalankan perintah berikut untuk menentukan project yang berisi aplikasi yang ingin Anda terus lindungi dengan IAP.

    gcloud config set project PROJECT_ID
    
  5. Jalankan perintah berikut untuk mengambil client ID OAuth 2.0 yang dikonfigurasi.

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

    Simpan ID klien dari perintah sebelumnya jika Anda ingin mengizinkan akses terprogram.

  6. Untuk memasukkan klien OAuth 2.0 ke daftar yang diizinkan untuk akses terprogram, lakukan operasi baca-perbarui-tulis pada API setelan IAP.

    gcloud iap settings get --resource-type=app-engine --project=$PROJECT > settings.yaml
    
  7. Perbarui file settings.yaml dan tambahkan ID klien OAuth 2.0 yang sebelumnya diambil di bagian programmaticClients seperti contoh yang ditunjukkan.

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Menerapkan setelan baru di aplikasi App Engine

    gcloud iap settings set settings.yaml --resource-type=app-engine --project=PROJECT_ID
    
  9. Untuk memigrasikan aplikasi Anda, jalankan perintah berikut.

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

API

  1. Jalankan perintah berikut untuk mengambil Client ID OAuth 2.0 yang dikonfigurasi.

    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. Jalankan perintah berikut untuk mengambil setelan IAP yang ada ke dalam file 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. Perbarui file settings.json untuk menambahkan CLIENT_ID yang disimpan sebelumnya sebagai klien terprogram.

    {
       "accessSettings": {
         "oauthSettings": {
           "programmaticClients": [
             "CLIENT_ID"
           ]
         },
       },
    }
    
  4. Jalankan perintah berikut untuk mengupdate setelan 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. Jalankan perintah berikut untuk menyiapkan file settings.json.

     cat << EOF > settings.json
     {
     "iap":
         {
           "enabled":true
         }
     }
     EOF
    
  6. Jalankan perintah berikut untuk memigrasikan aplikasi Anda.

     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"
    

Memigrasikan resource Compute Engine yang mendukung IAP

Selesaikan langkah-langkah di bagian ini untuk memigrasikan resource Compute Engine yang mengaktifkan IAP dan mengonfigurasi klien OAuth 2.0.

gcloud

Sebelum melanjutkan ke langkah-langkahnya, pastikan Anda memiliki gcloud CLI versi terbaru. Untuk mengetahui petunjuk cara menginstal gcloud CLI, lihat Menginstal gcloud CLI.

  1. Gunakan Google Cloud CLI untuk melakukan autentikasi.

    gcloud auth login
    
  2. Klik URL yang muncul, lalu login.

  3. Setelah Anda login, salin kode verifikasi yang muncul dan tempelkan di command line.

  4. Jalankan perintah berikut untuk menentukan project yang berisi aplikasi yang ingin Anda terus lindungi dengan IAP.

    gcloud config set project PROJECT_ID
    
  5. Jalankan perintah berikut untuk mengambil client ID OAuth 2.0 yang dikonfigurasi.

    Cakupan global

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

    Cakupan regional

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
    --region REGION_NAME \
    --format="value(iap.oauth2ClientId)"
    Simpan ID klien dari perintah sebelumnya jika Anda ingin mengizinkan akses terprogram.
  6. Untuk memasukkan klien OAuth 2.0 ke daftar yang diizinkan untuk akses terprogram, lakukan operasi baca-perbarui-tulis pada API setelan IAP.

    Cakupan global

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

    Cakupan regional

    
    gcloud iap settings get \
    --resource-type=compute \
    --project=PROJECT_ID \
    --service=BACKEND_SERVICE_NAME \
    --region=REGION_NAME > settings.yaml
  7. Perbarui file settings.yaml dan tambahkan ID klien OAuth 2.0 yang sebelumnya diambil di bagian programmaticClients seperti contoh yang ditunjukkan.

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Terapkan setelan baru pada aplikasi Compute Engine

    Cakupan global

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

    Cakupan regional

    
    gcloud iap settings set settings.yaml \
    --resource-type=compute \
    --project=PROJECT_ID \
    --service=BACKEND_SERVICE_NAME \
    --region=REGION_NAME
  9. Untuk memigrasikan aplikasi, jalankan perintah yang tercakup secara global atau regional.

    Cakupan global

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

    Cakupan regional

    
    gcloud compute backend-services update BACKEND_SERVICE_NAME \
    --region REGION_NAME \
    --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
  10. Untuk mengonfirmasi bahwa ID klien OAuth tidak ditetapkan, jalankan perintah cakupan global atau regional berikut. Setelah menjalankan perintah, periksa output untuk memastikan bahwa kolom ID klien OAuth kosong.

    Cakupan global

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
    --global
    

    Cakupan regional

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

API

  1. Jalankan perintah berikut untuk mengambil Client ID OAuth 2.0 yang dikonfigurasi.

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

    Cakupan 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. Jalankan perintah berikut untuk mengambil setelan IAP yang ada ke dalam file settings.json.

    Cakupan 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
    

    Cakupan 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. Perbarui file settings.json untuk menambahkan CLIENT_ID yang disimpan sebelumnya sebagai klien terprogram.

    {
       "accessSettings": {
         "oauthSettings": {
           "programmaticClients": [
             "CLIENT_ID"
           ]
         },
       },
    }
    
  4. Jalankan perintah berikut untuk mengupdate setelan IAP.

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

    Cakupan 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. Jalankan perintah berikut untuk menyiapkan file settings.json.

    cat << EOF > settings.json
    {
    "iap":
         {
           "enabled":true,
           "oauth2ClientId": " ",
           "oauth2ClientSecret": " "
         }
    }
    EOF
    
  6. Jalankan perintah berikut untuk memigrasikan resource IAP Anda.

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

    Cakupan 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. Untuk mengonfirmasi bahwa ID klien OAuth tidak ditetapkan, jalankan perintah cakupan global atau regional berikut. Setelah menjalankan perintah, periksa output untuk memastikan bahwa kolom ID klien OAuth kosong.

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

    Cakupan 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

Jika Anda memigrasikan resource yang sudah mengaktifkan IAP untuk menggunakan klien OAuth yang dikelola Google, Anda harus membatalkan setelan kolom oauth2_client_id dan oauth2_client_secret secara eksplisit dengan memperbaruinya ke satu spasi kosong.

Contoh:


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

Kolom oauth2_client_id dan oauth2_client_secret bersifat opsional, dan jika Anda menggunakan resource baru yang mendukung IAP, Anda dapat mengabaikannya.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi Terraform.

Memigrasikan resource Cloud Run yang mendukung IAP

Selesaikan langkah-langkah di bagian ini untuk memigrasikan resource Cloud Run yang mengaktifkan IAP dan mengonfigurasi klien OAuth 2.0.

gcloud

Sebelum melanjutkan ke langkah-langkahnya, pastikan Anda memiliki gcloud CLI versi terbaru. Untuk mengetahui petunjuk cara menginstal gcloud CLI, lihat Menginstal gcloud CLI.

  1. Untuk mengautentikasi, gunakan Google Cloud CLI dan jalankan perintah berikut.

    gcloud auth login
    
  2. Klik URL yang muncul, lalu login.

  3. Setelah Anda login, salin kode verifikasi yang muncul dan tempelkan di command line.

  4. Jalankan perintah berikut untuk menentukan project yang berisi aplikasi yang ingin Anda terus lindungi dengan IAP.

    gcloud config set project PROJECT_ID
    
  5. Jalankan perintah berikut untuk mengambil client ID OAuth 2.0 yang dikonfigurasi.

    Cakupan global

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

    Cakupan regional

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
    --region REGION_NAME \
    --format="value(iap.oauth2ClientId)"
    Simpan ID klien dari perintah sebelumnya jika Anda ingin mengizinkan akses terprogram.
  6. Untuk memasukkan klien OAuth 2.0 ke daftar yang diizinkan untuk akses terprogram, lakukan operasi baca-perbarui-tulis pada API setelan IAP.

    Cakupan global

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

    Cakupan regional

    
    gcloud iap settings get \
    --resource-type=compute \
    --project=PROJECT_ID \
    --service=BACKEND_SERVICE_NAME \
    --region=REGION_NAME > settings.yaml
  7. Perbarui file settings.yaml dan tambahkan ID klien OAuth 2.0 yang sebelumnya diambil di bagian programmaticClients seperti contoh yang ditunjukkan.

    accessSettings:
      oauthSettings:
        programmaticClients:
        - CLIENT_ID
    
  8. Terapkan setelan baru pada aplikasi Compute Engine

    Cakupan global

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

    Cakupan regional

    
    gcloud iap settings set settings.yaml \
    --resource-type=compute \
    --project=PROJECT_ID \
    --service=BACKEND_SERVICE_NAME \
    --region=REGION_NAME
  9. Untuk memigrasikan resource, jalankan perintah yang tercakup secara global atau regional.

    Cakupan global

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

    Cakupan regional

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

  10. Untuk mengonfirmasi bahwa ID klien OAuth tidak ditetapkan, jalankan perintah cakupan global atau regional berikut. Setelah menjalankan perintah, periksa output untuk memastikan bahwa kolom ID klien OAuth kosong.

    Cakupan global

    
    gcloud compute backend-services describe BACKEND_SERVICE_NAME \
    --global
    

    Cakupan regional

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

API

  1. Jalankan perintah berikut untuk mengambil Client ID OAuth 2.0 yang dikonfigurasi.

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

    Cakupan 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. Jalankan perintah berikut untuk mengambil setelan IAP yang ada ke dalam file settings.json.

    Cakupan 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
    

    Cakupan 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. Perbarui file settings.json untuk menambahkan CLIENT_ID yang disimpan sebelumnya sebagai klien terprogram.

    {
       "accessSettings": {
         "oauthSettings": {
           "programmaticClients": [
             "CLIENT_ID"
           ]
         },
       },
    }
    
  4. Jalankan perintah berikut untuk mengupdate setelan IAP.

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

    Cakupan 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. Jalankan perintah berikut untuk menyiapkan file settings.json.

    cat << EOF > settings.json
    {
    "iap":
         {
           "enabled":true,
           "oauth2ClientId": " ",
           "oauth2ClientSecret": " "
         }
    }
    EOF
    
  6. Jalankan perintah berikut untuk memigrasikan resource Anda.

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

    Cakupan 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. Untuk mengonfirmasi bahwa ID klien OAuth tidak ditetapkan, jalankan perintah cakupan global atau regional berikut. Setelah menjalankan perintah, periksa output untuk memastikan bahwa kolom ID klien OAuth kosong.

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

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

Memigrasikan resource Google Kubernetes Engine yang mendukung IAP

Tambahkan blok IAP berikut ke Definisi Resource Kustom (CRD) BackendConfig. Tindakan ini mengaktifkan IAP dengan klien OAuth 2.0 yang dikelola Google.

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

Menggunakan JWT akun layanan untuk mengautentikasi ke IAP

Anda dapat melakukan autentikasi ke IAP tanpa harus menggunakan OAuth Admin API yang tidak digunakan lagi dengan menggunakan JWT akun layanan.

Mendapatkan rahasia klien OAuth

Untuk mendapatkan rahasia klien OAuth tanpa menggunakan OAuth Admin API yang tidak digunakan lagi, gunakan Secret Manager dengan mengikuti petunjuk dalam contoh Terraform ini: google_secret_manager_secret.

Menentukan apakah Anda menggunakan OAuth Admin API

Untuk memeriksa apakah Anda menggunakan OAuth Admin API, selesaikan langkah-langkah berikut.

  1. Di konsol Google Cloud , buka halaman IAP API, lalu pilih project yang ingin Anda analisis.
    Buka halaman IAP API

  2. Dalam daftar Select Graphs, pilih Traffic by API method, lalu klik OK.

  3. Di bagian Methods, cari metode apa pun dengan awalan google.cloud.iap.v1.IdentityAwareProxyOAuthService, yang menunjukkan bahwa project menggunakan OAuth Admin API.