Gunakan petunjuk ini untuk membuat kebijakan keamanan Google Cloud Armor agar dapat memfilter traffic masuk ke tujuan berikut:
- Load Balancer Aplikasi eksternal global
- Load Balancer Aplikasi Klasik
- Load Balancer Aplikasi eksternal regional
- Load Balancer Jaringan proxy eksternal
- Load Balancer Jaringan proxy klasik
- Load Balancer Jaringan passthrough eksternal
- Penerusan protokol
- VM dengan alamat IP publik
Untuk mendapatkan informasi konseptual tentang kebijakan keamanan, lihat Ringkasan kebijakan keamanan Google Cloud Armor.
Sebelum memulai
Sebelum mengonfigurasi kebijakan keamanan, lakukan hal berikut:
Pastikan Anda telah memahami konsep Load Balancer Aplikasi eksternal.
Periksa layanan backend yang ada untuk menentukan layanan mana yang belum disertai kebijakan keamanan. Layanan backend ini dan backend terkaitnya tidak dilindungi oleh Google Cloud Armor. Untuk menambahkan perlindungan yang diberikan Google Cloud Armor, gunakan petunjuk dalam dokumen ini untuk menambahkan kebijakan keamanan yang baru dibuat atau yang sudah ada ke layanan backend.
Menyiapkan izin IAM untuk kebijakan keamanan Google Cloud Armor
Operasi berikut memerlukan peran Admin Keamanan Compute (roles/compute.securityAdmin
)
Identity and Access Management (IAM):
- Mengonfigurasi, mengubah, mengupdate, dan menghapus kebijakan keamanan Google Cloud Armor
- Menggunakan metode API berikut:
SecurityPolicies insert
SecurityPolicies delete
SecurityPolicies patch
SecurityPolicies addRule
SecurityPolicies patchRule
SecurityPolicies removeRule
Pengguna dengan peran Admin Jaringan Compute (roles/compute.networkAdmin
) dapat melakukan operasi berikut:
- Menetapkan kebijakan keamanan Google Cloud Armor untuk layanan backend
- Menggunakan metode API berikut:
BackendServices setSecurityPolicy
BackendServices list
(gcloud
saja)
Pengguna dengan peran Admin Keamanan (roles/iam.securityAdmin
) dan peran Admin Jaringan Compute dapat melihat kebijakan keamanan Google Cloud Armor menggunakan metode API SecurityPolicies
get
, list
, dan getRule
.
Menyiapkan izin IAM untuk peran khusus
Tabel berikut mencantumkan izin dasar peran IAM dan metode API yang terkait.
Izin IAM | Metode API |
---|---|
compute.securityPolicies.create |
SecurityPolicies insert |
compute.securityPolicies.delete |
SecurityPolicies delete |
compute.securityPolicies.get |
SecurityPolicies get SecurityPolicies getRule |
compute.securityPolicies.list |
SecurityPolicies list |
compute.securityPolicies.use |
BackendServices setSecurityPolicy |
compute.securityPolicies.update |
SecurityPolicies patch SecurityPolicies addRule SecurityPolicies patchRule SecurityPolicies removeRule |
compute.backendServices.setSecurityPolicy |
BackendServices setSecurityPolicy |
Membuat kebijakan keamanan
Anda dapat mengonfigurasi kebijakan, aturan, dan ekspresi keamanan Google Cloud Armor menggunakan Konsol Google Cloud, Google Cloud CLI, atau REST API. Saat menggunakan gcloud CLI untuk membuat kebijakan keamanan, gunakan flag --type
untuk menentukan apakah kebijakan keamanan tersebut adalah kebijakan keamanan backend atau kebijakan keamanan edge.
Jika tidak terbiasa dengan konfigurasi kebijakan keamanan, sebaiknya lihat contoh kebijakan keamanan.
Contoh ekspresi
Berikut adalah contoh ekspresi. Untuk mengetahui informasi selengkapnya tentang ekspresi, lihat Referensi bahasa aturan kustom Google Cloud Armor.
Jika Anda mengonfigurasi aturan atau ekspresi yang menggunakan kode negara atau wilayah ISO 3166-1 alpha 2, Google Cloud Armor akan memperlakukan setiap kode secara independen. Aturan dan ekspresi Google Cloud Armor secara eksplisit menggunakan kode region tersebut untuk mengizinkan atau menolak permintaan.
Ekspresi berikut cocok dengan permintaan dari alamat IP
1.2.3.4
dan berisi stringexample
di header agen pengguna:inIpRange(origin.ip, '1.2.3.4/32') && has(request.headers['user-agent']) && request.headers['user-agent'].contains('example')
Atau, Anda dapat mencocokkan rentang alamat IP dari header alamat IP klien kustom menggunakan atribut
origin.user_ip
:inIpRange(origin.user_ip, '1.2.3.4/32') && has(request.headers['user-agent']) && request.headers['user-agent'].contains('example')
Ekspresi berikut cocok dengan permintaan yang memiliki cookie dengan nilai tertentu:
has(request.headers['cookie']) && request.headers['cookie'].contains('cookie_name=cookie_value')
Ekspresi berikut cocok dengan permintaan dari region
AU
:origin.region_code == 'AU'
Ekspresi berikut cocok dengan permintaan dari region
AU
yang tidak berada dalam rentang IP yang ditentukan:origin.region_code == "AU" && !inIpRange(origin.ip, '1.2.3.0/24')
Ekspresi berikut cocok dengan permintaan dengan jalur variabel bernomor ke file tertentu jika URI cocok dengan ekspresi reguler:
request.path.matches('/path/[0-9]+/target_file.html')
Ekspresi berikut cocok dengan permintaan jika nilai yang didekode Base64 dari header
user-id
berisi nilai tertentu:has(request.headers['user-id']) && request.headers['user-id'].base64Decode().contains('myValue')
Ekspresi berikut menggunakan kecocokan kumpulan ekspresi yang telah dikonfigurasi sebelumnya terhadap serangan SQLi:
evaluatePreconfiguredExpr('sqli-stable')
Mengelola kebijakan keamanan
Gunakan bagian berikut untuk mencantumkan kebijakan keamanan di project Anda, memperbarui kebijakan keamanan, menghapus kebijakan keamanan, atau menguji kebijakan keamanan Anda.
Membuat daftar kebijakan keamanan
Gunakan petunjuk ini untuk mencantumkan semua kebijakan keamanan Google Cloud Armor dalam project saat ini atau dalam project yang Anda tentukan.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Untuk melihat kebijakan tertentu, klik namanya di halaman Kebijakan keamanan di daftar kebijakan.
gcloud
gcloud compute security-policies list
Contoh:
gcloud compute security-policies list
NAME my-policy
Untuk informasi selengkapnya, lihat
gcloud compute security-policies list
.
Memperbarui kebijakan keamanan
Gunakan petunjuk ini untuk memperbarui kebijakan keamanan Google Cloud Armor. Misalnya, Anda dapat mengubah deskripsi kebijakan, mengubah perilaku aturan default, mengubah layanan backend target, atau menambahkan aturan baru.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Untuk mengupdate kebijakan tertentu, di halaman Security policies pada daftar kebijakan, klik
Menu untuk kebijakan yang ingin diupdate.- Untuk memperbarui deskripsi kebijakan tindakan aturan default, pilih Edit, buat perubahan, lalu klik Update.
- Untuk menambahkan aturan, pilih Add rule, lalu ikuti petunjuk di bagian Menambahkan aturan ke kebijakan keamanan.
- Untuk mengubah layanan backend target untuk kebijakan tersebut, pilih Apply policy to target, klik Add Target, pilih target, lalu klik Add.
gcloud
Untuk memperbarui kebijakan keamanan, gunakan petunjuk Google Cloud CLI berikut:
- Untuk memperbarui aturan dalam kebijakan keamanan, lihat Memperbarui satu aturan dalam kebijakan keamanan.
- Untuk menambahkan aturan ke kebijakan keamanan, lihat Menambahkan aturan ke kebijakan keamanan.
- Untuk menghapus aturan dari kebijakan keamanan, lihat Menghapus aturan dari kebijakan keamanan.
- Untuk mengupdate beberapa aturan dalam satu update (update atomik), lihat Mengupdate beberapa aturan secara atomik dalam kebijakan keamanan.
- Untuk memperbarui kolom non-aturan dalam kebijakan keamanan (seperti kolom deskripsi), lihat Mengekspor kebijakan keamanan dan Mengimpor kebijakan keamanan.
Menghapus beberapa kebijakan keamanan
Gunakan petunjuk ini untuk menghapus kebijakan keamanan Google Cloud Armor. Anda harus menghapus semua layanan backend dari kebijakan sebelum dapat menghapusnya.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, di samping nama kebijakan keamanan yang ingin Anda hapus, pilih kotak centang.
Di pojok kanan atas halaman, klik
Hapus.
gcloud
Menggunakan gcloud compute security-policies delete NAME
.
Ganti NAME
dengan nama kebijakan keamanan:
gcloud compute security-policies delete NAME
Menguji kebijakan keamanan
Sebaiknya deploy semua aturan baru dalam mode pratinjau, lalu periksa log permintaan Anda untuk memastikan bahwa kebijakan dan aturan berperilaku seperti yang diharapkan.
Mengelola aturan kebijakan keamanan
Gunakan bagian berikut untuk mencantumkan aturan kebijakan keamanan, menambahkan aturan, memperbarui aturan, atau menghapus aturan.
Membuat daftar aturan dalam kebijakan keamanan
Gunakan petunjuk ini untuk mencantumkan aturan dalam kebijakan keamanan Google Cloud Armor.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan, dan aturan kebijakan tercantum pada tab Aturan di bagian tengah halaman.
gcloud
Gunakan perintah gcloud
berikut untuk mencantumkan semua aturan dalam satu kebijakan
keamanan beserta deskripsi kebijakannya:
gcloud compute security-policies describe NAME \
Gunakan perintah gcloud
berikut untuk mendeskripsikan aturan dengan prioritas yang ditentukan dalam kebijakan keamanan yang ditentukan:
gcloud compute security-policies rules describe PRIORITY \ --security-policy POLICY_NAME
Misalnya, perintah berikut menjelaskan aturan dengan prioritas 1000 dalam
kebijakan keamanan my-policy
:
gcloud compute security-policies rules describe 1000 \ --security-policy my-policy
Output:
action: deny(403) description: block traffic from 192.0.2.0/24 and 198.51.100.0/24 kind: compute#securityPolicyRule match: srcIpRanges: - '192.0.2.0/24' - '198.51.100.0/24' preview: false priority: 1000
Menambahkan aturan ke kebijakan keamanan
Gunakan petunjuk ini untuk menambahkan aturan ke kebijakan keamanan Google Cloud Armor.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan.
Di bagian tengah halaman, klik tab Aturan.
Klik Tambahkan Aturan.
Opsional: Masukkan deskripsi aturan.
Pilih mode:
- Mode dasar: mengizinkan atau menolak traffic berdasarkan alamat IP atau rentang IP.
- Mode lanjutan: mengizinkan atau menolak traffic berdasarkan ekspresi aturan.
Di kolom Match, tentukan kondisi tempat aturan tersebut berlaku:
- Mode dasar: masukkan dari satu (1) hingga lima (5) rentang alamat IP yang akan dicocokkan dalam aturan.
Mode lanjutan: masukkan ekspresi atau subekspresi untuk dievaluasi terhadap permintaan masuk. Untuk mengetahui informasi tentang cara menulis ekspresi dan membaca contoh berikut, lihat referensi bahasa aturan kustom.
Ekspresi berikut cocok dengan permintaan dari alamat IP
1.2.3.4
dan berisi stringexample
di header agen pengguna:inIpRange(origin.ip, '1.2.3.4/32') && has(request.headers['user-agent']) && request.headers['user-agent'].contains('example')
Ekspresi berikut cocok dengan permintaan yang memiliki cookie dengan nilai tertentu:
has(request.headers['cookie']) && request.headers['cookie'].contains('cookie_name=cookie_value')
Ekspresi berikut cocok dengan permintaan dari region
AU
:origin.region_code == 'AU'
Ekspresi berikut cocok dengan permintaan dari region
AU
yang tidak berada dalam rentang IP yang ditentukan:origin.region_code == "AU" && !inIpRange(origin.ip, '1.2.3.0/24')
Ekspresi berikut cocok dengan permintaan jika URI cocok dengan ekspresi reguler:
request.path.matches('/bad_path/')
Ekspresi berikut cocok dengan permintaan jika nilai yang didekode Base64 dari header
user-id
berisi nilai tertentu:has(request.headers['user-id']) && request.headers['user-id'].base64Decode().contains('myValue')
Ekspresi berikut menggunakan ekspresi yang telah dikonfigurasi sebelumnya agar cocok dengan serangan SQLi:
evaluatePreconfiguredExpr('sqli-stable')
Untuk Action, pilih Allow atau Deny.
Jika Anda mengonfigurasi aturan penolakan, pilih pesan Status tolak.
Jika ingin mengaktifkan mode pratinjau untuk aturan, centang kotak Enable.
Di kolom Priority, masukkan bilangan bulat positif.
Klik Tambahkan.
gcloud
Gunakan perintah
gcloud compute security-policies rules create PRIORITY
.
Ganti PRIORITY
dengan prioritas aturan dalam kebijakan:
gcloud compute security-policies rules create PRIORITY \ --security-policy POLICY_NAME \ --description DESCRIPTION \ --src-ip-ranges IP_RANGES | --expression EXPRESSION \ --action=[ allow | deny-403 | deny-404 | deny-502 ] \ --preview
Misalnya, perintah berikut menambahkan aturan untuk memblokir traffic dari rentang alamat IP 192.0.2.0/24 dan 198.51.100.0/24. Aturan ini memiliki prioritas 1000 dan merupakan aturan dalam kebijakan yang disebut my-policy
:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --description "block traffic from 192.0.2.0/24 and 198.51.100.0/24" \ --src-ip-ranges "192.0.2.0/24","198.51.100.0/24" \ --action "deny-403"
Gunakan flag --expression
untuk menentukan kondisi dalam referensi bahasa aturan khusus.
Perintah berikut menambahkan aturan untuk mengizinkan traffic dari alamat IP 1.2.3.4
dan berisi string example
di header agen pengguna:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "inIpRange(origin.ip, '1.2.3.4/32') && has(request.headers['user-agent']) && request.headers['user-agent'].contains('example')" \ --action allow \ --description "Block User-Agent 'example'"
Perintah berikut menambahkan aturan untuk memblokir permintaan jika cookie permintaan berisi nilai tertentu:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "has(request.headers['cookie']) && request.headers['cookie'].contains('80=BLAH')" \ --action deny-403 \ --description "Cookie Block"
Perintah berikut menambahkan aturan untuk memblokir permintaan dari region AU
:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "origin.region_code == 'AU'" \ --action deny-403 \ --description "AU block"
Perintah berikut menambahkan aturan untuk memblokir permintaan dari region AU
yang tidak berada dalam rentang IP yang ditentukan:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "origin.region_code == "AU" && !inIpRange(origin.ip, '1.2.3.0/24')" \ --action deny-403 \ --description "country and IP block"
Perintah berikut menambahkan aturan untuk memblokir permintaan dengan URI yang cocok dengan ekspresi reguler:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "request.path.matches('/bad_path/')" \ --action deny-502 \ --description "regex block"
Perintah berikut menambahkan aturan untuk memblokir permintaan jika nilai header user-id
yang didekode Base64 berisi nilai tertentu:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "has(request.headers['user-id']) && request.headers['user-id'].base64Decode().contains('myValue')" \ --action deny-403 \ --description "country and IP block"
Perintah berikut menambahkan aturan yang menggunakan kumpulan ekspresi yang telah dikonfigurasi sebelumnya untuk memitigasi serangan SQLi:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "evaluatePreconfiguredExpr('sqli-stable')" \ --action deny-403
Memperbarui satu aturan dalam kebijakan keamanan
Gunakan petunjuk ini untuk memperbarui satu aturan dalam kebijakan keamanan Google Cloud Armor. Untuk memperbarui beberapa aturan secara atomik, lihat Memperbarui beberapa aturan secara atomik dalam kebijakan keamanan.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan.
Di bagian tengah halaman, klik tab Aturan.
Di samping aturan yang ingin diperbarui, klik
Edit. Halaman Edit rule akan ditampilkan.Buat perubahan, lalu klik Update.
gcloud
Gunakan perintah ini untuk memperbarui aturan dengan prioritas yang ditentukan dalam kebijakan keamanan yang ditetapkan. Anda hanya dapat mengupdate satu kebijakan keamanan dalam satu waktu menggunakan perintah ini:
gcloud compute security-policies rules update PRIORITY [ \ --security-policy POLICY_NAME \ --description DESCRIPTION \ --src-ip-ranges IP_RANGES | --expression EXPRESSION \ --action=[ allow | deny-403 | deny-404 | deny-502 ] \ --preview ]
Misalnya, perintah berikut akan memperbarui aturan dengan prioritas 1111 untuk mengizinkan traffic dari rentang alamat IP 192.0.2.0/24:
gcloud compute security-policies rules update 1111 \ --security-policy my-policy \ --description "allow traffic from 192.0.2.0/24" \ --src-ip-ranges "192.0.2.0/24" \ --action "allow"
Untuk informasi selengkapnya tentang perintah ini, lihat
gcloud compute security-policies rules update
.
Untuk memperbarui prioritas aturan, Anda harus menggunakan REST API. Untuk
mengetahui informasi selengkapnya, lihat
securityPolicies.patchRule
.
Mengupdate beberapa aturan secara atomik dalam kebijakan keamanan
Update atomik menerapkan perubahan ke beberapa aturan dalam satu update. Saat memperbarui aturan satu per satu, Anda mungkin melihat beberapa perilaku yang tidak diinginkan karena aturan lama dan baru mungkin bekerja sama dalam waktu singkat.
Untuk memperbarui beberapa aturan secara atomik, ekspor kebijakan keamanan saat ini ke file JSON atau YAML, lalu ubah. Gunakan file yang telah diubah untuk membuat kebijakan keamanan baru, lalu ganti kebijakan keamanan untuk layanan backend yang relevan.
gcloud
Ekspor kebijakan yang akan diperbarui, seperti yang ditunjukkan pada contoh berikut:
gcloud compute security-policies export my-policy \ --file-name my-file \ --file-format yaml
Kebijakan yang diekspor akan terlihat seperti contoh berikut:
description: my description fingerprint: PWfLGDWQDLY= id: '123' name: my-policy rules: - action: deny(404) description: my-rule-1 match: expr: expression: evaluatePreconfiguredExpr('xss-stable') versionedExpr: SRC_IPS_V1 preview: false priority: 1 - action: allow description: my-rule-2 match: config: srcIpRanges: - '1.2.3.4' versionedExpr: SRC_IPS_V1 preview: false priority: 2 - action: deny description: default rule kind: compute#securityPolicyRule match: config: srcIpRanges: - '*' versionedExpr: SRC_IPS_V1 preview: false priority: 2147483647 selfLink: https://www.googleapis.com/compute/v1/projects/my-project/global/securityPolicies/my-policy
Gunakan editor teks apa pun untuk mengubah kebijakan. Misalnya, Anda dapat mengubah prioritas aturan yang ada dan menambahkan aturan baru:
description: my description fingerprint: PWfLGDWQDLY= id: '123' name: my-policy rules: - action: deny(404) description: my-rule-1 match: expr: expression: evaluatePreconfiguredExpr('xss-stable') versionedExpr: SRC_IPS_V1 preview: false priority: 1 - action: allow description: my-new-rule match: config: srcIpRanges: - '1.2.3.1' versionedExpr: SRC_IPS_V1 preview: false priority: 10 - action: allow description: my-rule-2 match: config: srcIpRanges: - '1.2.3.4' versionedExpr: SRC_IPS_V1 preview: false priority: 11 - action: deny description: default rule kind: compute#securityPolicyRule match: config: srcIpRanges: - '*' versionedExpr: SRC_IPS_V1 preview: false priority: 2147483647 selfLink: https://www.googleapis.com/compute/v1/projects/my-project/global/securityPolicies/my-policy
Buat kebijakan keamanan Google Cloud Armor baru, lalu tentukan nama file dan format yang dimodifikasi, seperti ditunjukkan dalam contoh berikut:
gcloud compute security-policies create new-policy \ --file-name modified-policy \ --file-format yaml
Hapus kebijakan keamanan lama dari layanan backend yang relevan, seperti yang ditunjukkan pada contoh berikut:
gcloud compute backend-services update my-backend \ --security-policy ""
Tambahkan kebijakan keamanan baru ke layanan backend, seperti yang ditunjukkan pada contoh berikut:
gcloud compute backend-services update my-backend \ --security-policy new-policy
Jika kebijakan lama tidak digunakan, hapus kebijakan tersebut:
gcloud compute security-policies delete my-policy
Menghapus aturan dari kebijakan keamanan
Gunakan petunjuk ini untuk menghapus aturan dari kebijakan keamanan Google Cloud Armor.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan.
Di bagian tengah halaman, pada tab Aturan, centang kotak di samping aturan yang ingin dihapus.
Klik
Delete.
gcloud
Gunakan perintah ini untuk menghapus aturan dengan prioritas yang ditentukan dari kebijakan keamanan yang ditetapkan. Anda hanya dapat mengubah satu kebijakan keamanan pada satu waktu, tetapi Anda dapat menghapus beberapa aturan sekaligus:
gcloud compute security-policies rules delete PRIORITY [...] [ --security-policy POLICY_NAME \ ]
Contoh:
gcloud compute security-policies rules delete 1000 \ --security-policy my-policy
Melampirkan dan menghapus kebijakan keamanan
Gunakan bagian berikut untuk melampirkan dan menghapus kebijakan keamanan dari layanan backend dan bucket backend.
Melampirkan kebijakan keamanan ke layanan backend
Gunakan petunjuk ini untuk menambahkan kebijakan keamanan Google Cloud Armor ke layanan backend. Kebijakan keamanan dapat dipasang ke lebih dari satu layanan backend, tetapi layanan backend hanya dapat memiliki satu dari setiap jenis kebijakan keamanan yang disertakan padanya.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan.
Di bagian tengah halaman, klik tab Target.
Klik Terapkan kebijakan ke target baru.
Klik Add Target.
Dalam daftar Target, pilih target, lalu klik Add.
gcloud
Saat Anda memasang kebijakan keamanan backend ke layanan backend, gunakan perintah gcloud compute backend-services
dan tanda --security-policy
:
gcloud compute backend-services update my-backend \ --security-policy my-policy
Saat Anda memasang kebijakan keamanan edge ke layanan backend, gunakan
perintah gcloud compute backend-services
dan
flag --edge-security-policy
:
gcloud compute backend-services update my-backend \ --edge-security-policy my-policy
Menghapus kebijakan keamanan dari layanan backend
Gunakan petunjuk ini untuk menghapus kebijakan keamanan backend atau kebijakan keamanan edge Google Cloud Armor dari layanan backend.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan.
Di bagian tengah halaman, klik tab Target.
Pilih layanan backend target tempat Anda menghapus kebijakan.
Klik Hapus.
Pada pesan Hapus target, klik Hapus.
gcloud
Saat Anda menghapus kebijakan keamanan backend, gunakan perintah gcloud compute
backend-services
dan tanda --security-policy
:
gcloud compute backend-services update my-backend \ --security-policy ""
Saat Anda menghapus kebijakan keamanan edge, gunakan perintah gcloud compute
backend-services
dan tanda --edge-security-policy
:
gcloud compute backend-services update my-backend \ --edge-security-policy ""
Melampirkan kebijakan keamanan ke bucket backend
Gunakan petunjuk ini untuk menambahkan kebijakan keamanan edge Google Cloud Armor ke bucket backend. Kebijakan keamanan edge dapat dipasang ke lebih dari satu bucket backend.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan.
Di bagian tengah halaman, klik tab Target.
Klik Terapkan kebijakan ke target baru.
Klik Add Target.
Dalam daftar Target, pilih target, lalu klik Add.
gcloud
Saat Anda memasang kebijakan keamanan edge ke bucket backend, gunakan perintah cloud compute backend-buckets
dan flag --edge-security-policy
:
gcloud compute backend-services update my-bucket \ --edge-security-policy my-edge-policy
Menghapus kebijakan keamanan dari bucket backend
Gunakan petunjuk ini untuk menghapus kebijakan keamanan edge Google Cloud Armor dari bucket backend.
Konsol
Di konsol Google Cloud, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan.
Di bagian tengah halaman, klik tab Target.
Pilih layanan backend target tempat Anda menghapus kebijakan.
Klik Hapus.
Pada pesan Hapus target, klik Hapus.
gcloud
Saat Anda menghapus kebijakan keamanan edge dari bucket backend, gunakan
perintah cloud compute backend-buckets
dan
flag --edge-security-policy
:
gcloud compute backend-services update my-bucket \ --edge-security-policy ""
Mengimpor dan mengekspor kebijakan keamanan
Gunakan bagian berikut untuk mengimpor dan mengekspor kebijakan keamanan sebagai file YAML atau JSON.
Mengimpor kebijakan keamanan
Anda dapat mengimpor kebijakan keamanan Google Cloud Armor dari file YAML atau JSON menggunakan Google Cloud CLI. Anda tidak dapat menggunakan perintah import
untuk memperbarui aturan kebijakan yang sudah ada. Sebagai gantinya, Anda harus memperbarui aturan satu per satu menggunakan prosedur Memperbarui satu aturan dalam kebijakan keamanan, atau memperbarui sekaligus dengan menggunakan prosedur Memperbarui beberapa aturan secara atomik dalam kebijakan keamanan.
gcloud
Untuk mengimpor kebijakan keamanan, gunakan perintah gcloud compute security-policies import NAME
.
Ganti NAME
dengan nama kebijakan keamanan yang Anda impor. Jika Anda tidak memberikan format file, format yang benar
akan dianggap berdasarkan struktur file. Jika struktur tidak valid, Anda akan melihat pesan error.
gcloud compute security-policies import NAME \ --file-name FILE_NAME \ [--file-format FILE_FORMAT]
Misalnya, perintah berikut akan memperbarui kebijakan my-policy
dengan mengimpor file my-file
.
gcloud compute security-policies import my-policy \ --file-name my-file \ --file-format json
Jika sidik jari kebijakan sudah usang saat Anda mengimpornya, Google Cloud Armor akan menampilkan error. Artinya, kebijakan telah diubah sejak Anda terakhir kali mengekspornya. Untuk memperbaikinya,
gunakan perintah describe
pada kebijakan untuk mendapatkan sidik jari terbaru.
Gabungkan semua perbedaan antara kebijakan yang dijelaskan dan kebijakan Anda, lalu
ganti sidik jari yang sudah tidak berlaku dengan yang terbaru.
Ekspor kebijakan keamanan
Anda dapat mengekspor kebijakan keamanan Google Cloud Armor sebagai file YAML atau JSON menggunakan Google Cloud CLI. Dengan mengekspor kebijakan, Anda dapat mengambil salinannya yang dapat diubah atau disimpan di kontrol sumber.
gcloud
Dalam perintah berikut,
NAME
adalah nama kebijakan keamanan. Format file yang valid adalah YAML dan JSON. Jika Anda tidak memberikan format file, Google Cloud Armor akan menggunakan YAML default.gcloud compute security-policies export NAME \ --file-name FILE_NAME \ --file-format FILE_FORMAT
Contoh berikut mengekspor kebijakan keamanan
my-policy
ke filemy-file
dalam format YAML:gcloud compute security-policies export my-policy \ --file-name my-file \ --file-format yaml
Contoh berikut menunjukkan kebijakan keamanan yang diekspor:
description: my description fingerprint: PWfLGDWQDLY= id: '123' name: my-policy rules: - action: allow description: default rule match: config: srcIpRanges: - '*' versionedExpr: SRC_IPS_V1 preview: false priority: 2147483647 selfLink: https://www.googleapis.com/compute/v1/projects/my-project/global/securityPolicies/my-policy
Anda dapat mengubah file yang diekspor dengan editor teks apa pun, lalu import kembali ke Google Cloud menggunakan perintah
import
.
Mencantumkan aturan standar yang tersedia
Buat daftar aturan yang telah dikonfigurasi sebelumnya untuk melihat tanda tangan dan aturan perlindungan aplikasi yang telah ditetapkan seperti Kumpulan Aturan Inti ModSecurity yang disediakan Google Cloud Armor. Aturan yang telah dikonfigurasi ini berisi beberapa tanda tangan bawaan yang digunakan Google Cloud Armor untuk mengevaluasi permintaan masuk. Anda menambahkan aturan yang telah dikonfigurasi ini ke aturan baru atau yang sudah ada dengan menggunakan referensi bahasa aturan khusus.
Untuk informasi selengkapnya, lihat aturan yang telah dikonfigurasi sebelumnya.
gcloud
Jalankan perintah
gcloud compute security-policies list-preconfigured-expression-sets
:gcloud compute security-policies list-preconfigured-expression-sets
Contoh berikut menunjukkan bentuk output dari perintah:
EXPRESSION_SET expression-set-1 RULE_ID SENSITIVITY expression-set-1-id-1 sensitivity-value-1 expression-set-1-id-2 sensitivity-value-2 expression-set-2 alias-1 RULE_ID SENSITIVITY expression-set-2-id-1 sensitivity-value-1 expression-set-2-id-2 sensitivity-value-2
Contoh berikut menyertakan contoh output aktual dari perintah. Perlu diperhatikan bahwa output yang sebenarnya akan mencakup semua aturan yang tercantum dalam aturan WAF Tuning Google Cloud Armor.
gcloud compute security-policies list-preconfigured-expression-sets
EXPRESSION_SET sqli-canary RULE_ID SENSITIVITY owasp-crs-v030001-id942110-sqli 2 owasp-crs-v030001-id942120-sqli 2 … xss-canary RULE_ID SENSITIVITY owasp-crs-v030001-id941110-xss 1 owasp-crs-v030001-id941120-xss 1 … sourceiplist-fastly sourceiplist-cloudflare sourceiplist-imperva
Langkah selanjutnya
- Menyesuaikan aturan firewall aplikasi web (WAF)
- Memecahkan masalah
- Menggunakan referensi bahasa aturan kustom