Halaman ini menjelaskan cara mengelola kebijakan keamanan Google Cloud Armor dan memfilter traffic yang masuk ke aplikasi Anda. Kebijakan keamanan Cloud Armor membantu melindungi layanan dan aplikasi web Anda dari serangan distributed denial of service (DDoS) dan ancaman lainnya dari internet. Menerapkan postur keamanan yang kuat memerlukan pengelolaan kebijakan keamanan Anda melalui pembuatan, pengujian, dan konsolidasi. Untuk membuat atau melihat kebijakan keamanan, lihat Membuat dan melihat kebijakan keamanan Cloud Armor.
Mengelola kebijakan keamanan
Bagian berikut menjelaskan cara mencantumkan, memperbarui, menghapus, atau menguji kebijakan keamanan.
Membuat daftar kebijakan keamanan
Ikuti langkah-langkah di bagian ini untuk mencantumkan kebijakan keamanan Cloud Armor di project Anda.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Untuk melihat kebijakan, dalam daftar kebijakan, klik nama kebijakan tertentu tersebut.
gcloud
gcloud compute security-policies list
Contoh:
gcloud compute security-policies list
Output:
NAME: my-policy REGION: us-central1
Untuk informasi selengkapnya, lihat gcloud compute security-policies
list.
Memperbarui kebijakan keamanan
Langkah-langkah di bagian ini menjelaskan cara memperbarui kebijakan keamanan Cloud Armor. Anda dapat mengubah deskripsi kebijakan, mengubah aturan default, mengubah layanan backend target, atau menambahkan aturan.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Temukan nama kebijakan yang ingin Anda perbarui dalam daftar kebijakan, lalu klik Menu untuk kebijakan tersebut.
- Untuk memperbarui deskripsi atau tindakan aturan default, pilih Edit, lakukan perubahan, lalu klik Perbarui.
- Untuk menambahkan aturan, pilih Tambahkan aturan, lalu ikuti langkah-langkah di Menambahkan aturan ke kebijakan keamanan.
- Untuk mengganti layanan backend target, pilih Apply policy to target, klik Add Target, pilih target, lalu klik Add.
gcloud
Untuk memperbarui kebijakan keamanan, gunakan langkah-langkah Google Cloud CLI berikut:
- Untuk memperbarui aturan, lihat Memperbarui satu aturan dalam kebijakan keamanan.
- Untuk menambahkan aturan, lihat Menambahkan aturan ke kebijakan keamanan.
- Untuk menghapus aturan, lihat Menghapus aturan dari kebijakan keamanan.
- Untuk memperbarui beberapa aturan dalam satu update atomik, lihat Memperbarui beberapa aturan secara atomik dalam kebijakan keamanan.
- Untuk memperbarui kolom non-aturan (seperti deskripsi), lihat Mengekspor kebijakan keamanan dan Mengimpor kebijakan keamanan.
Menghapus beberapa kebijakan keamanan
Bagian ini menjelaskan cara menghapus kebijakan keamanan Cloud Armor. Hapus semua layanan backend dari kebijakan sebelum Anda menghapusnya.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Centang kotak di samping kebijakan yang ingin Anda hapus.
Di pojok kanan atas halaman, klik Delete.
gcloud
Gunakan 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 memverifikasi bahwa kebijakan dan aturan berfungsi seperti yang diharapkan.
Mengelola aturan kebijakan keamanan
Bagian berikut menjelaskan cara mencantumkan, menambahkan, memperbarui, atau menghapus aturan kebijakan keamanan.
Membuat daftar aturan dalam kebijakan keamanan
Ikuti langkah-langkah di bagian ini untuk membuat daftar aturan dalam kebijakan keamanan Cloud Armor.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan tertentu. Halaman Policy details menampilkan aturan kebijakan di tab Rules.
gcloud
Gunakan perintah gcloud berikut untuk mencantumkan semua aturan dalam kebijakan keamanan:
gcloud compute security-policies describe NAME \
Gunakan perintah gcloud berikut untuk mencantumkan semua aturan dalam satu kebijakan keamanan di wilayah tertentu beserta deskripsi kebijakan:
gcloud compute security-policies describe NAME \ --region REGION
Gunakan perintah gcloud berikut untuk mendeskripsikan aturan:
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
Untuk informasi selengkapnya, lihat gcloud compute security-policies
describe.
Menambahkan aturan ke kebijakan keamanan
Ikuti langkah-langkah di bagian ini untuk menambahkan aturan ke kebijakan keamanan Cloud Armor.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan untuk membuka halaman Policy details.
Di bagian tengah halaman, klik tab Rules.
Klik Add Rule.
Opsional: Masukkan deskripsi aturan.
Pilih mode:
- Basic mode: mengizinkan atau menolak traffic berdasarkan alamat IP atau rentang IP.
- Mode lanjutan: mengizinkan atau menolak traffic berdasarkan ekspresi aturan.
Di kolom Match, tentukan kondisi yang berlaku untuk aturan:
Basic mode: masukkan dari satu (1) hingga 10 rentang alamat IP yang akan dicocokkan dengan aturan. Anda dapat menambahkan maksimal 10 rentang alamat IP. Untuk batas, lihat Kuota dan batas Cloud Armor.
Mode lanjutan:
- Pembuat kondisi kecocokan (Pratinjau): gunakan pembuat visual untuk membuat ekspresi tanpa menulis kode CEL mentah. Gabungkan dan kelompokkan kondisi, lalu terapkan transformasi string. Lihat Menggunakan pembuat kondisi kecocokan.
- Editor kondisi kecocokan: masukkan ekspresi untuk dievaluasi terhadap permintaan yang masuk. Untuk mengetahui informasi selengkapnya, lihat referensi bahasa aturan kustom.
Ekspresi berikut cocok dengan permintaan dari alamat IP
1.2.3.4yang berisi stringexampledi headerUser-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 region
AU:origin.region_code == 'AU'Ekspresi berikut cocok dengan permintaan dari wilayah
AUyang 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 header
user-idberisi nilai yang dienkode Base64 yang, saat didekode, berisi string 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')
Dalam daftar Tindakan, pilih Izinkan atau Tolak.
Jika Anda mengonfigurasi aturan penolakan (Deny), pilih pesan Deny status.
Untuk mengaktifkan mode pratinjau untuk aturan, pilih Aktifkan.
Di kolom Priority, masukkan bilangan bulat positif.
Klik Add.
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 dengan prioritas 1000 untuk memblokir traffic dari rentang alamat IP 192.0.2.0/24 dan 198.51.100.0/24:
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. Perintah
berikut menambahkan aturan untuk mengizinkan traffic dari alamat IP 1.2.3.4 yang
berisi string example di header User-Agent:
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 wilayah 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 mengatasi 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
Bagian ini menjelaskan cara memperbarui satu aturan dalam kebijakan keamanan Cloud Armor. Untuk memperbarui beberapa aturan secara atomik, lihat Memperbarui beberapa aturan secara atomik dalam kebijakan keamanan.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan untuk membuka halaman Policy details.
Di bagian tengah halaman, klik tab Rules.
Di samping aturan yang ingin diperbarui, klik Edit. Halaman Edit rule akan ditampilkan.
Lakukan perubahan, lalu klik Update.
gcloud
Gunakan perintah berikut untuk memperbarui aturan. Anda hanya dapat mengupdate satu kebijakan keamanan dalam satu waktu:
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 mengupdate 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 mengetahui informasi selengkapnya tentang perintah sebelumnya, lihat gcloud compute
security-policies rules
update.
Untuk memperbarui prioritas aturan, gunakan REST API. Lihat
securityPolicies.patchRule.
Menggunakan pembuat kondisi
Pembuat kondisi kecocokan adalah antarmuka visual di Google Cloud konsol yang membantu Anda membuat ekspresi aturan Cloud Armor yang kompleks tanpa menulis kode Common Expression Language (CEL). Daripada menulis kode, Anda dapat menggunakan UI terstruktur pembangun untuk menggabungkan kondisi dan mengelompokkan logika, yang dapat membantu Anda menghindari error sintaksis dan memvisualisasikan struktur aturan dengan lebih baik. Builder mendukung daftar datar dan logika bertingkat hingga lima tingkat ekspresi. Gunakan alat ini saat Anda mengonfigurasi aturan untuk membantu melindungi backend multi-cloud atau deployment hybrid, yang mungkin mengharuskan Anda memeriksa atribut permintaan tertentu sebelum merutekan traffic.
Fitur pembuat kondisi kecocokan
Pembangun kondisi kecocokan mencakup fitur berikut:
- Logika dan penyusunan bertingkat: gabungkan beberapa kondisi menggunakan operator
ANDdanOR. Penyusun mendukung pengelompokan dan penyusunan hingga lima ekspresi. - Transformasi string: untuk atribut berbasis string (seperti
request.pathataurequest.headers), terapkan transformasi untuk menormalisasi data sebelum evaluasi. Transformasi yang didukung meliputi:- Huruf Kecil dan Huruf Besar
- Decode Base64
- Dekode URL dan Dekode URL (Unicode)
- Konversi UTF-8 ke Unicode
- Penguraian dua arah: beralih antara pembuat kondisi Pencocokan visual dan editor kondisi Pencocokan teks mentah. UI mengurai kode CEL mentah menjadi blok visual secara otomatis.
- Dukungan fungsi: builder menyediakan kontrol UI untuk ekspresi berbasis fungsi, seperti aturan WAF yang telah dikonfigurasi sebelumnya, grup alamat, dan Threat Intelligence.
Batasan
Pembuat kondisi kecocokan adalah antarmuka default untuk pembuatan aturan lanjutan. Jika ekspresi berisi logika yang tidak didukung (seperti makro yang tidak diketahui), pembangun akan dinonaktifkan. Dalam kasus ini, gunakan teks mentah di editor Kondisi pencocokan untuk mengedit aturan.
Selain itu, ketersediaan ekspresi tertentu di builder bergantung pada tingkatan Google Cloud Armor Enterprise project Anda dan jenis kebijakan keamanan.
Memperbarui beberapa aturan secara atomik dalam kebijakan keamanan
Anda dapat menggunakan fitur update atomik untuk menerapkan perubahan pada beberapa aturan dalam satu update. Pembaruan aturan tunggal dapat menyebabkan perilaku yang tidak diinginkan seperti error karena aturan lama dan baru mungkin tumpang-tindih 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, lalu alihkan kebijakan keamanan untuk layanan backend.
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 yamlKebijakan 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: 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-policyGunakan editor teks untuk mengubah kebijakan. Misalnya, Anda dapat mengubah prioritas aturan yang ada dan menambahkan aturan:
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-policyBuat kebijakan keamanan Cloud Armor baru dan tentukan nama file dan format yang diubah, seperti yang ditunjukkan dalam contoh berikut:
gcloud compute security-policies create new-policy \ --file-name modified-policy \ --file-format yamlHapus 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-policyJika kebijakan lama tidak digunakan, hapus kebijakan tersebut:
gcloud compute security-policies delete my-policy
Menghapus aturan dari kebijakan keamanan
Ikuti langkah-langkah di bagian ini untuk menghapus aturan dari kebijakan keamanan Cloud Armor.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan untuk membuka halaman Policy details.
Di bagian tengah halaman, pada tab Rules, centang kotak di samping aturan yang ingin Anda hapus.
Klik Delete.
gcloud
Gunakan perintah berikut untuk menghapus aturan. 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
Bagian berikut menjelaskan cara melampirkan dan menghapus kebijakan keamanan.
Melampirkan kebijakan keamanan ke layanan backend
Ikuti langkah-langkah di bagian ini untuk melampirkan kebijakan keamanan Cloud Armor ke layanan backend. Anda dapat melampirkan kebijakan keamanan ke beberapa layanan backend, tetapi layanan backend hanya dapat memiliki satu dari setiap jenis kebijakan keamanan yang dilampirkan ke layanan tersebut.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan untuk membuka halaman Policy details.
Di bagian tengah halaman, klik tab Targets.
Klik Apply policy to new target.
Klik Add Target.
Di daftar Target, pilih target, lalu klik Add.
gcloud
Saat Anda melampirkan kebijakan keamanan backend ke layanan backend, gunakan
perintah gcloud compute backend-services dan flag --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
Ikuti langkah-langkah di bagian ini untuk menghapus kebijakan keamanan Cloud Armor dari layanan backend.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan untuk membuka halaman Policy details.
Di bagian tengah halaman, klik tab Targets.
Pilih layanan backend target tempat Anda menghapus kebijakan.
Klik Hapus.
Pada pesan Remove target, klik Remove.
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
Ikuti langkah-langkah di bagian ini untuk melampirkan kebijakan keamanan edge Cloud Armor ke bucket backend. Anda dapat melampirkan kebijakan keamanan edge ke beberapa bucket backend.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan untuk membuka halaman Policy details.
Di bagian tengah halaman, klik tab Targets.
Klik Apply policy to new target.
Klik Add Target.
Di daftar Target, pilih target, lalu klik Add.
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
Ikuti langkah-langkah di bagian ini untuk menghapus kebijakan keamanan edge Cloud Armor dari bucket backend.
Konsol
Di konsol Google Cloud , buka halaman Cloud Armor policies.
Klik nama kebijakan keamanan untuk membuka halaman Policy details.
Di bagian tengah halaman, klik tab Targets.
Pilih layanan backend target tempat Anda menghapus kebijakan.
Klik Hapus.
Pada pesan Remove target, klik Remove.
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
Bagian berikut menjelaskan cara mengimpor dan mengekspor kebijakan keamanan.
Mengekspor kebijakan keamanan
Anda dapat mengekspor kebijakan keamanan Cloud Armor sebagai file YAML atau JSON menggunakan Google Cloud CLI. Fitur ini memberikan manfaat berikut:
Menyimpan salinan untuk kontrol versi atau pencadangan: mengekspor akan memberikan salinan lokal kebijakan Anda. Simpan salinan ini dalam sistem kontrol sumber sebagai cadangan atau untuk melacak perubahan. Anda dapat mengimpor ulang nanti untuk memulihkan versi sebelumnya.
Mengubah dan memperbarui kebijakan secara lokal: ubah kebijakan yang diekspor secara offline menggunakan editor teks. Setelah melakukan perubahan, impor ulang kebijakan yang diperbarui untuk menerapkan modifikasi ke Cloud Armor.
gcloud
Dalam perintah berikut,
NAMEadalah nama kebijakan keamanan. Format file yang valid adalah YAML dan JSON. Jika Anda tidak menentukan format file, Cloud Armor akan menggunakan YAML.gcloud compute security-policies export NAME \ --file-name FILE_NAME \ --file-format FILE_FORMATContoh berikut menunjukkan perintah untuk mengekspor kebijakan keamanan
my-policyke filemy-filedalam format YAML:gcloud compute security-policies export my-policy \ --file-name my-file \ --file-format yamlContoh 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-policyUbah file yang diekspor dengan editor teks, lalu impor kembali ke Google Cloud dengan menggunakan perintah
import.
Mengimpor kebijakan keamanan
Anda dapat mengimpor kebijakan keamanan Cloud Armor dari file YAML atau JSON menggunakan Google Cloud CLI. Anda tidak dapat menggunakan perintah import
untuk memperbarui aturan kebijakan yang ada. Sebagai gantinya, perbarui 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 berikut.
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
Ganti NAME dengan nama kebijakan keamanan. Jika Anda
tidak memberikan format file, format yang benar akan diasumsikan berdasarkan struktur
file. Jika struktur tidak valid, gcloud CLI akan menampilkan pesan error.
Jika
sidik jari kebijakan sudah tidak berlaku
saat Anda mengimpornya, 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. Anda dapat menggunakan --format=yaml
atau --format=json dengan perintah describe untuk mempermudah perbandingan.
Bandingkan bagian rules dari output describe dengan bagian rules
dalam file kebijakan Anda, gabungkan perbedaan, lalu ganti sidik jari
yang sudah tidak berlaku dalam file Anda dengan sidik jari terbaru dari output describe.
Membuat daftar aturan yang telah dikonfigurasi dan tersedia
Selain aturan yang Anda konfigurasi sendiri, Cloud Armor menyediakan aturan yang telah dikonfigurasi sebelumnya yang dapat Anda gunakan dalam kebijakan keamanan. Anda dapat membuat daftar aturan yang telah dikonfigurasi sebelumnya untuk melihat aturan dan signature perlindungan aplikasi yang telah ditentukan sebelumnya seperti OWASP Core Rule Set yang disediakan Cloud Armor. Aturan ini berisi tanda tangan bawaan yang dievaluasi Cloud Armor berdasarkan permintaan masuk. Tambahkan aturan yang telah dikonfigurasi sebelumnya ini ke aturan baru atau yang sudah ada 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 tersebut. Perhatikan bahwa output sebenarnya akan mencakup semua aturan yang tercantum dalam Menyesuaikan aturan WAF Cloud Armor.
gcloud compute security-policies list-preconfigured-expression-sets
EXPRESSION_SET sqli-canary RULE_ID SENSITIVITY owasp-crs-v042200-id942120-sqli 2 … xss-canary RULE_ID SENSITIVITY owasp-crs-v042200-id941110-xss 1 owasp-crs-v042200-id941120-xss 2 … sourceiplist-fastly sourceiplist-cloudflare sourceiplist-imperva
Langkah berikutnya
- Menyesuaikan aturan firewall aplikasi web (WAF)
- Memecahkan masalah
- Menggunakan referensi bahasa aturan khusus
- Membuat dan melihat kebijakan keamanan