Cloudflare
Dokumen ini menjelaskan cara mengintegrasikan Cloudflare dengan Google Security Operations.
Kasus Penggunaan Produk
Melakukan pengayaan entity
Mengonfigurasi integrasi Cloudflare di Google Security Operations
Untuk mendapatkan petunjuk mendetail terkait cara mengonfigurasi integrasi di Google SecOps, lihat Mengonfigurasi integrasi.
Parameter integrasi
Gunakan parameter berikut untuk mengonfigurasi integrasi:
| Nama Tampilan Parameter | Jenis | Nilai Default | Wajib Diisi | Deskripsi |
|---|---|---|---|---|
| Root API | String | https://api.cloudflare.com |
Ya | Root API instance Cloudflare. |
| Token API | Sandi | T/A | Ya | Token API instance Cloudflare. |
| Nama Akun | String | T/A | Ya | Nama akun yang perlu digunakan dalam integrasi. |
| Verifikasi SSL | Kotak centang | Dicentang | Tidak | Jika diaktifkan, setelan ini akan memverifikasi bahwa sertifikat SSL untuk koneksi ke server Cloudflare valid. |
Cara mengonfigurasi token
- Buka Profile Settings, lalu klik API Tokens.
- Buka Create Token > Create Custom Token, lalu pilih izin berikut:
| Akun | WAF Akun | Baca |
| Akun | Kebijakan Aturan | Baca |
| Akun | Daftar Filter Akun | Edit |
| Akun | Akses Firewall Akun | Edit |
| Akun | Firewall DNS | Baca |
| Akun | Setelan Akun | Baca |
| Zona | WAF Zona | Edit |
| Zona | Setelan Zona | Baca |
| Zona | Zona | Baca |
| Zona | Log | Baca |
| Zona | Layanan Firewall | Edit |
| Zona | Layanan Firewall | Baca |
| Zona | Analytics | Baca |

Tindakan
Menambahkan IP ke Daftar Aturan
Deskripsi
Tambahkan alamat IP ke daftar aturan di Cloudflare. Entity yang Didukung: Alamat IP.
Parameter
| Nama Tampilan Parameter | Jenis | Nilai Default | Wajib Diisi | Deskripsi |
|---|---|---|---|---|
| Nama Aturan | String | T/A | Ya | Tentukan nama daftar aturan yang ingin Anda tambahi item daftar aturan. |
| Deskripsi | String | T/A | Tidak | Tentukan deskripsi untuk item daftar aturan yang baru ditambahkan. |
Dijalankan pada
Tindakan ini berjalan di entity Alamat IP.
Hasil Tindakan
Hasil Skrip
| Nama Hasil Skrip | Opsi Nilai | Contoh |
|---|---|---|
| is_success | Benar/Salah | is_success:False |
Hasil JSON
{
"result": {
"operation_id": "f16b978552ca49f88b36fe628de31142"
},
"success": true,
"errors": [],
"messages": []
}
Repositori Kasus
| Jenis hasil | Nilai / Deskripsi | Jenis |
|---|---|---|
| Pesan output* | Tindakan tidak boleh gagal atau menghentikan eksekusi playbook: Jika kode status 200 dilaporkan untuk satu entitas (is_success=true): "Successfully added the following entities to the {name} rule list in Cloudflare: {entity.identifier}." Jika tidak berhasil untuk satu entitas (is_success=true): "Action wasn't able to add the following entities to the {name} rule list in Cloudflare: {entity.identifier}." Jika tidak berhasil untuk semua (is_success=false): "None of the provided entities were added to the {name} rule list." Tindakan akan gagal dan menghentikan eksekusi playbook: Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya dilaporkan: "Error executing action "Add IP To Rule List". Reason: {0}''.format(error.Stacktrace) Jika daftar tidak ditemukan: "Error executing action "Add IP To Rule List". Alasan: daftar aturan {name} tidak ditemukan di Cloudflare.'' Jika daftar bukan jenis yang valid: "Error executing action "Add IP To Rule List". Alasan: daftar aturan {name} bukan jenis "IP"." |
Umum |
Tambahkan URL ke Daftar Aturan
Deskripsi
Tambahkan URL ke daftar aturan di Cloudflare. Entity yang Didukung: URL.
Parameter
| Nama Tampilan Parameter | Jenis | Nilai Default | Wajib Diisi | Deskripsi |
|---|---|---|---|---|
| Nama Aturan | String | T/A | Ya | Tentukan nama daftar aturan yang ingin Anda tambahi item daftar aturan. |
| URL Sumber | String | T/A | Ya | Tentukan URL sumber untuk item daftar aturan. |
| Deskripsi | String | T/A | Tidak | Tentukan deskripsi untuk item daftar aturan yang baru ditambahkan. |
| Kode Status | DDL | 301 Nilai yang Mungkin Muncul:
|
Tidak | Tentukan status untuk item daftar aturan. |
| Pertahankan String Kueri | Kotak centang | Tidak dicentang | Tidak | Jika diaktifkan, item daftar aturan akan mempertahankan string kueri. |
| Sertakan Subdomain | Kotak centang | Tidak dicentang | Tidak | Jika diaktifkan, item daftar aturan akan menyertakan subdomain. |
| Pencocokan Subjalur | Kotak centang | Tidak dicentang | Tidak | Jika diaktifkan, item daftar aturan akan cocok dengan subjalur. |
| Mempertahankan Akhiran Jalur | Kotak centang | Tidak dicentang | Tidak | Jika diaktifkan, item daftar aturan akan mempertahankan akhiran jalur. |
Dijalankan pada
Tindakan ini berjalan di entity Alamat IP.
Hasil Tindakan
Hasil Skrip
| Nama Hasil Skrip | Opsi Nilai | Contoh |
|---|---|---|
| is_success | Benar/Salah | is_success:False |
Hasil JSON
{
"result": {
"operation_id": "f16b978552ca49f88b36fe628de31142"
},
"success": true,
"errors": [],
"messages": []
}
Repositori Kasus
| Jenis hasil | Nilai / Deskripsi | Jenis |
|---|---|---|
| Pesan output* | Tindakan tidak boleh gagal atau menghentikan eksekusi playbook: Jika kode status 200 untuk satu entitas (is_success=true): "Successfully added the following entities to the {name} rule list in Cloudflare: {entity.identifier}." Jika tidak berhasil untuk satu entitas (is_success=true): "Action wasn't able to add the following entities to the {name} rule list in Cloudflare: {entity.identifier}." Jika tidak berhasil untuk semua entitas (is_success=false): "None of the provided entities were added to the {name} rule list." Tindakan akan gagal dan menghentikan eksekusi playbook: Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya dilaporkan: "Error executing action "Add URL To Rule List". Reason: {0}''.format(error.Stacktrace) Jika daftar tidak ditemukan: "Error executing action "Add URL To Rule List". Alasan: daftar aturan {name} tidak ditemukan di Cloudflare.'' Jika daftar bukan jenis yang valid: "Error executing action "Add URL To Rule List". Alasan: daftar aturan {name} bukan jenis "Pengalihan".' |
Umum |
Membuat Aturan Firewall
Deskripsi
Buat aturan firewall di Cloudflare.
Parameter
| Nama Tampilan Parameter | Jenis | Nilai Default | Wajib Diisi | Deskripsi |
|---|---|---|---|---|
| Nama Zona | String | T/A | Ya | Tentukan nama zona, yang berisi aturan firewall. |
| Nama | String | T/A | Tidak | Tentukan nama untuk aturan firewall. |
| Tindakan | DDL | Blokir Nilai yang Mungkin Muncul:
|
Tidak | Tentukan tindakan untuk aturan firewall. Jika "Blokir" dipilih, Anda harus memberikan nilai dalam parameter "Produk". |
| Ekspresi | String | T/A | Ya | Tentukan ekspresi untuk aturan firewall. |
| Produk | CSV | T/A | Tidak | Tentukan daftar produk yang dipisahkan koma untuk aturan firewall. Catatan: Parameter ini hanya wajib diisi jika "Bypass" dipilih untuk parameter "Action". Nilai yang mungkin: zoneLockdown, uaBlock, bic, hot, securityLevel, rateLimit, waf |
| Prioritas | Bilangan bulat | T/A | Tidak | Tentukan prioritas untuk aturan firewall. |
| Tag Referensi | String | T/A | Tidak | Tentukan tag referensi untuk aturan firewall. Catatan: Panjangnya hanya boleh maksimal 50 karakter. |
Dijalankan pada
Tindakan ini tidak berjalan di entity.
Hasil Tindakan
Hasil Skrip
| Nama Hasil Skrip | Opsi Nilai | Contoh |
|---|---|---|
| is_success | Benar/Salah | is_success:False |
Hasil JSON
{
{
"id": "b520c154bdeb4fe2a1f647b2c6b35829",
"paused": false,
"description": "Blocks traffic identified during investigation for MIR-31",
"action": "block",
"priority": 50,
"filter": {
"id": "fc6dfad848c24a42ae5be0114db09fb9",
"expression": "(ip.geoip.continent eq \"ASIA\")",
"paused": false
},
"created_on": "2022-07-25T11:19:22Z",
"modified_on": "2022-07-25T11:19:22Z",
"index": 0
}
}
Repositori Kasus
| Jenis hasil | Nilai / Deskripsi | Jenis |
|---|---|---|
| Pesan output* | Tindakan tidak boleh gagal atau menghentikan eksekusi playbook: Jika kode status 200 dilaporkan (is_success=true): "Successfully created a new firewall rule in "{zone_name}" zone in Cloudflare.". Tindakan akan gagal dan menghentikan eksekusi playbook: Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya dilaporkan: "Error executing action "Create Firewall Rule". Reason: {0}''.format(error.Stacktrace) Jika daftar error tidak kosong: "Error executing action "Create Firewall Rule". Reason: {0}''.format(errors/message) Jika zona tidak ditemukan: "Error executing action "Create Firewall Rule". Reason: zone {zone_name} wasn't found in Cloudflare.'' |
Umum |
Membuat Daftar Aturan
Deskripsi
Buat daftar aturan di Cloudflare.
Parameter
| Nama Tampilan Parameter | Jenis | Nilai Default | Wajib Diisi | Deskripsi |
|---|---|---|---|---|
| Nama | String | T/A | Ya | Tentukan nama untuk daftar aturan. |
| Jenis | DDL | Alamat IP Nilai yang Mungkin Muncul:
|
Tidak | Tentukan jenis untuk daftar aturan. |
| Deskripsi | String | T/A | Tidak | Tentukan deskripsi untuk daftar aturan. |
Dijalankan pada
Tindakan ini tidak berjalan di entity.
Hasil Tindakan
Hasil Skrip
| Nama Hasil Skrip | Opsi Nilai | Contoh |
|---|---|---|
| is_success | Benar/Salah | is_success:False |
Hasil JSON
{
"id": "d19589d629f140c0b961c467feadf99d",
"name": "123",
"kind": "ip",
"num_items": 0,
"description": "description",
"num_referencing_filters": 0,
"created_on": "2022-07-25T12:13:46Z",
"modified_on": "2022-07-25T12:13:46Z"
}
Repositori Kasus
| Jenis hasil | Nilai / Deskripsi | Jenis |
|---|---|---|
| Pesan output* | Tindakan tidak boleh gagal atau menghentikan eksekusi playbook: Jika kode status 200 dilaporkan (is_success = true): "Successfully create a rule list in Cloudflare." Tindakan akan gagal dan menghentikan eksekusi playbook: Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya dilaporkan: "Error executing action "Create Rule List". Reason: {0}''.format(error.Stacktrace) Jika daftar error tidak kosong: "Error executing action "Create Rule List". Reason: {0}''.format(errors/message) |
Umum |
Mencantumkan Aturan Firewall
Deskripsi
Mencantumkan aturan firewall yang tersedia di Cloudflare.
Parameter
| Nama Tampilan Parameter | Jenis | Nilai Default | Wajib Diisi | Deskripsi |
|---|---|---|---|---|
| Nama Zona | String | T/A | Ya | Tentukan nama zona, yang akan berisi aturan firewall. |
| Kunci Filter | DDL | Pilih Satu Nilai yang Mungkin Muncul:
|
Tidak | Tentukan kunci yang perlu digunakan untuk memfilter {item type}. |
| Logika Filter | DDL | Pilih Satu Nilai yang Mungkin Muncul:
|
Tidak | Tentukan logika filter yang harus diterapkan. Logika pemfilteran didasarkan pada nilai yang diberikan dalam parameter "Kunci Filter". |
| Nilai Filter | String | T/A | Tidak | Tentukan nilai yang harus digunakan dalam filter. Jika "Sama dengan" dipilih, tindakan akan mencoba menemukan kecocokan persis di antara hasil. Jika "Berisi" dipilih, tindakan akan mencoba menemukan hasil yang berisi substring tersebut. Jika tidak ada yang diberikan dalam parameter ini, filter tidak akan diterapkan. Logika pemfilteran didasarkan pada nilai yang diberikan dalam parameter "Kunci Filter". |
| Jumlah Data Maksimum yang Akan Ditampilkan | Bilangan bulat | 50 | Tidak | Tentukan jumlah kumpulan data yang akan ditampilkan. Jika tidak ada yang diberikan, tindakan akan menampilkan 50 data. |
Dijalankan pada
Tindakan ini tidak berjalan di entity.
Hasil Tindakan
Hasil Skrip
| Nama Hasil Skrip | Opsi Nilai | Contoh |
|---|---|---|
| is_success | Benar/Salah | is_success:False |
Hasil JSON
{
"id": "55ec8db30f9e4640b5d0d13cff6b5429",
"paused": false,
"description": "rulle2",
"action": "allow",
"filter": {
"id": "2bb05df8c4f547bd9792d8dc38a86b81",
"expression": "(ip.geoip.country eq \"BG\")",
"paused": false
},
"created_on": "2022-07-05T13:53:39Z",
"modified_on": "2022-07-05T13:53:39Z"
}
Repositori Kasus
| Jenis hasil | Nilai / Deskripsi | Jenis |
|---|---|---|
| Pesan output* | Tindakan tidak boleh gagal atau menghentikan eksekusi playbook: Jika data tersedia (is_success=true): "Successfully found {item name} for the provided criteria in {product name}". Jika data tidak tersedia (is_success=false): "No {item name} were found for the provided criteria in {product name}" Jika parameter "Filter Value" kosong (is_success=true): "Filter tidak diterapkan karena parameter "Nilai Filter" memiliki nilai kosong." Tindakan akan gagal dan menghentikan eksekusi playbook: Jika parameter "Filter Key" ditetapkan ke "Select One" dan parameter "Filter Logic" ditetapkan ke "Equal" atau "Contains": "Terjadi error saat menjalankan tindakan "{action name}". Alasan: Anda harus memilih kolom dari parameter "Kunci Filter"." Jika nilai yang tidak valid diberikan untuk parameter "Max Records to Return": "Error executing action "{action name}". Alasan: "Nilai yang diberikan untuk "Max Records to Return" tidak valid: . Angka positif harus diberikan." Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya dilaporkan: "Error executing action "{action name}". Reason: {0}''.format(error.Stacktrace) |
Umum |
| Tabel Repositori Kasus | Nama Tabel: {Kelompok item} yang tersedia Kolom Tabel: {fields} |
Umum |
Ping
Deskripsi
Uji konektivitas ke Cloudflare dengan parameter yang disediakan di halaman konfigurasi integrasi di halaman Google SecOps Content Hub.
Parameter
T/A
Dijalankan pada
Tindakan ini tidak menggunakan entity cakupan Google SecOps, dan tidak memiliki parameter input wajib.
Hasil Tindakan
Hasil Skrip
| Nama Hasil Skrip | Opsi Nilai | Contoh |
|---|---|---|
| is_success | Benar/Salah | is_success:False |
Hasil JSON
N/A
Repositori Kasus
| Jenis hasil | Nilai / Deskripsi | Jenis |
|---|---|---|
| Pesan output* | Tindakan tidak boleh gagal atau menghentikan eksekusi playbook: Jika berhasil: "Successfully connected to the SpyCloud server with the provided connection parameters!" Tindakan akan gagal dan menghentikan eksekusi playbook: Jika tidak berhasil: "Failed to connect to the SpyCloud server! Error is {0}".format(exception.stacktrace) Jika akun tidak ditemukan: "Failed to connect to the Cloudflare server! Nama akun yang diberikan tidak valid. Periksa ejaannya." |
Umum |
Memperbarui Aturan Firewall
Deskripsi
Memperbarui aturan firewall di Cloudflare.
Dijalankan pada
Tindakan ini tidak berjalan di entity.
Parameter
| Nama Tampilan Parameter | Jenis | Nilai Default | Wajib Diisi | Deskripsi |
|---|---|---|---|---|
| Nama Aturan | String | T/A | Ya | Tentukan nama aturan yang perlu diperbarui. |
| Nama Zona | String | T/A | Ya | Tentukan nama zona, yang berisi aturan firewall. |
| Tindakan | DDL | Blokir Nilai yang Mungkin Muncul:
|
Tidak | Tentukan tindakan untuk aturan firewall. Jika "Blokir" dipilih, Anda harus memberikan nilai dalam parameter "Produk". |
| Ekspresi | String | T/A | Ya | Tentukan ekspresi untuk aturan firewall. |
| Produk | CSV | T/A | Tidak | Tentukan daftar produk yang dipisahkan koma untuk aturan firewall. Catatan: Parameter ini hanya wajib diisi jika "Bypass" dipilih untuk parameter "Action". Nilai yang mungkin: zoneLockdown, uaBlock, bic, hot, securityLevel, rateLimit, waf |
| Prioritas | Bilangan bulat | T/A | Tidak | Tentukan prioritas untuk aturan firewall. |
| Tag Referensi | String | T/A | Tidak | Tentukan tag referensi untuk aturan firewall. Catatan: Panjangnya hanya boleh maksimal 50 karakter. |
Dijalankan pada
Hasil Tindakan
Hasil Skrip
| Nama Hasil Skrip | Opsi Nilai | Contoh |
|---|---|---|
| is_success | Benar/Salah | is_success:False |
Hasil JSON
{
{
"id": "b520c154bdeb4fe2a1f647b2c6b35829",
"paused": false,
"description": "Blocks traffic identified during investigation for MIR-31",
"action": "block",
"priority": 50,
"filter": {
"id": "fc6dfad848c24a42ae5be0114db09fb9",
"expression": "(ip.geoip.continent eq \"ASIA\")",
"paused": false
},
"created_on": "2022-07-25T11:19:22Z",
"modified_on": "2022-07-25T11:19:22Z",
"index": 0
}
}
Repositori Kasus
| Jenis hasil | Nilai / Deskripsi | Jenis |
|---|---|---|
| Pesan output* | Tindakan tidak boleh gagal atau menghentikan eksekusi playbook: Jika kode status 200 dilaporkan (is_success=true): "Successfully updated a firewall rule in "{zone_name}" zone in Cloudflare." Tindakan akan gagal dan menghentikan eksekusi playbook: Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya dilaporkan: "Error executing action "Update Firewall Rule". Reason: {0}''.format(error.Stacktrace) Jika daftar error tidak kosong: "Error executing action "Update Firewall Rule". Reason: {0}''.format(errors/message) Jika zona tidak ditemukan: "Error executing action "Update Firewall Rule". Reason: zone {zone_name} wasn't found in Cloudflare.'' |
Umum |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.