Membuat klien OAuth secara terprogram untuk IAP

Halaman ini menjelaskan cara membuat klien OAuth secara terprogram untuk digunakan dengan IAP, sehingga Anda dapat menyiapkan IAP secara terprogram dari awal hingga akhir untuk aplikasi internal.

Batasan umum

Ada beberapa batasan untuk klien OAuth yang dibuat secara terprogram menggunakan API ini:

  • Klien OAuth yang dibuat oleh API hanya dapat diubah menggunakan API. Anda tidak dapat mengubah klien OAuth melalui konsol Google Cloud jika klien tersebut dibuat menggunakan API.
  • Klien OAuth yang dibuat oleh API hanya dikunci untuk penggunaan IAP, dan oleh karena itu, API tidak mengizinkan pembaruan apa pun pada URI pengalihan atau atribut lainnya.
  • API tidak beroperasi pada klien OAuth yang dibuat menggunakan konsol Google Cloud .
  • Hanya 500 klien OAuth yang diizinkan per project saat menggunakan API.
  • Merek layar izin OAuth yang dibuat API memiliki batasan tertentu. Lihat bagian di bawah untuk mengetahui informasi selengkapnya.

Memahami merek dan status branding

Layar izin OAuth, yang berisi informasi branding untuk pengguna, dikenal sebagai brand. Merek dapat dibatasi untuk pengguna internal atau pengguna publik. Merek internal membuat alur OAuth dapat diakses oleh seseorang yang tergabung dalam organisasi Google Workspace yang sama dengan project. Merek publik membuat alur OAuth tersedia bagi siapa saja di internet.

Merek dapat dibuat secara manual atau terprogram melalui API. Merek yang dibuat melalui API dikonfigurasi secara otomatis dengan setelan yang berbeda:

  • Setelannya ditetapkan ke internal dan harus ditetapkan secara manual ke publik jika diinginkan
  • Statusnya ditetapkan ke "belum ditinjau" dan peninjauan merek harus dipicu

Untuk menyetel brand internal ke publik secara manual:

  1. Buka layar izin OAuth.
  2. Pilih project yang diinginkan dari menu drop-down.
  3. Di halaman OAuth consent screen, perhatikan bahwa User Type otomatis disetel ke Internal. Untuk menyetelnya ke Publik, klik Edit Aplikasi. Opsi konfigurasi lainnya akan tersedia.
  4. Di bagian Jenis aplikasi, klik Publik.

Untuk memicu peninjauan merek bagi merek yang dibuat API dan belum ditinjau:

  1. Buka layar izin OAuth.
  2. Pilih project yang diinginkan dari menu drop-down.
  3. Di halaman OAuth consent screen, masukkan informasi yang diperlukan, lalu klik Submit for verification.

Proses verifikasi mungkin membutuhkan waktu hingga beberapa minggu, dan Anda akan menerima informasi progresnya melalui email. Pelajari lebih lanjut verifikasi. Selama proses verifikasi berlangsung, Anda tetap dapat menggunakan aplikasi dalam organisasi Google Workspace Anda. Pelajari lebih lanjut perilaku aplikasi Anda sebelum diverifikasi.

Sebelum memulai

Sebelum dapat membuat klien, pastikan terlebih dahulu bahwa pemanggil telah diberi izin berikut:

  • clientauthconfig.brands.list
  • clientauthconfig.brands.create
  • clientauthconfig.brands.get
  • clientauthconfig.clients.create
  • clientauthconfig.clients.listWithSecrets (Hanya diperlukan untuk mencantumkan klien OAuth dengan rahasia.)
  • clientauthconfig.clients.getWithSecret
  • clientauthconfig.clients.delete
  • clientauthconfig.clients.update

Izin ini disertakan dalam peran dasar Editor (roles/editor) dan Pemilik (roles/owner), tetapi sebaiknya buat peran khusus yang berisi izin ini dan berikan kepada pemanggil.

Menyiapkan OAuth untuk IAP

Langkah-langkah berikut menjelaskan cara mengonfigurasi layar izin serta membuat dan klien oauth untuk IAP.

  1. Periksa apakah Anda sudah memiliki merek yang ada dengan menggunakan perintah list. Anda hanya dapat memiliki satu merek per project.

    gcloud iap oauth-brands list

    Berikut adalah contoh respons gcloud, jika merek ada:

    name: projects/[PROJECT_NUMBER]/brands/[BRAND_ID]
    applicationTitle: [APPLICATION_TITLE]
    supportEmail: [SUPPORT_EMAIL]
    orgInternalOnly: true
    
  2. Jika tidak ada merek, gunakan perintah create:

    gcloud iap oauth-brands create --application_title=APPLICATION_TITLE --support_email=SUPPORT_EMAIL

    Kolom di atas wajib diisi saat memanggil API ini:

    • supportEmail: Email dukungan yang ditampilkan di layar izin OAuth. Alamat email ini dapat berupa alamat pengguna atau alias Grup Google. Meskipun akun layanan juga memiliki alamat email, alamat email tersebut bukan alamat email yang valid dan tidak dapat digunakan saat membuat merek. Namun, akun layanan dapat menjadi pemilik Grup Google. Buat Grup Google baru atau konfigurasi grup yang ada dan tetapkan akun layanan yang diinginkan sebagai pemilik grup.

    • applicationTitle: Nama aplikasi yang ditampilkan di layar izin OAuth.

    Respons berisi kolom berikut:

    name: projects/[PROJECT_NUMBER]/brands/[BRAND_ID]
    applicationTitle: [APPLICATION_TITLE]
    supportEmail: [SUPPORT_EMAIL]
    orgInternalOnly: true
    

Membuat Klien OAuth IAP

  1. Gunakan perintah create untuk membuat klien. Gunakan brand name dari langkah sebelumnya.

    gcloud iap oauth-clients create projects/PROJECT_NUMBER/brands/BRAND-ID --display_name=NAME

    Respons berisi kolom berikut:

    name: projects/[PROJECT_NUMBER]/brands/[BRAND_NAME]/identityAwareProxyClients/[CLIENT_ID]
    secret: [CLIENT_SECRET]
    displayName: [NAME]
    

Gunakan ID klien (client_id dalam contoh di atas) dan secret untuk mengaktifkan IAP. Lihat topik berikut untuk mengetahui informasi selengkapnya tentang cara mengaktifkan IAP menggunakan kredensial yang baru saja Anda buat: