Untuk meningkatkan keamanan secara keseluruhan, IAP secara default menolak akses ke permintaan yang tidak memiliki Server Name Indication (SNI) yang cocok. Hal ini memungkinkan IAP membatasi pengalihan URL ke domain berbahaya. Fitur domain yang diizinkan IAP menyediakan lapisan keamanan tambahan untuk resource yang dilindungi IAP. Sebagai pemilik resource atau administrator IAP, Anda dapat membatasi akses ke resource yang dilindungi IAP untuk domain tertentu dengan mengonfigurasi fitur domain yang diizinkan.
Anda juga dapat mengonfigurasi domain yang diizinkan IAP dalam skenario berikut:
- Browser atau proxy perantara Anda memaksa penggabungan koneksi: Dalam skenario ini, Anda menerima respons HTTP 429 dan kode error
51
. Untuk mengatasi masalah ini, admin IAP dapat memperbarui daftar domain yang diizinkan agar menyertakan nama host Anda. - Nama host yang diberikan tidak cocok dengan sertifikat SSL di server: Dalam skenario ini, Anda menerima kode error
52
. Untuk mengatasi masalah ini, admin IAP dapat memperbarui daftar domain yang diizinkan agar menyertakan nama host Anda.
Mengonfigurasi domain yang diizinkan
Anda dapat menggunakan gcloud atau API untuk mengonfigurasi setelan domain yang diizinkan. Untuk mengonfigurasi domain yang diizinkan, gunakan kolom berikut:
enable
: Boolean. Mengaktifkan atau menonaktifkan fitur domain yang diizinkan.Domains
: String. Daftar domain yang diizinkan. Domain dapat berisi awalan karakter pengganti, seperti*.example.com.
Nama domain tidak boleh berisi karakter pengganti secara langsung di akhiran publik atau di domain level teratas. Contoh:*.com
,*.co.in
.
Untuk informasi selengkapnya, lihat IapSettings.
Untuk mengonfigurasi domain yang diizinkan IAP, selesaikan langkah-langkah berikut:
Konsol
- Buka halaman pembelian dalam aplikasi (IAP).
Buka Identity-Aware Proxy. - Pilih project, lalu pilih resource tempat Anda ingin mengaktifkan fitur domain yang diizinkan.
- Buka Setelan untuk fasilitas. Di bagian Domain yang diizinkan, pilih Aktifkan Domain yang Diizinkan.
- Tentukan daftar domain yang diizinkan, lalu klik Simpan.
gcloud
Berikut adalah beberapa contoh perintah untuk menentukan domain yang diizinkan.
Untuk informasi selengkapnya, lihat gcloud iap settings set
.
Jalankan perintah berikut:
gcloud iap settings set SETTING_FILE [--folder=FOLDER --organization=ORGANIZATION --project=/PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
Dengan SETTING_FILE
:
accessSettings:
allowed_domains_settings:
enable: true
domains: ["*.example.com", "*.example.net"]
Ganti kode berikut:
- FOLDER: ID folder.
- ORGANIZATION: ID organisasi.
- PROJECT: Project ID.
- RESOURCE_TYPE: Jenis resource IAP. Harus berupa
app-engine
,iap_web
,compute
,organization
, ataufolder
. - SERVICE: Nama layanan. Hal ini opsional jika
resource-type
adalahcompute
atauapp-engine
. - VERSION: Nama versi. Hal ini tidak berlaku untuk
compute
, dan bersifat opsional jikaresource-type
adalahapp-engine
.
API
Untuk mengonfigurasi domain yang diizinkan, selesaikan langkah-langkah berikut. Untuk informasi selengkapnya tentang penggunaan API untuk mengonfigurasi domain yang diizinkan, lihat IapSettings.
- Jalankan perintah berikut untuk menyiapkan file
iap_settings.json
. Perbarui nilainya sesuai kebutuhan.
{ "access_settings":{ "allowed_domains_settings":{ "enable": true "domains": [ "*.example.com", "*.exampe.net" ] } } }
- Dapatkan nama resource dengan menjalankan perintah
gcloud iap settings get
. Salin kolom nama dari output. Anda akan memerlukan nama tersebut pada langkah berikutnya.
gcloud iap settings get [--organization=ORGANIZATION --folder=FOLDER --project=/PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION]
- Ganti
RESOURCE_NAME
di perintah berikut dengan nama dari langkah sebelumnya.IapSettings
akan diperbarui.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @iap_settings.json \ "https://iap.googleapis.com/v1/RESOURCE_NAME:iapSettings?updateMask=iapSettings.accessSettings.allowedDomainsSettings.enable,iapSettings.accessSettings.allowedDomainsSettings.domains"
Pemecahan masalah
Masalah akses domain yang diizinkan
Jika Anda menerima Kode error 53, minta administrator IAP untuk menambahkan nama host Anda ke daftar domain yang diizinkan.