Halaman ini menjelaskan kondisi Identity and Access Management (IAM) nama host dan jalur.
Anda dapat mengamankan resource Identity-Aware Proxy (IAP) menggunakan
nama host dan jalur URL permintaan.
Misalnya, kondisi IAM request.path.startsWith
dapat
digunakan untuk hanya memberikan akses kepada karyawan dalam grup Privileged Access jika
jalur URL diawali dengan /admin
.
Untuk mengetahui informasi selengkapnya tentang penggunaan nama host dan kondisi jalur, lihat atribut permintaan.
Normalisasi string
URL memiliki nama host dan jalur. Misalnya, URL
https://sheets.google.com/create?query=param
memiliki nama host sheets.google.com
dan jalur /create
.
Backend dapat menafsirkan nama host dan jalur dengan cara yang berbeda. Untuk menghilangkan ambiguitas, IAP akan menormalisasi string nama host dan jalur saat memeriksa kebijakan.
IAP melakukan dua pemeriksaan kebijakan saat permintaan memiliki jalur yang tidak dinormalisasi. Jika jalur yang tidak dinormalisasi lulus pemeriksaan kebijakan, IAP akan melakukan normalisasi jalur dan pemeriksaan kebijakan kedua akan dilakukan. Akses diberikan jika jalur yang tidak dinormalisasi dan dinormalisasi lulus pemeriksaan kebijakan.
Misalnya, jika permintaan memiliki jalur /internal;some_param/admin
,
IAP akan terlebih dahulu melakukan pemeriksaan
kebijakan pada jalur yang tidak dinormalisasi (/internal
). Jika pemeriksaan tersebut lulus,
IAP akan melakukan pemeriksaan kebijakan kedua pada jalur yang dinormalisasi
(/internal/admin
).
Nama host
Normalisasi nama host melibatkan hal berikut:
- Menghapus titik di akhir
- Mengubah karakter menjadi huruf kecil
- Mengonversi ke ASCII
Nama host yang menyertakan karakter non-ASCII akan dinormalisasi lebih lanjut menggunakan Punycode. Anda perlu menggunakan Punycode untuk menormalisasi string nama host agar pencocokan dapat dilakukan.
Untuk menormalisasi string nama host dengan Punycode, gunakan pengonversi seperti Punycoder.
Berikut adalah contoh nama host yang dinormalisasi:
FOO.com
dinormalisasi menjadifoo.com
café.fr
dinormalisasi menjadixn--caf-dma.fr
Jalur
Normalisasi jalur melibatkan hal berikut:
- Menghapus parameter jalur
- Me-resolve jalur relatif ke jalur absolut yang setara
Parameter jalur mencakup semua
karakter dari ;
ke /
berikutnya atau akhir jalur.
Permintaan yang berisi bagian jalur yang dimulai dengan ..;
dianggap
tidak valid. Misalnya, /..;bar/
dan /bar/..;/
menampilkan error HTTP 400: Bad
Request
.
Berikut adalah contoh jalur yang dinormalisasi:
/internal;some_param/admin
dinormalisasi menjadi/internal/admin
/a/../b
dinormalisasi menjadi/b
/bar;param1/baz;baz;param2
dinormalisasi menjadi/bar/baz
Akhiran subdomain
Kebijakan yang ditetapkan dengan request.host.endsWith("google.com")
cocok dengan
sub_domain.google.com
dan testgoogle.com
. Jika sasaran Anda adalah membatasi
kebijakan hanya untuk subdomain yang diakhiri dengan google.com
, tetapkan kebijakan Anda ke
request.host.endsWith(".google.com")
.