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 menentukan apa yang tersedia untuk pengguna dan peninjau aplikasi, serta mendaftarkan aplikasi agar dapat memublikasikannya nanti. Untuk mempelajari layar izin OAuth lebih lanjut, lihat Mengonfigurasi layar izin OAuth dan memilih cakupan.

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

  3. Mengaktifkan IAP di load balancer: Gunakan client ID dan secret OAuth untuk mengaktifkan IAP di load balancer yang Anda buat untuk aplikasi.

  4. Mengaktifkan IAP: Amankan aplikasi Anda dengan membuat prinsipal yang dapat mengakses aplikasi Anda, lalu aktifkan IAP.

  1. Di konsol Google Cloud, buka layar izin OAuth.

    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 Google Cloud organisasi 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 Save and Continue.

  7. Di halaman Cakupan, klik Simpan dan Lanjutkan.

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

    1. Klik Tambahkan pengguna.

    2. Masukkan alamat email Anda dan pengguna pengujian lain yang diberi otorisasi, 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 Client ID OAuth.

  3. Di daftar Application type, klik Web application.

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

  5. Di bagian Asal JavaScript resmi, klik Tambahkan URI, lalu masukkan URI berikut:

    https://DOMAIN_NAME
    

    Ganti DOMAIN_NAME dengan nama domain yang digunakan selama pembuatan sertifikat.

  6. Klik Buat.

    Layar Klien OAuth dibuat akan muncul, yang menampilkan Client ID dan Rahasia klien.

  7. Salin Client ID dan Rahasia klien. Anda akan memerlukan detailnya di langkah berikutnya dalam tutorial ini.

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:

    • New principals: Masukkan alamat email grup atau individu untuk memberi mereka akses ke aplikasi Anda. Salah satu dari berikut ini dapat menjadi akun utama:

      • Akun Google

      • Google Grup

      • Akun layanan

      • Domain Google Workspace

      Pastikan Anda menyertakan Akun Google yang aksesnya Anda miliki.

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

  7. Klik Save.

  8. Di halaman Identity-Aware Proxy, pada 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, pilih kotak centang untuk mengonfirmasi bahwa Anda telah membaca persyaratan konfigurasi dan mengonfigurasi backend Anda sebagaimana mestinya.

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