Langkah 4: Konfigurasikan Identity-Aware Proxy (IAP)

Pada langkah ini, Anda akan mengonfigurasi Identity-Aware Proxy (IAP) untuk menyediakan lapisan otorisasi terpusat bagi aplikasi yang di-deploy di Cloud Run, dengan melakukan hal berikut:

  1. Mengonfigurasi layar izin OAuth: Layar izin OAuth adalah perintah yang menyertakan ringkasan project Anda, kebijakannya, dan cakupan akses otorisasi yang diminta. Dengan mengonfigurasi layar izin OAuth untuk aplikasi Anda, Anda menentukan apa yang tersedia bagi pengguna dan peninjau aplikasi, serta mendaftarkan aplikasi Anda agar dapat dipublikasikan nanti. Untuk mempelajari lebih lanjut layar izin OAuth, lihat Mengonfigurasi layar izin OAuth dan memilih cakupan.

  2. Buat kredensial akses OAuth: Anda perlu membuat client ID OAuth untuk aplikasi dan domain Anda, sehingga aplikasi Anda dapat memanggil API yang diperlukan. Untuk mempelajari lebih lanjut kredensial OAuth, lihat Membuat kredensial akses.

  3. Aktifkan IAP di load balancer: Gunakan client ID dan rahasia klien OAuth untuk mengaktifkan IAP di load balancer yang Anda buat untuk aplikasi Anda.

  4. Aktifkan IAP: Amankan aplikasi Anda dengan membuat principal yang dapat mengakses aplikasi Anda, lalu aktifkan IAP.

  1. Di konsol Google Cloud , buka OAuth consent screen.

    Buka layar izin OAuth

  2. Pilih salah satu jenis pengguna berikut untuk aplikasi Anda:

    • Eksternal: Semua pengguna dengan Akun Google dapat membuat permintaan otorisasi. Untuk menyelesaikan tutorial ini, sebaiknya pilih Eksternal.

    • Internal: Hanya anggota organisasi Google Cloud Anda yang dapat membuat permintaan otorisasi ke aplikasi.

  3. Klik Buat.

  4. Di bagian Authorized domains, Add domain, dan tentukan nama domain yang digunakan selama pembuatan sertifikat.

  5. Di bagian Informasi kontak developer, masukkan alamat email Anda.

  6. Klik Simpan dan Lanjutkan.

  7. Di halaman Cakupan, klik Simpan dan Lanjutkan.

  8. Opsional: Jika Anda memilih Eksternal sebagai jenis pengguna, tambahkan pengguna penguji di halaman Pengguna penguji, sebagai berikut:

    1. Klik Add users.

    2. Masukkan alamat email Anda dan pengguna uji resmi lainnya, lalu klik Simpan dan lanjutkan.

  9. Tinjau ringkasan pendaftaran aplikasi Anda. Untuk melakukan perubahan, klik Edit. Jika pendaftaran aplikasi terlihat OK, klik Kembali ke dasbor.

Membuat kredensial akses OAuth

  1. Di konsol Google Cloud , buka Credentials.

    Buka Kredensial

  2. Klik Buat kredensial, lalu klik ID klien OAuth.

  3. Di daftar Application type, klik Web application.

  4. Di kolom Name, masukkan gemini-streamlit-app.

  5. Di bagian Authorized JavaScript origins, klik Add URI, lalu masukkan URI berikut:

    https://DOMAIN_NAME
    

    Ganti DOMAIN_NAME dengan nama domain yang digunakan selama pembuatan sertifikat.

  6. Klik Buat.

    Layar Oauth client created akan muncul, menampilkan Client ID dan Client secret.

  7. Salin Client ID dan Client secret. Anda akan memerlukan detail di langkah berikutnya dalam tutorial.

Mengaktifkan IAP di load balancer

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Di terminal Cloud Shell, jalankan perintah berikut:
    
          gcloud compute backend-services update gemini-streamlit-app-backend \
          --iap=enabled,oauth2-client-id=CLIENT_ID,oauth2-client-secret=CLIENT_SECRET \
          --global
          

    Ganti kode berikut:

    • CLIENT_ID: Client ID OAuth dari kredensial OAuth yang baru saja Anda buat.
    • CLIENT_SECRET: Rahasia klien OAuth dari kredensial OAuth yang baru saja Anda buat.

Menyiapkan dan menggunakan IAP

  1. Buka halaman Identity-Aware Proxy.

    Buka halaman Identity-Aware Proxy

  2. Pilih project Anda.

  3. Centang kotak di samping gemini-streamlit-app-backend.

  4. Klik Tambahkan akun utama.

  5. Masukkan detail di kolom berikut:

    • Akun utama baru: Masukkan alamat email grup atau individu untuk memberi mereka akses ke aplikasi Anda. Akun utama dapat berupa salah satu dari berikut ini:

      • Akun Google

      • Google Grup

      • Akun layanan

      • Domain Google Workspace

      Pastikan Anda menyertakan Akun Google yang dapat Anda akses.

  6. Dalam daftar Role, pilih Cloud IAP > IAP-secured Web App User.

  7. Klik Simpan.

  8. Di halaman Identity-Aware Proxy, di bagian Applications, klik tombol IAP ke posisi aktif di baris yang sesuai dengan resource gemini-streamlit-app-backend.

  9. Di jendela Aktifkan IAP yang muncul, centang kotak untuk mengonfirmasi bahwa Anda telah membaca persyaratan konfigurasi dan mengonfigurasi backend Anda dengan tepat.

  10. Klik Aktifkan. Setelah Anda mengaktifkan IAP, IAP akan memerlukan kredensial login untuk semua koneksi ke load balancer Anda. Hanya akun dengan peran IAP-Secured Web App User di project yang diberi akses.