Menyiapkan webhook SIEM

Didukung di:

Sebelum memulai

Menggunakan contoh command line

Dokumen ini menyertakan contoh perintah curl untuk membantu Anda menyiapkan dan menguji feed webhook. Contoh ini menggunakan variabel placeholder yang dapat diedit. Untuk menggunakannya secara efektif:

  1. Edit variabel: Saat mengikuti langkah-langkah penyiapan, Anda akan mendapatkan nilai untuk endpoint webhook, kunci API, dan secret. Klik variabel placeholder dalam kode contoh dan ganti dengan nilai sebenarnya:

    Mengedit variabel dalam satu contoh kode akan memperbaruinya di semua contoh di halaman ini.

  2. Salin perintah: Klik ikon Salin contoh kode di blok kode.

  3. Jalankan perintah: Tempel perintah yang disalin ke lingkungan terminal Anda dan jalankan.

    Pastikan perintah curl menyertakan flag --fail (atau -f). Hal ini memastikan bahwa curl menampilkan kode keluar bukan nol jika permintaan HTTP gagal, dan kode keluar 0 untuk menunjukkan keberhasilan. Hal ini diperlukan untuk langkah berikutnya.

  4. Verifikasi keberhasilan: Perintah curl yang berhasil tidak menampilkan output. Untuk mengonfirmasi keberhasilan, lakukan hal berikut:

    Jika perintah curl menyertakan flag --fail (atau -f), periksa kode keluar dengan menjalankan perintah berikut segera setelahnya:

    echo $?
    

    Kode keluar 0 menunjukkan keberhasilan.

Menyiapkan feed webhook HTTPS

Untuk menyiapkan feed webhook HTTPS, lakukan hal berikut:

  1. Buat feed webhook HTTPS, lalu salin URL endpoint dan kunci secret.
  2. Buat kunci API untuk digunakan dengan URL endpoint. Anda juga dapat menggunakan kembali kunci API yang ada untuk mengautentikasi ke Google SecOps.
  3. Tentukan URL endpoint di aplikasi Anda.

Mengirim beberapa peristiwa dalam satu permintaan webhook

Contoh kode berikut menunjukkan cara memformat isi permintaan tunggal dengan beberapa objek JSON yang dipisahkan baris baru:

curl --location 'ENDPOINT_URL' \
  --header 'Content-Type: application/json' \
  --header 'X-goog-api-key: API_KEY' \
  --header 'X-Webhook-Access-Key: SECRET' \
  --data $'{"principal": {"asset_id": "asset 123"}, "metadata": {"event_type": "GENERIC_EVENT", "product_name": "Product Acme"}}\n{"principal": {"asset_id": "asset 123"}, "metadata": {"event_type": "GENERIC_EVENT", "product_name": "Product Acme"}}' \
  --fail

Membuat feed webhook HTTPS

  1. Di menu Google SecOps, pilih Settings, lalu klik Feeds.
  2. Klik Add new.
  3. Di kolom Feed name, masukkan nama untuk feed.
  4. Dalam daftar Source type, pilih Webhook.
  5. Pilih Log type. Misalnya, untuk membuat feed untuk Open Cybersecurity Schema Framework, pilih Open Cybersecurity Schema Framework (OCSF) sebagai Log type.
  6. Klik Next.
  7. Opsional: Tentukan nilai untuk parameter input berikut:
    • Split delimiter: pembatas yang digunakan untuk memisahkan baris log, seperti \n.
    • Asset namespace: namespace aset.
    • Ingestion labels: label yang akan diterapkan ke peristiwa dari feed ini.
  8. Klik Next.
  9. Tinjau konfigurasi feed baru Anda di layar Finalize, lalu klik Submit.
  10. Klik Generate Secret Key untuk membuat kunci secret guna mengautentikasi feed ini.
  11. Salin dan simpan kunci secret karena Anda tidak dapat melihat secret ini lagi. Anda dapat membuat kunci secret baru, tetapi tindakan ini akan membuat kunci secret sebelumnya menjadi tidak berlaku.
  12. Dari tab Details, salin URL endpoint feed dari kolom Endpoint Information. Anda harus menentukan URL endpoint ini di aplikasi klien.
  13. Opsional: Klik tombol Feed Enabled untuk menonaktifkan feed. Feed diaktifkan secara default.
  14. Klik Done.

Membuat kunci API untuk feed webhook

  1. Buka halaman Google Cloud konsol Credentials.
  2. Klik Create credentials, lalu pilih API key.
  3. Batasi akses kunci API ke Chronicle API.

Menentukan URL endpoint

  1. Di aplikasi klien, tentukan endpoint HTTPS yang tersedia di feed webhook.
  2. Aktifkan autentikasi dengan menentukan kunci API dan kunci secret sebagai header kustom dalam format berikut:

    X-goog-api-key: API_KEY
    X-Webhook-Access-Key: SECRET
    
    • Sebaiknya tentukan kunci API sebagai header, bukan menentukannya di URL.

      curl --location 'ENDPOINT_URL' \
          --header 'Content-Type: application/json' \
          --header 'X-goog-api-key: API_KEY' \
          --header 'X-Webhook-Access-Key: SECRET' \
          --data '{"principal": {"asset_id": "asset 123"}, "metadata": {"event_type": "GENERIC_EVENT", "product_name": "Product Acme"}}' \
          --fail
      
    • Jika klien webhook Anda tidak mendukung header kustom, Anda dapat menentukan kunci API dan kunci secret menggunakan parameter kueri dalam format berikut:

      ENDPOINT_URL?key=API_KEY&secret=SECRET
      

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