Menutup pemberitahuan secara massal menggunakan API
Dokumen ini menjelaskan cara menutup sejumlah besar pemberitahuan secara terprogram menggunakan Google Security Operations REST API. Google merekomendasikan penggunaan metode ini untuk situasi saat menutup pemberitahuan di platform akan terlalu memakan waktu.
Prasyarat
Sebelum memulai, pastikan Anda memiliki hal berikut:
- Lingkungan Python: Anda harus menginstal Python untuk menjalankan skrip contoh.
- Contoh API: Akses ke repositori GitHub
api-samples-python. - Kredensial: File kredensial yang valid (misalnya
.chronicle_credentials.json). - jq: Pemroses JSON command line yang digunakan untuk mengurai output API.
Menelusuri Deteksi
Pertama, Anda harus mengidentifikasi pemberitahuan (deteksi pemberitahuan) yang ingin Anda tutup. Anda menggunakan skrip list_detections.py untuk menemukan deteksi yang terkait dengan ID Aturan tertentu.
- Temukan ID Aturan dan Detail project Anda.
- Jalankan skrip untuk menampilkan deteksi ke file JSON. Nama file JSON dapat berupa
detections.jsonatautemp.json.
Perintah:
python -m detect.v1alpha.list_detections \
--project_id=$PROJECT_ID \
--project_instance=$PROJECT_INSTANCE \
--credentials_file=$CREDENTIALS_FILE \
--rule_id=$RULE_ID \
> ip_in_abuseipdb_out.json
Mengekstrak ID Deteksi
Skrip update massal memerlukan file teks biasa yang berisi satu ID deteksi per baris. Langkah sebelumnya membuat file JSON, yang sekarang harus Anda konversi menjadi file teks.
- Gunakan
jquntuk mengekstrak ID deteksi (yang dimulai dengande_) dari array JSON. - Simpan output ke file teks.
Perintah:
cat ip_in_abuseipdb_out.json | jq -r '.detections[].id' \
> ip_in_abuseipdb_out.txt
Tindakan ini akan membuat file yang mencantumkan ID, misalnya de_ad9d2771-a567....
Konfigurasi Masukan (Tindakan "tutup")
Saat Anda menutup peringatan, status "masukan" disetel ke CLOSED.
- Perilaku Default: Skrip
bulk_update_alerts.pymenggunakan payload masukan default yang di-hardcode:- Status:
CLOSED - Alasan:
REASON_MAINTENANCE - Komentar:
automated cleanup.
- Status:
- Penyesuaian: Jika Anda perlu mengubah putusan (misalnya menjadi
FALSE_POSITIVE) atau komentar, Anda dapat:- Edit langsung kamus
DEFAULT_FEEDBACKdalam file Python. - Meneruskan parameter CLI (misalnya,
--verdict="FALSE_POSITIVE") untuk mengganti nilai tertentu.
- Edit langsung kamus
Menjalankan Penutupan Massal
Jalankan skrip update massal menggunakan file teks yang Anda buat sebelumnya (Lihat Mengekstrak ID Deteksi). Skrip ini memanggil metode UpdateAlert untuk setiap ID dalam daftar Anda.
Perintah:
python -m detect.v1alpha.bulk_update_alerts \
--project_id=$PROJECT_ID \
--project_instance=$PROJECT_INSTANCE \
--credentials_file=$CREDENTIALS_FILE \
--alert_ids_file="$(pwd)/ip_in_abuseipdb_out.txt"
Verifikasi Penutupan (Opsional)
Untuk memverifikasi bahwa pemberitahuan berhasil ditutup, Anda dapat memeriksa detail satu pemberitahuan menggunakan modul get_alert.py.
Perintah:
python -m detect.v1alpha.get_alert \
--project_id=$PROJECT_ID \
--project_instance=$PROJECT_INSTANCE \
--credentials_file=$CREDENTIALS_FILE \
--alert_id=$ALERT_ID
Hasil yang Diharapkan: Output JSON berisi objek feedbackSummary yang menampilkan "status": "CLOSED" dan komentar yang Anda tentukan (misalnya "pembersihan otomatis").
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.