Mengumpulkan data CMDB ServiceNow

Didukung di:

Dokumen ini menjelaskan cara mengumpulkan data CMDB ServiceNow dengan menyiapkan feed Google Security Operations menggunakan API Pihak ketiga.

Sebelum memulai

Pastikan Anda memiliki prasyarat berikut:

  • Instance Google SecOps
  • Akses istimewa ke instance ServiceNow dengan akses konsol admin
  • Akun pengguna ServiceNow dengan peran cmdb_read (persyaratan minimum untuk akses baca)
  • REST API diaktifkan di instance ServiceNow Anda (diaktifkan secara default)

Mengonfigurasi daftar IP yang diizinkan

Sebelum membuat feed, Anda harus memasukkan rentang IP Google SecOps ke dalam daftar yang diizinkan di setelan jaringan atau firewall ServiceNow Anda.

Mendapatkan rentang IP Google SecOps

Menambahkan rentang IP ke ServiceNow

  1. Login ke instance ServiceNow Anda sebagai administrator.
  2. Buka Semua > Keamanan Sistem > Kontrol Akses Alamat IP.
  3. Klik New.
  4. Berikan detail konfigurasi berikut:
    • Jenis: Pilih Izinkan.
    • Alamat IP: Masukkan rentang IP oneGoogle SecOps dalam notasi CIDR (misalnya, 192.0.2.0/24).
    • Name: Masukkan nama deskriptif (misalnya, GGoogle SecOps IP Range 1).
    • Aktif: Centang kotak untuk mengaktifkan aturan.
  5. Klik Kirim.
  6. Ulangi langkah 3-5 untuk setiap rentang IP SecOps Google tambahan.

Mengonfigurasi akses API ServiceNow

Untuk mengizinkan Google SecOps menarik data CMDB, Anda harus membuat pengguna ServiceNow dengan izin yang sesuai.

  1. Login ke Konsol Admin ServiceNow.
  2. Buka Semua > Administrasi Pengguna > Pengguna.
  3. Klik New.
  4. Berikan detail konfigurasi berikut:
    • ID Pengguna: Masukkan nama pengguna deskriptif (misalnya, google_secops_integration).
    • Nama depan: Masukkan Google.
    • Nama belakang: Masukkan SecOps Integration.
    • Email: Masukkan alamat email yang valid untuk notifikasi.
    • Sandi: Klik Setel Sandi dan buat sandi yang kuat.
    • Aktif: Centang kotak.
    • Akses layanan web saja: Centang kotak (direkomendasikan untuk akses khusus API).
  5. Klik Kirim.

Menetapkan izin yang diperlukan

  1. Setelah membuat pengguna, buka data pengguna.
  2. Buka bagian Peran.
  3. Klik Edit.
  4. Di daftar Collection, telusuri dan tambahkan peran berikut:
    • cmdb_read: Memberikan akses baca ke tabel CMDB.
  5. Klik Simpan.

Mencatat kredensial API

Setelah membuat pengguna, catat kredensial berikut:

  • Nama pengguna: ID Pengguna yang Anda buat (misalnya, google_secops_integration)
  • Sandi: Sandi yang Anda tetapkan untuk pengguna
  • Nama Host API: FQDN instance ServiceNow Anda (misalnya, myinstance.servicenow.com)
    • Jangan sertakan https:// atau jalur apa pun.
    • Jangan sertakan garis miring di akhir.
  • Nama Tabel: Tabel CMDB yang akan dikueri (misalnya, cmdb_ci, cmdb_ci_server, cmdb_ci_computer)

Memahami tabel CMDB ServiceNow

CMDB ServiceNow disusun dalam struktur hierarkis tabel. Tabel yang paling umum untuk penyerapan data aset meliputi:

Nama Tabel Deskripsi Kasus Penggunaan
cmdb_ci Tabel Item Konfigurasi Dasar (induk dari semua tabel CI) Semua item konfigurasi
cmdb_ci_server Item konfigurasi server Server fisik dan virtual
cmdb_ci_computer Item konfigurasi komputer Workstation, laptop, desktop
cmdb_ci_linux_server Item konfigurasi server Linux Khususnya server Linux
cmdb_ci_win_server Item konfigurasi server Windows Server Windows secara khusus
cmdb_ci_vm_instance Instance virtual machine Virtual machine
cmdb_ci_network_adapter Adaptor jaringan Kartu antarmuka jaringan
cmdb_ci_ip_address Alamat IP Catatan alamat IP
cmdb_ci_service Layanan bisnis Item katalog layanan
cmdb_ci_appl Aplikasi Item konfigurasi aplikasi

Memverifikasi akses REST API

Sebelum membuat feed, verifikasi bahwa kredensial ServiceNow API Anda berfungsi dengan benar.

Menguji menggunakan REST API Explorer (opsional)

  1. Login ke instance ServiceNow Anda sebagai pengguna integrasi.
  2. Buka Semua > System Web Services > REST > REST API Explorer.
  3. Pilih Table API dari drop-down namespace.
  4. Pilih Retrieve records from a table (GET).
  5. Di Parameter Jalur, masukkan nama tabel (misalnya, cmdb_ci).
  6. Klik Kirim.
  7. Verifikasi bahwa status respons adalah 200 OK dan data ditampilkan.

Menguji menggunakan curl (opsional)

  • Atau, uji API menggunakan curl:

    curl "https://your-instance.service-now.com/api/now/table/cmdb_ci?sysparm_limit=10" \
    --request GET \
    --header "Accept: application/json" \
    --user 'your-username':'your-password'
    
    • Ganti:
      • your-instance.service-now.com: Nama host instance ServiceNow Anda
      • your-username: Nama pengguna integrasi Anda
      • your-password: Sandi pengguna integrasi Anda

Respons yang berhasil akan menampilkan data JSON dengan item konfigurasi.

Menyiapkan feed

Untuk mengonfigurasi feed, ikuti langkah-langkah berikut:

  1. Buka Setelan SIEM > Feed.
  2. Klik Tambahkan Feed Baru.
  3. Di halaman berikutnya, klik Konfigurasi satu feed.
  4. Di kolom Nama feed, masukkan nama untuk feed (misalnya, ServiceNow CMDB - All CIs atau ServiceNow CMDB - Servers).
  5. Pilih Third party API sebagai Source type.
  6. Pilih ServiceNow CMDB sebagai Jenis log.
  7. Klik Berikutnya.
  8. Tentukan nilai untuk parameter input berikut:

    • Nama pengguna: Masukkan ID pengguna ServiceNow (misalnya, google_secops_integration).
    • Secret: Masukkan sandi pengguna ServiceNow. Penting: Ini adalah kolom sensitif. Sandi dienkripsi dan tidak dapat dilihat setelah disimpan.
    • Nama Host API: Masukkan nama domain yang sepenuhnya memenuhi syarat dari instance ServiceNow Anda.
      • Contoh: myinstance.servicenow.com
      • Jangan sertakan:
        • Protokol (https://)
        • Jalur (/api/now/table/)
        • Garis miring di akhir
    • Instance regional: Jika instance ServiceNow Anda berada di region tertentu, gunakan format nama host yang benar:
      • Standar: instance.service-now.com
      • Uni Eropa: instance.service-now.eu
      • Wilayah lain: Verifikasi dengan administrator ServiceNow Anda
    • Nama Tabel: Masukkan tabel CMDB ServiceNow yang akan dikueri.
      • Contoh:
        • cmdb_ci (semua item konfigurasi)
        • cmdb_ci_server (semua server)
        • cmdb_ci_computer (workstation dan komputer)
        • cmdb_ci_linux_server (Khusus server Linux)
        • cmdb_ci_win_server (Khusus server Windows) Catatan: Nama tabel peka huruf besar/kecil dan harus sama persis. Anda hanya dapat membuat kueri satu tabel per feed. Untuk memproses beberapa tabel, buat feed terpisah untuk setiap tabel.
    • Namespace aset: Namespace aset.
    • Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini.
  9. Klik Berikutnya.

  10. Tinjau konfigurasi feed baru Anda di layar Selesaikan, lalu klik Kirim.

Setelah penyiapan, feed mulai mengambil rekaman CMDB dari instance ServiceNow. Sinkronisasi awal mungkin memerlukan waktu beberapa menit, bergantung pada jumlah data dalam tabel.

Menyerap beberapa tabel CMDB

Untuk menyerap data dari beberapa tabel CMDB, buat feed terpisah untuk setiap tabel:

  1. Buat feed pertama menggunakan langkah-langkah di atas (misalnya, untuk cmdb_ci_server).
  2. Klik Tambahkan Feed Baru untuk membuat feed tambahan.
  3. Gunakan kredensial ServiceNow yang sama, tetapi tentukan nama tabel yang berbeda.

Contoh konfigurasi:

Nama Feed Nama Tabel Tujuan
CMDB ServiceNow - Server cmdb_ci_server Semua CI server
CMDB ServiceNow - Komputer cmdb_ci_computer CI Workstation
ServiceNow CMDB - Adaptor Jaringan cmdb_ci_network_adapter CI antarmuka jaringan
ServiceNow CMDB - Aplikasi cmdb_ci_appl CI Aplikasi

Izin API yang diperlukan

Pengguna integrasi memerlukan izin ServiceNow berikut:

Izin/Peran Tingkat Akses Tujuan
cmdb_read Baca Mengambil data item konfigurasi CMDB

Peran tambahan (opsional):

  • itil: Diperlukan jika Anda memerlukan akses tulis untuk membuat atau memperbarui CI (tidak diperlukan untuk penyerapan Google SecOps)
  • rest_api_explorer: Berguna untuk menguji akses API selama penyiapan

Tabel pemetaan UDM

Kolom ServiceNow Pemetaan UDM Logika
name entity.asset.hostname Nama host utama aset
ip_address entity.asset.ip Alamat IP utama aset
mac_address entity.asset.mac Alamat MAC aset
serial_number entity.asset.hardware.serial_number Nomor seri hardware
asset_tag entity.asset.asset_id Tag atau ID aset
sys_class_name entity.asset.asset_type Kelas CI (server, komputer, dll.)
os entity.asset.platform_software.platform Sistem operasi
sys_created_on entity.asset.first_seen_time Stempel waktu pembuatan aset
sys_updated_on entity.asset.last_seen_time Stempel waktu pembaruan terakhir
location entity.asset.location.name Lokasi fisik
company entity.asset.attribute.labels.value Perusahaan/organisasi pemilik

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