Di Load Balancer Aplikasi, kebijakan otorisasi dipanggil setelah mengevaluasi ekstensi rute, kebijakan keamanan jaringan (dievaluasi oleh Google Cloud Armor), kebijakan berbagi resource lintas origin (CORS), dan Identity-Aware Proxy (IAP), tetapi sebelum menjalankan tindakan pengelolaan traffic.
Halaman ini menunjukkan cara menyiapkan kebijakan otorisasi untuk Load Balancer Aplikasi.
Sebelum memulai
- Pahami Ringkasan kebijakan otorisasi.
-
- Network Security API
- Network Services API
Menyiapkan load balancer
Jika Anda belum membuat load balancer, lihat halaman berikut untuk menyiapkan Load Balancer Aplikasi pilihan Anda:
- Untuk membuat Load Balancer Aplikasi eksternal global, lihat Menyiapkan Load Balancer Aplikasi eksternal global dengan backend grup instance VM.
Untuk membuat Load Balancer Aplikasi eksternal regional, lihat Menyiapkan Load Balancer Aplikasi eksternal regional dengan backend grup instance VM.
Untuk membuat Load Balancer Aplikasi internal regional, lihat Menyiapkan Load Balancer Aplikasi internal regional dengan backend grup instance VM.
- Untuk membuat Load Balancer Aplikasi internal lintas region, lihat Menyiapkan Load Balancer Aplikasi internal lintas region dengan backend grup instance VM.
Membuat dan mengonfigurasi tag aman atau akun layanan
Dengan Load Balancer Aplikasi internal, Anda dapat secara opsional menerapkan kebijakan otorisasi berdasarkan tag aman dan akun layanan yang dilampirkan ke VM klien. Jika Anda berencana untuk menerapkan kebijakan otorisasi berbasis tag, gunakan Resource Manager untuk membuat tag.
Jika menggunakan Load Balancer Aplikasi eksternal, Anda tidak perlu membuat dan mengonfigurasi tag aman.
Untuk mengetahui informasi selengkapnya, lihat Menggunakan Tag untuk firewall dan Akun layanan.
Melampirkan akun layanan ke VM klien
Untuk mengetahui informasi langkah demi langkah tentang cara menambahkan akun layanan ke instance VM, lihat dokumen berikut:
- Untuk menyiapkan akun layanan selama pembuatan VM, lihat Membuat VM yang menggunakan akun layanan yang dikelola pengguna.
- Untuk menyiapkan akun layanan di VM yang ada, lihat Mengubah akun layanan yang ditambahkan.
Membuat kunci dan nilai tag yang aman
Sebelum mengikat tag aman dengan template grup instance, Anda harus membuat
kunci dan nilai tag. Saat membuat tag, tetapkan tag tersebut dengan tujuan GCE_FIREWALL
. Fitur jaringan Google Cloud, termasuk Secure Web Proxy
dan kebijakan otorisasi, memerlukan tujuan GCE_FIREWALL
untuk menerapkan tag.
Untuk membuat tag yang aman, Anda memerlukan peran Tag Administrator (roles/resourcemanager.tagAdmin
).
Konsol
Di konsol Google Cloud, buka halaman Tag.
Klik
Create .Di kolom Tag key description, masukkan deskripsi.
Centang kotak Untuk digunakan dengan firewall jaringan.
Dalam daftar Project, pilih project Google Cloud tempat Anda ingin membuat tag.
Di kolom Network, pilih
LB_NETWORK
.Klik
Tambahkan nilai.Di kolom Tag value, masukkan
TAG_VALUE
. Nilai harus berupa nilai numerik.Di kolom Tag value description, masukkan deskripsi.
Setelah selesai menambahkan nilai tag, klik Buat kunci tag.
gcloud
Buat kunci tag aman.
gcloud resource-manager tags keys create TAG_KEY \ --parent=organizations/ORG_ID \ --purpose=GCE_FIREWALL \ --purpose-data=network=LB_NETWORK
Ganti kode berikut:
TAG_KEY
: nama kunci tag aman Anda.ORG_ID
: ID organisasi Anda.LB_NETWORK
: nama jaringan VPC Anda.
Tambahkan nilai tag aman ke kunci tag numerik.
gcloud resource-manager tags values create TAG_VALUE \ --parent=ORG_ID/TAG_KEY
Ganti
TAG_VALUE
dengan nilai tag numerik.
Mengikat tag aman ke template grup instance
Administrator tag dapat mengikat tag aman ke setiap instance VM atau template grup instance dan melampirkan nilai tag ke VM atau backend template.
Untuk mengikat tag aman, Anda memerlukan peran Tag User (roles/resourcemanager.tagUser
).
Tentukan awalan nama lengkap untuk project dan zona Anda:
FULL_NAME_PREFIX=//compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/
Ganti kode berikut:
PROJECT_ID
: ID project Anda.ZONE
: zona tempat grup instance terkelola berada.
Dapatkan ID template grup instance:
TEMPLATE_ID=$(gcloud compute instance-templates describe TEMPLATE_NAME --region=LOCATION --format='value(id)')
Ganti kode berikut:
TEMPLATE_NAME
: nama template grup instance Anda.LOCATION
: region Google Cloud Anda.
Gabungkan nilai
FULL_NAME_PREFIX
danTEMPLATE_ID
:PARENT="$FULL_NAME_PREFIX$TEMPLATE_ID" echo $PARENT
Buat binding.
gcloud resource-manager tags bindings create \ --location LOCATION \ --tag-value ORG_ID/TAG_KEY/TAG_VALUE \ --parent PARENT
Ganti kode berikut:
ORG_ID
: ID organisasi Anda.LOCATION
: region Google Cloud Anda.TAG_KEY
: nama kunci tag aman Anda.TAG_VALUE
: nilai tag numerik.
Membuat kebijakan otorisasi
Untuk membuat kebijakan otorisasi, Anda membuat file YAML yang menentukan target
dan aturan, lalu mengimpor file menggunakan perintah gcloud beta network-security
authz-policies
.
Bagian ini memberikan petunjuk untuk membuat berbagai jenis kebijakan otorisasi yang dilampirkan ke aturan penerusan load balancer.
Kebijakan otorisasi untuk menolak permintaan
Global dan Lintas region
Jika Anda menggunakan Load Balancer Aplikasi eksternal global atau Load Balancer Aplikasi internal lintas region, ikuti langkah-langkah berikut untuk membuat dan mengimpor kebijakan otorisasi:
Buat file kebijakan otorisasi untuk menolak permintaan tertentu.
Contoh berikut membuat file
authz-policy-deny.yaml
untuk aturan pengalihanLB_FORWARDING_RULE
di lokasiglobal
. Kebijakan ini menolak klien dari*.hello.com
untuk mengakses jalur URL/api/payments
.$ cat >authz-policy-deny.yaml <<EOF name: my-authz-policy-deny target: loadBalancingScheme: LB_SCHEME resources: - "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/forwardingRules/LB_FORWARDING_RULE" httpRules: - from: sources: - principals: - suffix: ".hello.com" to: operations: - paths: - prefix: "/api/payments" action: DENY EOF
Ganti kode berikut:
LB_SCHEME
: skema load balancing Anda. Untuk Load Balancer Aplikasi eksternal global, tetapkan skema keEXTERNAL_MANAGED
. Untuk Load Balancer Aplikasi internal lintas-region, tetapkan skema keINTERNAL_MANAGED
.PROJECT_ID
: ID project Google Cloud Anda.LB_FORWARDING_RULE
: nama aturan penerusan load balancer.
Buat kebijakan otorisasi dan impor file YAML.
Contoh perintah berikut mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi:
gcloud beta network-security authz-policies import my-authz-policy-deny \ --source=authz-policy-deny.yaml \ --location=global
Regional
Jika Anda menggunakan Load Balancer Aplikasi eksternal regional atau Load Balancer Aplikasi internal regional, ikuti langkah-langkah berikut untuk membuat dan mengimpor kebijakan otorisasi:
Buat file kebijakan otorisasi untuk mengizinkan permintaan tertentu.
Contoh berikut membuat file
authz-policy-deny.yaml
untuk aturan pengalihanLB_FORWARDING_RULE
di region Google Cloud. Kebijakan ini menolak klien dengan identitas yang cocok dengan*.hello.com
untuk mengakses jalur URL/api/payments
. Kebijakan ini juga menolak akses ke VM klien apa pun dengan akun layananmy-sa-123@PROJECT_ID.iam.gserviceaccount.com
ke URL/api/payments
.$ cat >authz-policy-deny.yaml <<EOF name: my-authz-policy-deny target: loadBalancingScheme: LB_SCHEME resources: - "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/LOCATION/forwardingRules/LB_FORWARDING_RULE" httpRules: - from: sources: - principals: - suffix: ".hello.com" to: operations: - paths: - prefix: "/api/payments" - from: sources: - resources: - iamServiceAccount: exact: "my-sa-123@PROJECT_ID.iam.gserviceaccount.com" to: operations: - paths: - prefix: "/api/payments" action: DENY EOF
Ganti kode berikut:
LB_SCHEME
: skema load balancing Anda. Untuk Load Balancer Aplikasi eksternal regional, tetapkan skema keEXTERNAL_MANAGED
. Untuk Load Balancer Aplikasi internal regional, tetapkan skema keINTERNAL_MANAGED
.PROJECT_ID
: ID project Google Cloud Anda.LOCATION
: region Google Cloud Anda.LB_FORWARDING_RULE
: nama aturan penerusan load balancer.
Buat kebijakan otorisasi dan impor file YAML.
Contoh perintah berikut mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi di region
LOCATION
:gcloud beta network-security authz-policies import my-authz-policy-deny \ --source=authz-policy-deny.yaml \ --location=LOCATION
Kebijakan otorisasi untuk mengizinkan permintaan
Global dan Lintas region
Jika Anda menggunakan Load Balancer Aplikasi eksternal global atau Load Balancer Aplikasi internal lintas region, ikuti langkah-langkah berikut untuk membuat dan mengimpor kebijakan otorisasi:
Buat file kebijakan otorisasi untuk mengizinkan permintaan tertentu.
Contoh berikut membuat file
authz-policy-allow.yaml
untuk aturan pengalihanLB_FORWARDING_RULE
di lokasiglobal
. Kebijakan ini hanya mengizinkan klien dari*.example.com
untuk mengakses jalur URL/api/payments
.$ cat >authz-policy-allow.yaml <<EOF name: my-authz-policy-allow target: loadBalancingScheme: LB_SCHEME resources: - "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/forwardingRules/LB_FORWARDING_RULE" httpRules: - from: sources: - principals: - suffix: ".example.com" to: operations: - paths: - exact: "/api/payments" action: ALLOW EOF
Ganti kode berikut:
LB_SCHEME
: skema load balancing Anda. Untuk Load Balancer Aplikasi eksternal global, tetapkan skema keEXTERNAL_MANAGED
. Untuk Load Balancer Aplikasi internal lintas-region, tetapkan skema keINTERNAL_MANAGED
.PROJECT_ID
: ID project Google Cloud Anda.LB_FORWARDING_RULE
: nama aturan penerusan load balancer.
Buat kebijakan otorisasi dan impor file YAML.
Contoh perintah berikut mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi:
gcloud beta network-security authz-policies import my-authz-policy-allow \ --source=authz-policy-allow.yaml \ --location=global
Regional
Jika Anda menggunakan Load Balancer Aplikasi eksternal regional atau Load Balancer Aplikasi internal regional, ikuti langkah-langkah berikut untuk membuat dan mengimpor kebijakan otorisasi:
Buat file kebijakan otorisasi untuk mengizinkan permintaan tertentu.
Contoh berikut membuat file
authz-policy-allow.yaml
untuk aturan penerusanLB_FORWARDING_RULE
di region Google Cloud dari Load Balancer Aplikasi internal regional. Kebijakan ini hanya mengizinkan klien dari*.example.com
untuk mengakses jalur URL/api/payments
saat permintaan berasal dari VM dengan tag resourceTAG_VALUE
.$ cat >authz-policy-allow.yaml <<EOF name: my-authz-policy-allow target: loadBalancingScheme: LB_SCHEME resources: - "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/LOCATION/forwardingRules/LB_FORWARDING_RULE" httpRules: - from: sources: - principals: - suffix: ".example.com" resources: - tagValueIdSet: - ids: "TAG_VALUE" to: operations: - paths: - exact: "/api/payments" action: ALLOW EOF
Ganti kode berikut:
LB_SCHEME
: skema load balancing Anda. Jika Anda menggunakan Load Balancer Aplikasi eksternal regional, tetapkan skema keEXTERNAL_MANAGED
. Jika Anda menggunakan Load Balancer Aplikasi internal regional, tetapkan skema keINTERNAL_MANAGED
.PROJECT_ID
: ID project Google Cloud Anda.LOCATION
: region Google Cloud Anda.LB_FORWARDING_RULE
: nama aturan penerusan load balancer.
Buat kebijakan otorisasi dan impor file YAML.
Contoh perintah berikut mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi di region
LOCATION
:gcloud beta network-security authz-policies import my-authz-policy-allow \ --source=authz-policy-allow.yaml \ --location=LOCATION
Kebijakan otorisasi untuk didelegasikan ke ekstensi layanan
Sebelum memulai, siapkan mesin otorisasi eksternal. Untuk mengetahui informasi selengkapnya tentang ekstensi layanan, lihat Ringkasan info Cloud Load Balancing.
Global dan Lintas region
Jika Anda menggunakan Load Balancer Aplikasi eksternal global atau Load Balancer Aplikasi internal lintas region, ikuti langkah-langkah berikut untuk membuat dan mengimpor kebijakan otorisasi:
Buat file kebijakan otorisasi untuk mendelegasikan permintaan tertentu ke layanan eksternal.
Contoh berikut membuat file
authz-policy-custom.yaml
untuk aturan penerusanLB_FORWARDING_RULE
di lokasiglobal
. Kebijakan memanggil ekstensiAUTHZ_EXTENSION
untuk semua traffic ke jalur URL/api/payments
saat permintaan berisi headerAuthorization
yang tidak kosong.$ cat >authz-policy-custom.yaml <<EOF name: my-authz-policy-custom target: loadBalancingScheme: LB_SCHEME resources: - "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/forwardingRules/LB_FORWARDING_RULE" httpRules: - to: operations: - paths: - exact: "/api/payments" when: 'request.headers["Authorization"] != ""' action: CUSTOM customProvider: authzExtension: resources: - "https://networkservices.googleapis.com/v1/projects/PROJECT_ID/locations/global/authzExtensions/AUTHZ_EXTENSION" EOF
Ganti kode berikut:
LB_SCHEME
: skema load balancing Anda. Untuk Load Balancer Aplikasi eksternal global, tetapkan skema keEXTERNAL_MANAGED
. Untuk Load Balancer Aplikasi internal lintas-region, tetapkan skema keINTERNAL_MANAGED
.PROJECT_ID
: ID project Google Cloud Anda.LB_FORWARDING_RULE
: nama aturan penerusan load balancer.AUTHZ_EXTENSION
: nama ekstensi otorisasi.
Buat kebijakan otorisasi dan impor file YAML.
Contoh perintah berikut mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi:
gcloud beta network-security authz-policies import my-authz-policy-custom \ --source=authz-policy-custom.yaml \ --location=global
Regional
Jika Anda menggunakan Load Balancer Aplikasi eksternal regional atau Load Balancer Aplikasi internal regional, ikuti langkah-langkah berikut untuk membuat dan mengimpor kebijakan otorisasi:
Buat file kebijakan otorisasi untuk mendelegasikan permintaan tertentu ke layanan eksternal.
Contoh berikut membuat file
authz-policy-custom.yaml
untuk aturan penerusanLB_FORWARDING_RULE
di region Google Cloud dari Load Balancer Aplikasi internal regional. Kebijakan ini memanggil ekstensiAUTHZ_EXTENSION
untuk semua traffic ke jalur URL/api/payments
saat permintaan berisi headerAuthorization
yang tidak kosong.$ cat >authz-policy-custom.yaml <<EOF name: my-authz-policy-custom target: loadBalancingScheme: LB_SCHEME resources: - "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/LOCATION/forwardingRules/LB_FORWARDING_RULE" httpRules: - to: operations: - paths: - exact: "/api/payments" when: 'request.headers["Authorization"] != ""' action: CUSTOM customProvider: authzExtension: resources: - "https://networkservices.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/authzExtensions/AUTHZ_EXTENSION" EOF
Ganti kode berikut:
LB_SCHEME
: skema load balancing Anda. Untuk Load Balancer Aplikasi eksternal regional, tetapkan skema keEXTERNAL_MANAGED
. Untuk Load Balancer Aplikasi internal regional, tetapkan skema keINTERNAL_MANAGED
.PROJECT_ID
: ID project Google Cloud Anda.LOCATION
: region Google Cloud Anda.LB_FORWARDING_RULE
: nama aturan penerusan load balancer.AUTHZ_EXTENSION
: nama ekstensi otorisasi.
Buat kebijakan otorisasi dan impor file YAML.
Contoh perintah berikut mengimpor file kebijakan yang dibuat sebelumnya dan membuat kebijakan otorisasi di region
LOCATION
:gcloud beta network-security authz-policies import my-authz-policy-custom \ --source=authz-policy-custom.yaml \ --location=LOCATION
Menguji kebijakan otorisasi
Untuk menguji kebijakan otorisasi, kirim beberapa traffic ke load balancer. Untuk mengetahui informasi selengkapnya, lihat halaman berikut:
- Jika Anda menggunakan Load Balancer Aplikasi eksternal global, lihat Menguji traffic yang dikirim ke instance Anda.
Jika Anda menggunakan Load Balancer Aplikasi eksternal regional, lihat Menguji load balancer.
Jika Anda menggunakan Load Balancer Aplikasi internal regional, lihat Menguji load balancer.
- Jika Anda menggunakan Load Balancer Aplikasi internal lintas region, lihat Menguji load balancer.
Memahami log kebijakan otorisasi di Cloud Logging
Untuk memahami cara kebijakan otorisasi dicatat ke dalam log saat permintaan diizinkan atau ditolak, lihat hal berikut:
Jika permintaan tidak cocok dengan kebijakan
ALLOW
atauDENY
, kebijakanDENY
akan mengizinkan permintaan dan mencatatnya sebagaiallowed_as_no_deny_policies_matched_request
. Sebaliknya, kebijakanALLOW
menolak permintaan dan mencatatnya sebagaidenied_as_no_allow_policies_matched_request
. Karena salah satu kebijakan menolak permintaan, permintaan tersebut ditolak.Jika Anda menggunakan Load Balancer Aplikasi eksternal global,
statusDetails
ditetapkan kedenied_by_authz_policy
dalam log. Lihat contoh berikut:{ httpRequest: {8} insertId: "example-id" jsonPayload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" authzPolicyInfo: { policies: [ 0: { details: "allowed_as_no_deny_policies_matched_request" result: "ALLOWED" } 1: { details: "denied_as_no_allow_policies_matched_request" result: "DENIED" } ] result: "DENIED" } backendTargetProjectNumber: "projects/12345567" remoteIp: "00.100.11.104" proxyStatus: "error=\"http_request_error\"; details=\"denied_by_authz_policy\"" } logName: "projects/example-project/logs/requests" receiveTimestamp: "2024-08-28T15:33:56.046651035Z" resource: {2} severity: "WARNING" spanId: "3e1a09a8e5e3e14d" timestamp: "2024-08-28T15:33:55.355042Z" trace: "projects/example-project/traces/8c8b3dbf9a19c85954d0fa2d958ca509" }
Jika Anda menggunakan Load Balancer Aplikasi internal regional, Load Balancer Aplikasi eksternal regional, atau Load Balancer Aplikasi internal lintas region,
proxyStatus
akan ditetapkan keerror=\"http_request_error\"; details=\"denied_by_authz_policy\"
dalam log. Lihat contoh berikut:{ httpRequest: {8} insertId: "example-id" jsonPayload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" authzPolicyInfo: { policies: [ 0: { details: "allowed_as_no_deny_policies_matched_request" result: "ALLOWED" } 1: { details: "denied_as_no_allow_policies_matched_request" result: "DENIED" } ] result: "DENIED" } backendTargetProjectNumber: "projects/12345567" remoteIp: "00.100.11.104" proxyStatus: "error=\"http_request_error\"; details=\"denied_by_authz_policy\"" } logName: "projects/example-project/logs/requests" receiveTimestamp: "2024-08-28T15:33:56.046651035Z" resource: {2} severity: "WARNING" spanId: "3e1a09a8e5e3e14d" timestamp: "2024-08-28T15:33:55.355042Z" trace: "projects/example-project/traces/8c8b3dbf9a19c85954d0fa2d958ca509" }
Jika permintaan cocok dengan kebijakan
DENY
, permintaan tersebut akan ditolak dan kebijakan yang menolak permintaan akan dicatat ke dalam log.Jika Anda menggunakan Load Balancer Aplikasi eksternal global,
statusDetails
ditetapkan kedenied_by_authz_policy
dalam log dan nama kebijakan yang menolak permintaan dicatat dalam logpolicies
. Lihat contoh berikut:{ httpRequest: {8} insertId: "example-id" jsonPayload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" authzPolicyInfo: { policies: [ 0: { details: "name: "projects/12345567/locations/global/authzPolicies/deny-authz-policy-test"" result: "DENIED" } ] result: "DENIED" } backendTargetProjectNumber: "projects/12345567" cacheDecision: [2] remoteIp: "00.100.11.104" statusDetails: "denied_by_authz_policy" } logName: "projects/example-project/logs/requests" receiveTimestamp: "2024-08-28T15:33:56.046651035Z" resource: {2} severity: "WARNING" spanId: "3e1a09a8e5e3e14d" timestamp: "2024-08-28T15:33:55.355042Z" trace: "projects/example-project/traces/8c8b3dbf9a19c85954d0fa2d958ca509" }
Jika Anda menggunakan Load Balancer Aplikasi internal regional, Load Balancer Aplikasi eksternal regional, atau Load Balancer Aplikasi internal lintas region,
proxyStatus
ditetapkan keerror=\"http_request_error\"; details=\"denied_by_authz_policy\"
dan nama kebijakan dicatat ke dalam log dipolicies
. Lihat contoh berikut:{ httpRequest: {8} insertId: "example-id" jsonPayload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" authzPolicyInfo: { policies: [ 0: { details: "name: "projects/12345567/locations/$REGION/authzPolicies/deny-authz-policy-test"" result: "DENIED" } ] result: "DENIED" } backendTargetProjectNumber: "projects/12345567" remoteIp: "00.100.11.104" proxyStatus: "error=\"http_request_error\"; details=\"denied_by_authz_policy\"" } logName: "projects/example-project/logs/requests" receiveTimestamp: "2024-08-28T15:33:56.046651035Z" resource: {2} severity: "WARNING" spanId: "3e1a09a8e5e3e14d" timestamp: "2024-08-28T15:33:55.355042Z" trace: "projects/example-project/traces/8c8b3dbf9a19c85954d0fa2d958ca509" }
Jika permintaan tidak cocok dengan kebijakan
DENY
, tetapi cocok dengan kebijakanALLOW
, permintaan akan diizinkan. Dalam log, tindakan ini dicatat sebagaiallowed_as_no_deny_policies_matched_request
untuk kebijakanDENY
. Kebijakan yang mengizinkan permintaan juga dicatat ke dalam log.Jika Anda menggunakan Load Balancer Aplikasi eksternal global, tidak ada
statusDetails
dalam log. Kebijakan yang mengizinkan permintaan juga dicatat ke dalam log dipolicies
. Lihat contoh berikut:{ httpRequest: {8} insertId: "example-id" jsonPayload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" authzPolicyInfo: { policies: [ 0: { details: "allowed_as_no_deny_policies_matched_request" result: "ALLOWED" } 1: { details: "name: "projects/12345567/locations/global/authzPolicies/allow-authz-policy-test"" result: "ALLOWED" } ] result: "ALLOWED" } backendTargetProjectNumber: "projects/12345567" cacheDecision: [2] remoteIp: "00.100.11.104" } logName: "projects/example-project/logs/requests" receiveTimestamp: "2024-08-28T15:33:56.046651035Z" resource: {2} severity: "WARNING" spanId: "3e1a09a8e5e3e14d" timestamp: "2024-08-28T15:33:55.355042Z" trace: "projects/example-project/traces/8c8b3dbf9a19c85954d0fa2d958ca509" }
Jika Anda menggunakan Load Balancer Aplikasi internal regional, Load Balancer Aplikasi eksternal regional, atau Load Balancer Aplikasi internal lintas region, tidak ada kolom
proxyStatus
dalam log. Kebijakan yang mengizinkan permintaan juga dicatat dalam log dipolicies
. Lihat contoh berikut:{ httpRequest: {8} insertId: "example-id" jsonPayload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" authzPolicyInfo: { policies: [ 0: { details: "allowed_as_no_deny_policies_matched_request" result: "ALLOWED" } 1: { details: "name: "projects/12345567/locations/$REGION/authzPolicies/allow-authz-policy-test"" result: "ALLOWED" } ] result: "ALLOWED" } backendTargetProjectNumber: "projects/12345567" cacheDecision: [2] remoteIp: "00.100.11.104" } logName: "projects/example-project/logs/requests" receiveTimestamp: "2024-08-28T15:33:56.046651035Z" resource: {2} severity: "WARNING" spanId: "3e1a09a8e5e3e14d" timestamp: "2024-08-28T15:33:55.355042Z" trace: "projects/example-project/traces/8c8b3dbf9a19c85954d0fa2d958ca509" }