Mengumpulkan data CMDB ServiceNow
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
- Ambil rentang IP dari file JSON rentang alamat IP Google.
Menambahkan rentang IP ke ServiceNow
- Login ke instance ServiceNow Anda sebagai administrator.
- Buka Semua > Keamanan Sistem > Kontrol Akses Alamat IP.
- Klik New.
- 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.
- Klik Kirim.
- 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.
Membuat pengguna integrasi khusus (direkomendasikan)
- Login ke Konsol Admin ServiceNow.
- Buka Semua > Administrasi Pengguna > Pengguna.
- Klik New.
- 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).
- ID Pengguna: Masukkan nama pengguna deskriptif (misalnya,
- Klik Kirim.
Menetapkan izin yang diperlukan
- Setelah membuat pengguna, buka data pengguna.
- Buka bagian Peran.
- Klik Edit.
- Di daftar Collection, telusuri dan tambahkan peran berikut:
- cmdb_read: Memberikan akses baca ke tabel CMDB.
- 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.
- Jangan sertakan
- 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)
- Login ke instance ServiceNow Anda sebagai pengguna integrasi.
- Buka Semua > System Web Services > REST > REST API Explorer.
- Pilih Table API dari drop-down namespace.
- Pilih Retrieve records from a table (GET).
- Di Parameter Jalur, masukkan nama tabel (misalnya,
cmdb_ci). - Klik Kirim.
- 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 Andayour-username: Nama pengguna integrasi Andayour-password: Sandi pengguna integrasi Anda
- Ganti:
Respons yang berhasil akan menampilkan data JSON dengan item konfigurasi.
Menyiapkan feed
Untuk mengonfigurasi feed, ikuti langkah-langkah berikut:
- Buka Setelan SIEM > Feed.
- Klik Tambahkan Feed Baru.
- Di halaman berikutnya, klik Konfigurasi satu feed.
- Di kolom Nama feed, masukkan nama untuk feed (misalnya,
ServiceNow CMDB - All CIsatauServiceNow CMDB - Servers). - Pilih Third party API sebagai Source type.
- Pilih ServiceNow CMDB sebagai Jenis log.
- Klik Berikutnya.
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
- Protokol (
- Contoh:
- 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
- Standar:
- 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.
- Contoh:
- Namespace aset: Namespace aset.
- Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini.
- Nama pengguna: Masukkan ID pengguna ServiceNow (misalnya,
Klik Berikutnya.
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:
- Buat feed pertama menggunakan langkah-langkah di atas (misalnya, untuk
cmdb_ci_server). - Klik Tambahkan Feed Baru untuk membuat feed tambahan.
- 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.