Halaman ini menjelaskan cara menggunakan parameter kueri dan header Identity-Aware Proxy (IAP) untuk meningkatkan UI aplikasi atau menyediakan opsi pemecahan masalah.
Parameter Kueri
Tindakan yang berbeda dapat dilakukan dengan menetapkan parameter gcp-iap-mode dalam string kueri URL.
Parameter kueri ini dapat disertakan dengan jalur apa pun, bukan hanya URL root.
Meneruskan identitas pengguna
Meneruskan parameter value berikut akan menampilkan kamus JSON dengan identitas pengguna:
YOUR_APP_URL?gcp-iap-mode=IDENTITY
{"email":"accounts.google.com:USER_EMAIL","sub":"accounts.google.com:118133858486581853996"}
Anda mungkin menganggap nilai ini berguna untuk mempersonalisasi aplikasi, seperti dengan menampilkan nama pengguna, untuk meneruskan identitas ke halaman lain, atau mengambil data penggunaan dalam log.
Menghapus login pengguna
Nilai parameter berikut menghapus cookie login IAP:
YOUR_APP_URL?gcp-iap-mode=CLEAR_LOGIN_COOKIE
Meneruskan parameter ini akan menghapus semua cookie yang dikeluarkan IAP
untuk aplikasi Anda dan mengarahkan browser ke YOUR_APP_URL. Jika browser Anda memiliki
sesi yang valid dengan penyedia identitas (IdP) aplikasi Anda, login otomatis
mungkin terjadi jika hanya ada satu akun yang digunakan dengan IdP. Jika ada
beberapa akun yang digunakan, halaman pemilihan akun akan terbuka untuk memungkinkan peralihan profil.
Menguji verifikasi JWT
IAP membantu Anda menguji logika verifikasi JWT dengan meneruskan JWT yang tidak valid ke halaman web pengujian.
Misalnya, IAP meneruskan JWT dengan tanda tangan yang tidak valid
untuk permintaan apa pun yang berisi parameter kueri
gcp-iap-mode=SECURE_TOKEN_TEST dan iap-secure-token-test-type=SIGNATURE.
Logika verifikasi Anda harus menangkap tanda tangan yang tidak valid.
Anda dapat menguji logika verifikasi terhadap salah satu skenario berikut dengan menambahkan parameter yang sesuai ke permintaan.
| Parameter | Kasus pengujian |
|---|---|
| ?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=NOT_SET | JWT yang valid. |
| ?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=FUTURE_ISSUE | Tanggal penerbitan ditetapkan pada masa mendatang. |
| ?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=PAST_EXPIRATION | Tanggal habis masa berlaku ditetapkan di masa lalu. |
| ?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=ISSUER | Penerbit salah. |
| ?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=AUDIENCE | Audiens salah. |
| ?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=SIGNATURE | Ditandatangani menggunakan penanda tangan yang salah. |
Header khusus
Mendeteksi respons dari IAP
Saat IAP menghasilkan respons HTTP, seperti saat menolak
akses (403) atau meminta autentikasi (302 atau 401), IAP akan menambahkan
header respons HTTP X-Goog-IAP-Generated-Response. Dengan mendeteksi keberadaan
header ini, Anda dapat melakukan tindakan seperti:
Bedakan antara pesan error yang dihasilkan oleh IAP dan pesan error yang dihasilkan oleh aplikasi Anda.
Mendeteksi kapan kredensial IAP perlu ditambahkan ke permintaan.