Halaman ini menjelaskan cara menyiapkan kebijakan otorisasi untuk Secure Web Proxy.
Sebelum memulai
Tinjau halaman Ringkasan Secure Web Proxy dan Ringkasan kebijakan otorisasi.
-
- Network Security API
- Network Services API
- Certificate Manager API
Pastikan Anda memiliki peran dan izin yang sesuai.
Anda harus men-deploy dan mengaitkan instance Secure Web Proxy yang aktif dengan
GatewaySecurityPolicy. Untuk mengetahui informasi selengkapnya, lihat Men-deploy instance Secure Web Proxy.Untuk mengonfigurasi kebijakan otorisasi Secure Web Proxy, Anda harus mengaktifkan kebijakan pemeriksaan TLS.
Membuat kebijakan otorisasi
Bagian ini menjelaskan cara membuat berbagai jenis kebijakan otorisasi yang dilampirkan ke instance Secure Web Proxy.
Untuk membuat kebijakan otorisasi untuk Secure Web Proxy, lakukan hal berikut:
- Konfigurasi file YAML yang menentukan target dan aturan.
- Impor file menggunakan
perintah
gcloud network-security authz-policies import.
Kebijakan otorisasi berdasarkan identitas mTLS
Secure Web Proxy mendukung penerapan aturan keamanan berdasarkan identitas yang berasal dari sertifikat TLS mutual (mTLS). Menerapkan aturan berdasarkan identitas ini sangat berguna di lingkungan zero trust, di mana traffic antara klien dan proxy diamankan oleh mTLS. Untuk mengetahui informasi selengkapnya, lihat Kebijakan otorisasi berdasarkan principal.
Contoh berikut menunjukkan kebijakan otorisasi untuk instance Secure Web Proxy bernama swp1. Contoh ini mengasumsikan bahwa
traffic ke proxy menggunakan protokol HTTPS.
Kebijakan dengan profil REQUEST_AUTHZ menerapkan bahwa semua traffic ke
example.com/mcp memerlukan autentikasi mTLS dari
principal tertentu sebelum traffic diizinkan untuk melewati. Kebijakan ini
juga menolak semua traffic keluar yang tidak ditujukan ke
example.com/mcp.
Buat file YAML kebijakan otorisasi.
Contoh berikut membuat file
authz-policy.yaml. Kebijakan ini hanya mengizinkan traffic ke host dan jalur yang ditentukan jika klien menyajikan sertifikat yang cocok dengan akun utamaSPIFFE IDyang ditentukan.$ cat >authz-policy.yaml <<EOF name: test-authz-policy-mtls target: resources: - "projects/ PROJECT_ID /locations/ LOCATION /gateways/swp1" policyProfile: REQUEST_AUTHZ httpRules: - to: operations: - hosts: - exact: "example.com" paths: - exact: "/mcp" from: sources: - principals: - principalSelector: CLIENT_CERT_URI_SAN principal: exact: "spiffe:// PROJECT_ID .global.123.workload.id.goog/ns/ns1/sa/hellomcp" action: ALLOW EOFGanti kode berikut:
PROJECT_ID: ID Google Cloud project AndaLOCATION: region instance Secure Web Proxy Anda
Buat kebijakan otorisasi dan impor file YAML menggunakan perintah
gcloud network-security authz-policies import.gcloud beta network-security authz-policies import my-authz-policy-allow --source=authz-policy.yaml --location= LOCATIONGanti
LOCATIONdengan region instance Secure Web Proxy Anda.
Kebijakan otorisasi berdasarkan akun layanan atau tag
Anda dapat menerapkan kebijakan otorisasi berdasarkan akun layanan atau tag yang dilampirkan ke berbagai resource Google Cloud .
Contoh ini mengasumsikan bahwa Anda telah menyelesaikan langkah-langkah berikut:
Membuat akun layanan dan melampirkannya ke Google Cloud resource.
Membuat tag dan melampirkannya ke Google Cloud resource sebagai pasangan nilai kunci. Saat Anda membuat tag, tetapkan tanda
--purposekeGCE_FIREWALL. Kebijakan otorisasi memerlukan tujuanGCE_FIREWALLuntuk menerapkan tag.
Akun layanan
Buat file YAML kebijakan otorisasi untuk mengizinkan permintaan tertentu.
Contoh berikut membuat file
authz-policy.yamluntuk instance Secure Web Proxy bernamaswp1. Kebijakan dikonfigurasi untuk mengizinkan permintaan dari instance virtual machine (VM) Compute Engine dengan akun layananmy-sa-123@56788.iam.gserviceaccount.comuntuk mencapai jalur example1.com/url1.$ cat >authz-policy.yaml <<EOF name: my-authz-policy-allow target: resources: - "projects/PROJECT_ID/locations/ LOCATION /gateways/swp1" policyProfile: REQUEST_AUTHZ httpRules: - from: sources: - resources: - iamServiceAccount: exact: "my-sa-123@56788.iam.gserviceaccount.com" to: operations: - hosts: - exact: "example1.com" paths: - prefix: "/url1" action: ALLOW EOFGanti kode berikut:
PROJECT_ID: ID Google Cloud project AndaLOCATION: region instance Secure Web Proxy Anda
Buat kebijakan otorisasi dan impor file YAML menggunakan perintah
gcloud network-security authz-policies import.Contoh perintah berikut menunjukkan cara mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi:
gcloud network-security authz-policies import my-authz-policy-allow --source=authz-policy.yaml --location= LOCATIONGanti
LOCATIONdengan region instance Secure Web Proxy Anda.
Tag
Buat file YAML kebijakan otorisasi untuk mengizinkan permintaan tertentu.
Contoh berikut membuat file
authz-policy-tag.yamluntuk instance Secure Web Proxy bernamaswp1. Kebijakan hanya mengizinkan permintaan yang berasal dari resource Google Cloud dengan nilai tagTAG_VALUE_PERMANENT_IDuntuk mengakses jalur URL example1.com/url1.$ cat >authz-policy-tag.yaml <<EOF name: my-authz-policy-tag-allow target: resources: - "projects/PROJECT_ID/locations/ LOCATION /gateways/ GATEWAY_NAME " policyProfile: REQUEST_AUTHZ httpRules: - from: sources: - resources: - tagValueIdSet: ids: ["TAG_VALUE_PERMANENT_ID"] to: operations: - hosts: - exact: "example1.com" paths: - exact: "/url1" action: ALLOW EOFGanti kode berikut:
PROJECT_ID: ID Google Cloud project AndaLOCATION: region instance Secure Web Proxy AndaGATEWAY_NAME: nama gateway Secure Web Proxy AndaTAG_VALUE_PERMANENT_ID: ID permanen nilai tag, sepertitagValues/123456789012
Buat kebijakan otorisasi dan impor file YAML menggunakan perintah
gcloud network-security authz-policies import.Contoh perintah berikut mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi di region Google Cloud yang ditentukan:
gcloud network-security authz-policies import my-authz-policy-tag-allow --source=authz-policy-tag.yaml --location= LOCATIONGanti
LOCATIONdengan region instance Secure Web Proxy Anda.
Kebijakan otorisasi untuk mendelegasikan keputusan otorisasi
Untuk keputusan otorisasi yang kompleks yang tidak dapat dinyatakan menggunakan aturan
ALLOW atau DENY standar, Anda dapat membuat kebijakan otorisasi
dengan tindakan CUSTOM. Kemudian, Anda dapat mendelegasikan keputusan otorisasi ke ekstensi otorisasi (Service Extensions).
Saat Anda mengonfigurasi kebijakan dengan tindakan CUSTOM, Secure Web Proxy akan memindahkan payload atau metadata permintaan ke Service Extensions. Bergantung pada respons dari Service Extensions, proxy akan mengizinkan atau menolak traffic.
Secure Web Proxy mendukung jenis delegasi berikut:
Mendelegasikan keputusan otorisasi permintaan ke Service Extensions: Anda dapat menggunakan kebijakan otorisasi yang dikonfigurasi dengan tindakan
CUSTOMdan profilREQUEST_AUTHZuntuk mendelegasikan keputusan berdasarkan metadata dan header permintaan. Dalam mode ini, keputusan akses didelegasikan ke ekstensi otorisasi. Anda dapat menggunakan mode ini untuk memverifikasi identitas dan izin.Mendelegasikan keputusan otorisasi konten ke Service Extensions: Anda dapat menggunakan kebijakan otorisasi dengan tindakan
CUSTOMdan profilCONTENT_AUTHZuntuk mendelegasikan keputusan ke ekstensi otorisasi berdasarkan payload data permintaan yang sebenarnya. Mode ini memungkinkan Anda mengaktifkan pemeriksaan konten mendalam dan penegakan keamanan, sehingga Anda dapat memindai informasi sensitif atau pola berbahaya dengan berintegrasi dengan layanan seperti Model Armor.
Batasan
Saat Anda menerapkan kebijakan otorisasi untuk Secure Web Proxy, batasan berikut berlaku:
Batasan target dan konektivitas: ekstensi otorisasi untuk Secure Web Proxy tidak mendukung Identity-Aware Proxy (IAP) sebagai target langsung.
Konflik dan kompatibilitas kebijakan: jika Anda memiliki kebijakan keamanan gateway dengan aturan keamanan yang ada, Anda tidak perlu menghapusnya. Secure Web Proxy mengabaikan aturan ini saat Anda menerapkan kebijakan otorisasi ke instance Anda.
Persyaratan protokol dan pemeriksaan: untuk mengonfigurasi kebijakan otorisasi Secure Web Proxy, Anda harus mengaktifkan pemeriksaan TLS.