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 menyeluruh secara terprogram 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 dengan menggunakan API. Anda tidak dapat mengubah klien OAuth melalui Konsol Google Cloud jika dibuat menggunakan API.
  • Klien OAuth yang dibuat oleh API dikunci hanya untuk penggunaan IAP, dan karenanya 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 brand 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 termasuk dalam organisasi Google Workspace yang sama dengan project. Merek publik menyediakan alur OAuth bagi siapa saja di internet.

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

  • Setelan ini ditetapkan ke internal dan harus ditetapkan secara manual ke publik jika diinginkan
  • Video tersebut ditetapkan ke status "belum ditinjau" dan peninjauan merek harus dipicu

Untuk menetapkan merek internal ke publik secara manual:

  1. Buka OAuth consent screen.
  2. Pilih project yang diinginkan dari menu drop-down.
  3. Di halaman OAuth consent screen, perhatikan bahwa User Type otomatis ditetapkan 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 untuk merek yang dibuat API yang belum ditinjau:

  1. Buka OAuth consent screen.
  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 memerlukan waktu hingga beberapa minggu, dan Anda akan menerima informasi progresnya melalui email. Pelajari lebih lanjut verifikasi. Saat proses verifikasi sedang berlangsung, Anda tetap dapat menggunakan aplikasi dalam organisasi Google Workspace. Pelajari lebih lanjut perilaku aplikasi Anda sebelum diverifikasi.

Sebelum memulai

Sebelum Anda 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 secret.)
  • clientauthconfig.clients.getWithSecret
  • clientauthconfig.clients.delete
  • clientauthconfig.clients.update

Izin ini disertakan dalam peran dasar Editor (roles/editor) dan Pemilik (roles/owner), tetapi sebaiknya Anda membuat peran kustom yang berisi izin ini dan memberikannya kepada pemanggil.

Menyiapkan OAuth untuk IAP

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

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

    gcloud iap oauth-brands list

    Berikut adalah contoh respons gcloud, jika merek tersebut 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 diperlukan saat memanggil API ini:

    • supportEmail: Email dukungan yang ditampilkan di layar izin OAuth. Alamat email ini dapat berupa alamat pengguna atau alias Google Grup. Meskipun akun layanan juga memiliki alamat email, alamat tersebut bukan alamat email yang sebenarnya valid, dan tidak dapat digunakan saat membuat merek. Namun, akun layanan dapat menjadi pemilik Grup Google. Buat Google Grup baru atau konfigurasikan 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 merek 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 client ID (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: