Langkah 4: Konfigurasi 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 mencakup ringkasan project Anda, kebijakannya, dan cakupan otorisasi akses yang diminta. Dengan mengonfigurasi layar izin OAuth untuk aplikasi Anda, Anda menentukan apa yang tersedia bagi pengguna dan peninjau aplikasi, serta mendaftarkan aplikasi Anda sehingga Anda dapat memublikasikannya nanti. Untuk mempelajari lebih lanjut layar izin OAuth, lihat Mengonfigurasi layar izin OAuth dan memilih cakupan.

  2. Buat kredensial akses OAuth: Anda harus 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 ID dan secret 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 Cloud de Confiance , buka layar izin OAuth.

    Buka layar izin OAuth

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

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

    • Internal: Hanya anggota organisasi Cloud de Confiance by S3NS Anda yang dapat membuat permintaan otorisasi ke aplikasi.

  3. Klik Create.

  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 Back to dashboard.

Membuat kredensial akses OAuth

  1. Di konsol Cloud de Confiance , buka Credentials.

    Buka Kredensial

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

  3. Dalam daftar Application type, klik aplikasi web.

  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 Create.

    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 ini.

Mengaktifkan IAP di load balancer

  1. Di konsol Cloud de Confiance , aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah konsol Cloud de Confiance , sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.

  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 Add principal.

  5. Masukkan detail di kolom berikut:

    • Akun utama baru: 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 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 Aplikasi, klik tombol IAP ke posisi aktif di baris yang sesuai dengan resource gemini-streamlit-app-backend.

  9. Di jendela Turn on 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.