Gunakan petunjuk ini untuk membuat kebijakan keamanan Google Cloud Armor guna memfilter traffic masuk ke aplikasi Anda. Untuk mengetahui informasi konseptual tentang kebijakan keamanan, lihat ringkasan kebijakan keamanan Google Cloud Armor.
Sebelum memulai
Sebelum mengonfigurasi kebijakan keamanan, lakukan hal berikut:
Pastikan Anda memahami konsep Load Balancer Aplikasi eksternal.
Periksa layanan backend yang ada untuk menentukan layanan yang belum memiliki kebijakan keamanan terlampir. Layanan backend ini dan backend terkaitnya tidak dilindungi oleh Google Cloud Armor. Untuk menambahkan perlindungan yang disediakan Google Cloud Armor, gunakan petunjuk dalam dokumen ini untuk melampirkan 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 Compute Security Admin (roles/compute.securityAdmin
) Identity and Access Management (IAM):
- Mengonfigurasi, mengubah, memperbarui, 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 kustom
Tabel berikut mencantumkan izin dasar peran IAM dan metode API terkaitnya.
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 keamanan, aturan, dan ekspresi Google Cloud Armor menggunakan Google Cloud konsol, Google Cloud CLI, atau REST API. Saat Anda
menggunakan gcloud CLI untuk membuat kebijakan keamanan, gunakan flag --type
untuk menentukan apakah kebijakan keamanan adalah kebijakan keamanan backend atau
kebijakan keamanan edge.
Jika Anda belum memahami 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 terpisah. 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 user-agent: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 header alamat IP klien kustom dengan 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 wilayah
AU
:origin.region_code == 'AU'
Ekspresi berikut mencocokkan permintaan dari wilayah
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 header
user-id
yang didekode Base64 berisi nilai tertentu:has(request.headers['user-id']) && request.headers['user-id'].base64Decode().contains('myValue')
Ekspresi berikut menggunakan set ekspresi yang telah dikonfigurasi sebelumnya untuk mencocokkan serangan SQLi:
evaluatePreconfiguredWaf('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.
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 Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Untuk melihat kebijakan tertentu, di halaman Kebijakan keamanan, dalam daftar kebijakan, klik namanya.
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 Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Untuk memperbarui kebijakan tertentu, di halaman Kebijakan keamanan, dalam daftar kebijakan, klik
Menu untuk kebijakan yang ingin Anda perbarui.- Untuk memperbarui deskripsi kebijakan tindakan aturan default, pilih Edit, lakukan perubahan, lalu klik Perbarui.
- Untuk menambahkan aturan, pilih Tambahkan aturan, lalu ikuti petunjuk di Menambahkan aturan ke kebijakan keamanan.
- Untuk mengubah layanan backend target untuk kebijakan, pilih Terapkan kebijakan ke target, klik Tambahkan Target, pilih target, lalu klik Tambahkan.
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 memperbarui beberapa aturan dalam satu update (update atomik), lihat Memperbarui 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 Anda dapat menghapusnya.
Konsol
Di Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, centang kotak di samping nama kebijakan keamanan yang ingin Anda hapus.
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 Anda men-deploy semua aturan baru dalam mode pratinjau, lalu periksa log permintaan, untuk memverifikasi 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.
Mencantumkan aturan dalam kebijakan keamanan
Gunakan petunjuk ini untuk mencantumkan aturan dalam kebijakan keamanan Google Cloud Armor.
Konsol
Di Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Detail kebijakan akan ditampilkan, dan aturan kebijakan dicantumkan di tab Aturan di tengah halaman.
gcloud
Gunakan perintah gcloud
berikut untuk mencantumkan semua aturan dalam satu kebijakan keamanan beserta deskripsi kebijakan:
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 Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Policy details 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 Cocokkan, tentukan kondisi saat aturan berlaku:
Mode dasar: masukkan dari satu (1) hingga 10 rentang alamat IP yang akan dicocokkan dalam aturan. Anda dapat menambahkan maksimal 10 rentang alamat IP. Untuk mengetahui batas, lihat kuota dan batas Google Cloud Armor.
Mode lanjutan: masukkan ekspresi atau sub-ekspresi 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 user-agent: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 wilayah
AU
:origin.region_code == 'AU'
Ekspresi berikut mencocokkan permintaan dari wilayah
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('/example_path/')
Ekspresi berikut cocok dengan permintaan jika nilai header
user-id
yang didekode Base64 berisi nilai tertentu:has(request.headers['user-id']) && request.headers['user-id'].base64Decode().contains('myValue')
Ekspresi berikut menggunakan set ekspresi yang telah dikonfigurasi sebelumnya untuk mencocokkan serangan SQLi:
evaluatePreconfiguredWaf('sqli-stable')
Untuk Tindakan, pilih Izinkan atau Tolak.
Jika Anda mengonfigurasi aturan penolakan, pilih pesan Status penolakan.
Jika Anda ingin mengaktifkan mode pratinjau untuk aturan, centang kotak Aktifkan.
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 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 kustom.
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('/example_path/')" \ --action deny-502 \ --description "regex block"
Perintah berikut menambahkan aturan untuk memblokir permintaan jika nilai yang didekode Base64 dari header user-id
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 set ekspresi yang telah dikonfigurasi sebelumnya untuk memitigasi serangan SQLi:
gcloud compute security-policies rules create 1000 \ --security-policy my-policy \ --expression "evaluatePreconfiguredWaf('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 Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Policy details akan ditampilkan.
Di bagian tengah halaman, klik tab Aturan.
Di samping aturan yang ingin diperbarui, klik
Edit. Halaman Edit aturan akan ditampilkan.Lakukan perubahan, lalu klik Perbarui.
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 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
.
Memperbarui beberapa aturan secara atomik dalam kebijakan keamanan
Pembaruan atomik menerapkan perubahan pada beberapa aturan dalam satu pembaruan. Jika Anda memperbarui aturan satu per satu, Anda mungkin melihat beberapa perilaku yang tidak diinginkan karena aturan lama dan baru mungkin bekerja bersama untuk jangka waktu yang 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 alihkan kebijakan keamanan untuk layanan backend yang relevan.
gcloud
Ekspor kebijakan yang akan diupdate, seperti yang ditunjukkan dalam contoh berikut:
gcloud compute security-policies export my-policy \ --file-name my-file \ --file-format yaml
Kebijakan yang diekspor akan terlihat mirip dengan contoh berikut:
description: my description fingerprint: PWfLGDWQDLY= id: '123' name: my-policy rules: - action: deny(404) description: my-rule-1 match: expr: expression: evaluatePreconfiguredWaf('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: evaluatePreconfiguredWaf('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 dan tentukan nama file serta format yang diubah, seperti yang 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 dalam contoh berikut:
gcloud compute backend-services update my-backend \ --security-policy ""
Tambahkan kebijakan keamanan baru ke layanan backend, seperti yang ditunjukkan dalam 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 Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Klik nama kebijakan keamanan. Halaman Policy details akan ditampilkan.
Di bagian tengah halaman, pada tab Aturan, centang kotak di samping aturan yang ingin Anda hapus.
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 dalam 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 melampirkan kebijakan keamanan Google Cloud Armor ke layanan backend. Kebijakan keamanan dapat dilampirkan ke lebih dari satu layanan backend, tetapi layanan backend hanya dapat memiliki satu kebijakan keamanan dari setiap jenis yang dilampirkan.
Konsol
Di Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Policy details akan ditampilkan.
Di bagian tengah halaman, klik tab Target.
Klik Terapkan kebijakan ke target baru.
Klik Add Target.
Di daftar Target, pilih target, lalu klik Tambahkan.
gcloud
Saat Anda melampirkan 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 melampirkan 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 Google Cloud Armor atau kebijakan keamanan edge dari layanan backend.
Konsol
Di Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Policy details 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 flag --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 melampirkan kebijakan keamanan edge Google Cloud Armor ke bucket backend. Kebijakan keamanan edge dapat dilampirkan ke lebih dari satu bucket backend.
Konsol
Di Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Policy details akan ditampilkan.
Di bagian tengah halaman, klik tab Target.
Klik Terapkan kebijakan ke target baru.
Klik Add Target.
Di daftar Target, pilih target, lalu klik Tambahkan.
gcloud
Saat Anda melampirkan 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 Google Cloud konsol, buka halaman Kebijakan Google Cloud Armor.
Di halaman Kebijakan keamanan, klik nama kebijakan keamanan. Halaman Policy details 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 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 semuanya
sekaligus 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 diasumsikan berdasarkan struktur file. Jika struktur tidak valid, Anda akan melihat error.
gcloud compute security-policies import NAME \ --file-name FILE_NAME \ [--file-format FILE_FORMAT]
Misalnya, perintah berikut 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 tidak
berlaku saat Anda mengimpornya, Google Cloud Armor akan menampilkan error. Artinya, kebijakan telah diubah sejak terakhir kali Anda mengekspornya. Untuk memperbaikinya,
gunakan perintah describe
pada kebijakan untuk mendapatkan sidik jari terbaru.
Gabungkan perbedaan antara kebijakan yang dijelaskan dan kebijakan Anda, lalu ganti sidik jari yang sudah tidak berlaku dengan sidik jari terbaru.
Mengekspor kebijakan keamanan
Anda dapat mengekspor kebijakan keamanan Google Cloud Armor sebagai file YAML atau JSON menggunakan Google Cloud CLI. Mengekspor kebijakan memungkinkan Anda mengambil salinannya yang dapat Anda ubah atau simpan dalam 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 mengimpor kembali ke Google Cloud dengan menggunakan perintah
import
.
Mencantumkan aturan bawaan yang tersedia
Mencantumkan aturan yang telah dikonfigurasi sebelumnya untuk melihat aturan dan tanda tangan perlindungan aplikasi standar, seperti OWASP Core Rule Set yang disediakan oleh Google Cloud Armor. Aturan yang telah dikonfigurasi sebelumnya ini berisi beberapa tanda tangan bawaan yang digunakan Google Cloud Armor untuk mengevaluasi permintaan masuk. Anda menambahkan aturan yang telah dikonfigurasi sebelumnya ini ke aturan baru atau yang sudah ada dengan menggunakan referensi bahasa aturan kustom.
Untuk mengetahui 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 mencakup contoh output sebenarnya dari perintah. Perhatikan bahwa output sebenarnya akan mencakup semua aturan yang tercantum dalam Menyesuaikan aturan WAF 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 berikutnya
- Menyesuaikan aturan firewall aplikasi web (WAF)
- Memecahkan masalah
- Menggunakan referensi bahasa aturan kustom