Mengonfigurasi kolom kalkulasi

Didukung di:

Panduan ini ditujukan untuk analis keamanan dan pengelola SOC yang ingin mengotomatiskan pengayaan data dalam operasi keamanan mereka. Video ini menjelaskan cara membuat dan mengelola Kolom Kalkulasi menggunakan formula logis untuk mendapatkan nilai baru dari data kasus dan pemberitahuan yang ada. Dengan mengikuti metode ini, Anda dapat menghilangkan entri data manual dan memastikan metrik penting diperbarui secara real time. Penyelesaian yang berhasil akan meningkatkan kemampuan analisis platform dan mempercepat triase insiden melalui pengisian kolom otomatis.

Dengan Kolom Kalkulasi, Anda dapat memperoleh titik data baru secara dinamis dalam kasus dan pemberitahuan Google Security Operations. Dengan menentukan formula logis, Anda dapat menghitung nilai berdasarkan kolom sistem atau kolom kustom yang ada. Nilai yang dihitung akan otomatis dievaluasi dan disimpan di kolom kustom yang sudah ada dan dipilih pengguna (berlabel Target Field) secara real time.

Kasus penggunaan umum

Skenario berikut menunjukkan cara paling umum yang digunakan organisasi dalam memanfaatkan kolom kalkulasi untuk meningkatkan efisiensi operasional dan kejelasan data.

Penilaian risiko otomatis

  • Tujuan: Mengategorikan kasus berdasarkan volume peristiwa atau tingkat prioritas.
  • Nilai: Menstandarkan triase dan memastikan insiden berisiko tinggi segera terlihat oleh tim.

Normalisasi data

  • Tujuan: Menandai pemberitahuan sebagai Test atau Production berdasarkan konvensi penamaan.
  • Nilai: Mengurangi derau dengan memungkinkan analis memfilter data pengujian yang tidak penting dari tampilan utama mereka.

Terminologi utama

  • Formula: Ekspresi logika berbasis teks yang Anda tentukan, menggunakan fungsi, operator, dan referensi kolom, untuk menghitung nilai.
  • Target Field: Custom Field yang ada (jenis Free Text) tempat hasil penghitungan formula disimpan.
  • Dependensi: Kolom yang direferensikan dalam formula Anda. Saat nilai kolom dependensi berubah, Kolom yang Dihitung akan dievaluasi ulang secara sinkron.

Sebelum memulai

Sebelum membuat penghitungan, pastikan lingkungan Anda memenuhi persyaratan teknis berikut:

  • Izin: Anda harus memiliki akses administratif ke menu Setelan dan izin untuk mengelola Tag.
  • Pemeriksaan lingkungan: Pastikan Anda memiliki Kolom Kustom (jenis Teks Bebas) yang sudah ada dan aktif untuk bertindak sebagai kolom target.

Pastikan Anda memiliki kolom kustom yang ada untuk digunakan sebagai kolom target di sistem Anda. Jika tidak, lakukan langkah-langkah berikut:

  1. Buka Setelan > Investigasi > Kolom Kustom.
  2. Buat Kolom Kustom baru dan tetapkan jenisnya ke Free Text.

Untuk mengetahui informasi selengkapnya tentang kolom kustom, lihat Membuat kolom kustom.

Batasan teknis dan aturan validasi

Sebelum menentukan penghitungan, pastikan kolom target dan logika Anda mengikuti batasan sistem ini. Aturan ini mengatur cara mesin Google SecOps memvalidasi dan mempertahankan hasil formula.

Kriteria validasi kolom

Mesin penghitungan menerapkan persyaratan berikut secara ketat untuk setiap kolom yang ditetapkan sebagai Kolom Target:

  • Jenis data: Kolom harus berjenis Teks Bebas.
  • Status operasional: Kolom harus Aktif; sistem tidak dapat menulis ke kolom yang dihapus atau tidak valid.
  • Pemetaan dependensi: Untuk mencegah logika sirkular, kolom tidak dapat menjadi target jika sudah menjadi dependensi untuk kolom kalkulasi lain.

Cakupan kolom

Saat Anda membuat Kolom Kustom dengan cakupan Both, sistem akan membuat entri unik untuk setiap konteks. Dengan demikian, Anda dapat mempertahankan logika terpisah untuk kasus dan pemberitahuan dalam kategori logis yang sama.

Di menu Kolom Target, Anda harus memilih cakupan spesifik yang relevan dengan formula Anda:

  • Cakupan kasus: Diberi label sebagai CaseCustom.YourField (misalnya, CaseCustom.RiskLevel)
  • Cakupan pemberitahuan: Diberi label sebagai AlertCustom.YourField (misalnya, AlertCustom.RiskLevel)

Membuat dan mengelola Kolom Kalkulasi

Bagian ini menguraikan cara menentukan penghitungan baru dan mengatasi masalah umum selama proses penyiapan.

Membuat penghitungan baru

Untuk membuat penghitungan baru, lakukan tindakan berikut:

  1. Buka Setelan > Investigasi > Kolom yang Dihitung.
  2. Klik add Add.
  3. Di kolom Nama Kolom yang Dihitung, masukkan nama dan deskripsi unik untuk penghitungan Anda.
  4. Di area Target Field, pilih Custom Field yang ada untuk menyimpan hasilnya.

    1. Kegagalan yang diantisipasi: Kolom yang dipilih tidak muncul di menu.
    2. Langkah perbaikan: Pastikan Kolom Kustom aktif, ditetapkan ke Teks Bebas, dan belum menjadi dependensi untuk penghitungan lain.
  5. Di editor teks, buat formula Anda menggunakan fungsi, operator, dan sintaksis yang didukung. Buat ekspresi logis (misalnya, IF ([case.priority] == "High") THEN "Urgent" ELSE "Standard"). Untuk mengetahui detail selengkapnya, lihat Bahasa dan sintaksis formula.

  6. Klik Simpan.

    1. Kegagalan yang diantisipasi: Sistem menolak penyimpanan dan menampilkan sorotan error berwarna merah.
    2. Langkah perbaikan: Periksa error sintaksis, seperti tanda kurung yang tidak ada di sekitar kondisi IF atau kata kunci huruf kecil.

Mengakses aset dan referensi lanjutan

Formula harus mengikuti aturan tata bahasa dan peka huruf besar/kecil yang ketat untuk semua operator dan fungsi bawaan. Gunakan spesifikasi teknis berikut untuk memastikan penghitungan Anda valid.

Contoh formula

Template berikut menunjukkan cara menggabungkan fungsi dan operator untuk mengotomatiskan pengayaan data. Anda dapat menyalin dan menyesuaikan cuplikan ini agar sesuai dengan nama kolom dan persyaratan organisasi Anda.

Contoh 1: Menetapkan tingkat risiko

Gunakan formula ini untuk mengategorikan kasus berdasarkan kata kunci tertentu yang ditemukan dalam judul kasus.

  • Target Field: CaseCustom.risk_level (Text)
  • Sasaran: Menetapkan status "Tinggi" secara otomatis ke insiden mendesak
  • Formula:

    IF (CONTAINS([case.name], "urgent")) THEN "High" ELSE "Medium"

Contoh 2: Menandai pemberitahuan pengujian

Logika ini mengidentifikasi dan memberi label pada data pengujian untuk membantu analis memfilter tampilan utama mereka dan tetap fokus pada insiden produksi.

  • Target Field: AlertCustom.is_test (Text)
  • Sasaran: Mendeteksi akhiran -TEST atau string TEST dalam nama pemberitahuan
  • Formula:

    IF (CONTAINS([alert.name], "TEST") OR ENDS_WITH([alert.name], "-TEST"))
    THEN "TRUE"
    ELSE "FALSE"
    

Contoh 3: Menggabungkan kondisi

Contoh ini menunjukkan logika bertingkat untuk memprioritaskan peninjauan berdasarkan volume peristiwa dan tingkat prioritas yang ada.

  • Target Field: CaseCustom.review_status (Text)
  • Sasaran: Memicu peninjauan manual hanya jika panjang log signifikan dan prioritasnya bukan Low.
  • Formula:

    IF (LENGTH(\[AlertCustom.event\_details\]) \> 100 AND NOT IS(\[case.priority\], "Low"))
    THEN "Needs Review"
    ELSE "Auto-Closed"
    

Bahasa dan sintaksis formula

Mesin penghitungan peka huruf besar/kecil untuk semua operator, kata kunci, dan fungsi bawaan. Anda harus menulis kata kunci (misalnya, IF, THEN, ELSE, AND, OR, NOT) dan nama fungsi (misalnya, CONTAINS, LENGTH, STARTS_WITH, ENDS_WITH, IS, IS_NOT, DOES_NOT_CONTAIN) dalam huruf besar. Namun, pengujian string teks dalam fungsi dan operator kesetaraan tidak peka huruf besar/kecil. Misalnya, penelusuran "phishing" akan berhasil mencocokkan "PHISHING" atau "Phishing".

Jenis data dan literal

Literal adalah nilai tetap yang digunakan dalam ekspresi. Sebaiknya pastikan operasi dan argumen fungsi Anda menggunakan jenis yang kompatibel.

Jenis Sintaksis dan aturan Contoh
STRING Teks yang diapit tanda kutip ganda. "critical", "N/A"
NUMBER Bilangan bulat atau desimal. 100, 3,14
BOOLEAN Harus menggunakan huruf besar. TRUE, FALSE
NULL Merepresentasikan nilai kosong. NULL

Referensi kolom

Untuk menggunakan nilai kolom lain, apit nama kolom dalam tanda kurung siku, seperti [object.field_name].

  • Aturan sintaksis: Anda harus menggunakan awalan dengan referensi kolom. Anda harus menggunakan awalan (misalnya, case. atau AlertCustom.) diikuti dengan titik dan nama kolom. Nama kolom itu sendiri dapat berisi huruf, angka, garis bawah, dan spasi. Misalnya: [case.name], [alert.priority], [AlertCustom.my_custom_field].
  • Anda dapat menggunakan kolom sistem berikut: case.name, case.stage, case.priority, alert.name, alert.priority, alert.rule_generator.
  • Anda dapat mereferensikan semua Kolom Kustom yang ditentukan pengguna.
  • Formula Kolom Kalkulasi tidak dapat merujuk ke Kolom Kalkulasi lainnya.

Operator

Gunakan operator untuk perbandingan dan operasi logis. Menggunakan tanda kurung () untuk mengganti prioritas default dan ekspresi grup

  • Operator perbandingan: ==, !=, >, >=, <, <=
  • Operator logika: AND, OR, NOT
  • Prioritas operator: NOT, >, >=, <, <=, AND, OR,

Ekspresi bersyarat

Sistem ini mendukung logika kondisional menggunakan sintaksis IF (condition) THEN expression1 ELSE expression2. Bagian ELSE bersifat opsional; jika Anda menghilangkannya dan kondisinya adalah FALSE, hasilnya akan ditetapkan secara default ke NULL.

Kondisi harus berupa ekspresi yang bernilai TRUE atau FALSE.

Misalnya, IF ( [CaseCustom.score] > 75 ) THEN "High Risk" ELSE "Low Risk".

Fungsi

Fungsi adalah operasi yang telah ditentukan dan harus menggunakan huruf besar sepenuhnya. Tabel berikut mencantumkan fungsi yang didukung untuk manipulasi dan evaluasi data.

Fungsi Deskripsi Sintaksis Jenis Nilai yang Ditampilkan
CONTAINS(field, substring) Memeriksa apakah kolom teks berisi substring (tidak peka huruf besar/kecil) CONTAINS([case.name], "phishing") BOOLEAN
DOES_NOT_CONTAIN(field, substring) Memeriksa apakah kolom teks tidak berisi substring (tidak peka huruf besar/kecil) DOES_NOT_CONTAIN([case.name], "test") BOOLEAN
LENGTH(field) Menampilkan jumlah karakter dalam kolom LENGTH([case.name]) NUMBER
STARTS_WITH(field, prefix) Memeriksa apakah kolom diawali dengan awalan (tidak peka huruf besar/kecil) STARTS_WITH([CaseCustom.hostname], "srv-") BOOLEAN
ENDS_WITH(field, suffix) Memeriksa apakah kolom diakhiri dengan akhiran (tidak peka huruf besar/kecil) ENDS_WITH([AlertCustom.filename], ".exe") BOOLEAN
IS(field, literal) Memeriksa apakah nilai kolom sama dengan literal (tidak peka huruf besar/kecil) IS([alert.priority], "High") BOOLEAN
IS_NOT(field, literal) Memeriksa apakah nilai kolom TIDAK sama dengan literal (tidak peka huruf besar/kecil) IS_NOT([alert.priority], "Low") BOOLEAN

Kata kunci dan ID yang dicadangkan

Mesin penghitungan mencadangkan kata-kata tertentu untuk operasi dan fungsi logis. Anda tidak dapat menggunakan istilah ini sebagai nama kolom kustom atau ID lainnya dalam formula:

  • Logis: AND, OR, NOT, IF, THEN, ELSE
  • Nilai: NULL, TRUE, FALSE
  • Fungsi: CONTAINS, LENGTH, STARTS_WITH, ENDS_WITH, IS, IS_NOT, DOES_NOT_CONTAIN

Kompatibilitas jenis data

Untuk memastikan evaluasi berhasil, pastikan semua operasi dan argumen fungsi menggunakan jenis yang kompatibel. Jenis yang didukung mencakup STRING, NUMBER, BOOLEAN, dan NULL.

Output akhir formula harus cocok dengan jenis yang diharapkan Target Field. Karena Kolom Target dibatasi untuk "Teks Bebas", formula Anda pada akhirnya harus di-resolve menjadi string atau nilai yang dapat ditransmisikan secara implisit ke format target.

Pemformatan dan spasi kosong

Meskipun spasi, tab, dan baris baru umumnya diabaikan di antara token, elemen tersebut sangat diperlukan untuk memisahkan kata kunci dari ID. Gunakan spasi kosong secara strategis untuk menyusun formula kompleks multibaris agar lebih mudah dikelola dan ditinjau oleh rekan kerja.

Menulis formula yang efektif

Meskipun mesin penghitungan fleksibel dengan spasi kosong, ikuti standar pemformatan ini untuk membantu mencegah error logika dan menyederhanakan pemecahan masalah.

  • Pengelompokan eksplisit: Gunakan tanda kurung untuk menentukan urutan operasi dengan jelas, bahkan saat mengandalkan prioritas standar. Hal ini membantu mencegah ambiguitas logis.
  • Struktur visual: Terapkan spasi di sekitar operator (==, AND, OR) dan sisipkan baris baru untuk pernyataan IF/THEN bertingkat agar logika mudah dipindai.
  • Validasi jenis: Selalu verifikasi bahwa output akhir formula Anda cocok dengan jenis yang diharapkan Kolom Target untuk mencegah error evaluasi.

    IF (
        (IS([CaseCustom.event_count], "100") AND NOT IS([case.priority], "Low"))
        OR CONTAINS([case.name], "Critical")
    )
    THEN "Needs Immediate Review"
    ELSE "Standard Review"
    

Pemecahan masalah

Bagian ini menguraikan ekspektasi performa dan memberikan perbaikan mandiri untuk masalah deployment umum yang terjadi saat membuat atau mengelola formula.

Latensi dan batas

Kolom Kalkulasi dievaluasi secara sinkron setiap kali kolom dependensi berubah. Untuk mempertahankan performa sistem, Kolom Penghitungan tidak dapat merujuk ke Kolom Penghitungan lain; sistem memblokir dependensi berantai ini untuk mencegah rekursi dan penundaan pemrosesan.

Perbaikan error

Saat Anda menulis formula secara manual, error dapat terjadi karena ketidakcocokan sintaksis atau jenis data. Gunakan tabel berikut untuk memetakan kode error spesifik terkait perjalanan ke perbaikan yang tepat dan dapat ditindaklanjuti.

Jenis error Masalah Perbaiki
Sintaksis Formula melanggar aturan tata bahasa, seperti tanda kurung yang tidak cocok atau kata kunci huruf kecil. Gabungkan semua kondisi IF dalam () dan pastikan semua kata kunci menggunakan HURUF BESAR.
Validasi Formula merujuk ke kolom yang tidak diketahui (misalnya, [\case.typo]) atau menghasilkan ketidakcocokan jenis. Verifikasi nama kolom dalam tanda kurung siku dan konfirmasi bahwa output cocok dengan jenis Kolom Target.
Evaluasi Formula valid, tetapi gagal selama eksekusi, sering kali menampilkan #ERROR!. Periksa masalah runtime, seperti meneruskan nilai non-string ke fungsi seperti LENGTH().

Mengubah atau menghapus kolom target

Sistem secara aktif melindungi kolom yang diandalkan formula Anda untuk menjaga integritas data. Jika Anda mencoba menghapus atau mengubah Kolom Kustom yang digunakan sebagai kolom target, sistem akan memblokir tindakan tersebut dan menampilkan peringatan yang menunjukkan penggunaan aktifnya di Kolom Kalkulasi.

Validasi dan pengujian

Setelah menyimpan penghitungan baru, verifikasi hasilnya dengan membuka kasus atau pemberitahuan dan memperbarui kolom dependensi. Pastikan Kolom Target diisi dengan nilai yang diharapkan secara real time.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.