ServiceNow-CMDB-Daten erfassen
In diesem Dokument wird beschrieben, wie Sie ServiceNow CMDB-Daten erfassen, indem Sie einen Google Security Operations-Feed über die Drittanbieter-API einrichten.
Hinweise
Prüfen Sie, ob die folgenden Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz
- Privilegierter Zugriff auf die ServiceNow-Instanz mit Zugriff auf die Admin-Konsole
- ServiceNow-Nutzerkonto mit der Rolle
cmdb_read(Mindestanforderung für Lesezugriff) - REST API in Ihrer ServiceNow-Instanz aktiviert (standardmäßig aktiviert)
IP-Zulassungsliste konfigurieren
Bevor Sie den Feed erstellen, müssen Sie die Google SecOps-IP-Bereiche in Ihrer ServiceNow-Firewall oder in den Netzwerkeinstellungen auf die Zulassungsliste setzen.
Google SecOps-IP-Bereiche abrufen
- Rufen Sie IP-Bereiche aus der JSON-Datei mit den IP-Adressbereichen von Google ab.
ServiceNow IP-Bereiche hinzufügen
- Melden Sie sich als Administrator in Ihrer ServiceNow-Instanz an.
- Rufen Sie Alle > Systemsicherheit > IP-Adressen-Zugriffssteuerung auf.
- Klicken Sie auf Neu.
- Geben Sie die folgenden Konfigurationsdetails an:
- Typ: Wählen Sie Zulassen aus.
- IP-Adresse: Geben Sie einen Google SecOps-IP-Bereich in CIDR-Notation ein (z. B.
192.0.2.0/24). - Name: Geben Sie einen aussagekräftigen Namen ein, z. B.
GGoogle SecOps IP Range 1. - Aktiv: Wählen Sie das Kästchen aus, um die Regel zu aktivieren.
- Klicken Sie auf Senden.
- Wiederholen Sie die Schritte 3 bis 5 für jeden weiteren Google SecOps-IP-Bereich.
ServiceNow-API-Zugriff konfigurieren
Damit Google SecOps CMDB-Daten abrufen kann, müssen Sie einen ServiceNow-Nutzer mit den entsprechenden Berechtigungen erstellen.
Dedizierten Integrationsnutzer erstellen (empfohlen)
- Melden Sie sich in der ServiceNow Admin Console an.
- Klicken Sie auf Alle > Nutzerverwaltung > Nutzer.
- Klicken Sie auf Neu.
- Geben Sie die folgenden Konfigurationsdetails an:
- Nutzer-ID: Geben Sie einen aussagekräftigen Nutzernamen ein, z. B.
google_secops_integration. - Vorname: Geben Sie
Googleein. - Nachname: Geben Sie
SecOps Integrationein. - E‑Mail: Geben Sie eine gültige E‑Mail-Adresse für Benachrichtigungen ein.
- Passwort: Klicken Sie auf Passwort festlegen und erstellen Sie ein starkes Passwort.
- Aktiv: Klicken Sie das Kästchen an.
- Nur Webdienstzugriff: Klicken Sie das Kästchen an (empfohlen für reinen API-Zugriff).
- Nutzer-ID: Geben Sie einen aussagekräftigen Nutzernamen ein, z. B.
- Klicken Sie auf Senden.
Erforderliche Berechtigungen zuweisen
- Öffnen Sie nach dem Erstellen des Nutzers den Nutzerdatensatz.
- Rufen Sie den Bereich Rollen auf.
- Klicken Sie auf Bearbeiten.
- Suchen Sie in der Liste Sammlung nach der folgenden Rolle und fügen Sie sie hinzu:
- cmdb_read: Bietet Lesezugriff auf CMDB-Tabellen.
- Klicken Sie auf Speichern.
API-Anmeldedaten aufzeichnen
Notieren Sie sich nach dem Erstellen des Nutzers die folgenden Anmeldedaten:
- Nutzername: Die von Ihnen erstellte Nutzer-ID (z. B.
google_secops_integration) - Passwort: Das Passwort, das Sie für den Nutzer festgelegt haben
- API-Hostname: Der FQDN Ihrer ServiceNow-Instanz (z. B.
myinstance.servicenow.com)https://und Pfade dürfen nicht enthalten sein.- Fügen Sie keinen Schrägstrich am Ende ein.
- Tabellenname: Die CMDB-Tabelle, die abgefragt werden soll (z. B.
cmdb_ci,cmdb_ci_server,cmdb_ci_computer)
ServiceNow-CMDB-Tabellen
Die ServiceNow CMDB ist in einer hierarchischen Struktur von Tabellen organisiert. Die gängigsten Tabellen für die Aufnahme von Asset-Daten sind:
| Tabellenname | Beschreibung | Anwendungsfall |
|---|---|---|
cmdb_ci |
Basistabelle für Konfigurationselemente (übergeordnet für alle CI-Tabellen) | Alle Konfigurationselemente |
cmdb_ci_server |
Serverkonfigurationselemente | Physische und virtuelle Server |
cmdb_ci_computer |
Elemente der Computerkonfiguration | Workstations, Laptops, Computer |
cmdb_ci_linux_server |
Konfigurationselemente für Linux-Server | insbesondere Linux-Server |
cmdb_ci_win_server |
Windows Server-Konfigurationselemente | Insbesondere Windows-Server |
cmdb_ci_vm_instance |
VM-Instanzen | Virtuelle Maschinen |
cmdb_ci_network_adapter |
Netzwerkadapter | Netzwerkkarten |
cmdb_ci_ip_address |
IP-Adressen | IP-Adressdatensätze |
cmdb_ci_service |
Geschäftsdienstleistungen | Service Catalog-Elemente |
cmdb_ci_appl |
Anwendungen | Elemente der Anwendungskonfiguration |
REST API-Zugriff prüfen
Prüfen Sie vor dem Erstellen des Feeds, ob Ihre ServiceNow API-Anmeldedaten richtig funktionieren.
Mit dem REST API Explorer testen (optional)
- Melden Sie sich als Integrationsnutzer in Ihrer ServiceNow-Instanz an.
- Gehen Sie zu Alle > System Web Services > REST > REST API Explorer.
- Wählen Sie im Drop-down-Menü für den Namespace die Option Table API aus.
- Wählen Sie Einträge aus einer Tabelle abrufen (GET) aus.
- Geben Sie unter Pfadparameter den Tabellennamen ein, z. B.
cmdb_ci. - Klicken Sie auf Senden.
- Prüfen Sie, ob der Antwortstatus 200 OK lautet und Datensätze zurückgegeben werden.
Mit „curl“ testen (optional)
Alternativ können Sie die API mit curl testen:
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'- Ersetzen Sie:
your-instance.service-now.com: Der Hostname Ihrer ServiceNow-Instanzyour-username: Der Nutzername Ihres Integrationsnutzersyour-password: Das Passwort für den Integrationsnutzer
- Ersetzen Sie:
Bei einer erfolgreichen Antwort werden JSON-Daten mit Konfigurationselementen zurückgegeben.
Feeds einrichten
So konfigurieren Sie einen Feed:
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf Neuen Feed hinzufügen.
- Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B.
ServiceNow CMDB - All CIsoderServiceNow CMDB - Servers. - Wählen Sie Drittanbieter-API als Quelltyp aus.
- Wählen Sie ServiceNow CMDB als Log type (Protokolltyp) aus.
- Klicken Sie auf Weiter.
Geben Sie Werte für die folgenden Eingabeparameter an:
- Nutzername: Geben Sie die ServiceNow-Nutzer-ID ein, z. B.
google_secops_integration. - Secret: Geben Sie das ServiceNow-Nutzerpasswort ein. Wichtig: Dies ist ein sensibles Feld. Das Passwort wird verschlüsselt und kann nach dem Speichern nicht mehr angezeigt werden.
- API-Hostname: Geben Sie den vollqualifizierten Domainnamen Ihrer ServiceNow-Instanz ein.
- Beispiel:
myinstance.servicenow.com - Nicht zulässig:
- Protokoll (
https://) - Pfade (
/api/now/table/) - Nachgestellter Schrägstrich
- Protokoll (
- Beispiel:
- Regionale Instanzen:Wenn sich Ihre ServiceNow-Instanz in einer bestimmten Region befindet, verwenden Sie das richtige Hostnamenformat:
- Standard:
instance.service-now.com - Europäische Union:
instance.service-now.eu - Andere Regionen: Wenden Sie sich an Ihren ServiceNow-Administrator.
- Standard:
- Tabellenname: Geben Sie die ServiceNow CMDB-Tabelle ein, die abgefragt werden soll.
- Beispiele:
cmdb_ci(alle Konfigurationselemente)cmdb_ci_server(alle Server)cmdb_ci_computer(Workstations und Computer)cmdb_ci_linux_server(nur Linux-Server)cmdb_ci_win_server(nur Windows-Server) Hinweis: Beim Tabellennamen wird die Groß-/Kleinschreibung beachtet und er muss genau übereinstimmen. Sie können nur eine Tabelle pro Feed abfragen. Wenn Sie mehrere Tabellen aufnehmen möchten, erstellen Sie für jede Tabelle separate Feeds.
- Beispiele:
- Asset-Namespace: Der Asset-Namespace.
- Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll.
- Nutzername: Geben Sie die ServiceNow-Nutzer-ID ein, z. B.
Klicken Sie auf Weiter.
Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.
Nach der Einrichtung werden CMDB-Datensätze aus der ServiceNow-Instanz abgerufen. Die erste Synchronisierung kann je nach Anzahl der Datensätze in der Tabelle einige Minuten dauern.
Mehrere CMDB-Tabellen aufnehmen
Wenn Sie Daten aus mehreren CMDB-Tabellen aufnehmen möchten, erstellen Sie separate Feeds für jede Tabelle:
- Erstellen Sie den ersten Feed anhand der obigen Anleitung (z. B. für
cmdb_ci_server). - Klicken Sie auf Neuen Feed hinzufügen, um weitere Feeds zu erstellen.
- Verwenden Sie dieselben ServiceNow-Anmeldedaten, geben Sie aber unterschiedliche Tabellennamen an.
Beispielkonfiguration:
| Feedname | Tabellenname | Zweck |
|---|---|---|
| ServiceNow CMDB – Server | cmdb_ci_server |
Alle Server-CIs |
| ServiceNow CMDB – Computer | cmdb_ci_computer |
Workstation-CIs |
| ServiceNow CMDB – Netzwerkadapter | cmdb_ci_network_adapter |
CIs für Netzwerkschnittstellen |
| ServiceNow CMDB – Anwendungen | cmdb_ci_appl |
Anwendungs-CIs |
Erforderliche API-Berechtigungen
Der Integrationsnutzer benötigt die folgenden ServiceNow-Berechtigungen:
| Berechtigung/Rolle | Zugriffsebene | Zweck |
|---|---|---|
| cmdb_read | Lesen | CMDB-Konfigurationselementdaten abrufen |
Zusätzliche Rollen (optional):
- itil: Erforderlich, wenn Sie Schreibzugriff zum Erstellen oder Aktualisieren von CIs benötigen (nicht für die Google SecOps-Erfassung erforderlich)
- rest_api_explorer: Nützlich zum Testen des API-Zugriffs während der Einrichtung
UDM-Zuordnungstabelle
| ServiceNow-Feld | UDM-Zuordnung | Logik |
|---|---|---|
name |
entity.asset.hostname |
Primärer Hostname des Assets |
ip_address |
entity.asset.ip |
Primäre IP-Adresse des Assets |
mac_address |
entity.asset.mac |
MAC-Adresse des Assets |
serial_number |
entity.asset.hardware.serial_number |
Seriennummer der Hardware |
asset_tag |
entity.asset.asset_id |
Asset-Tag oder ‑ID |
sys_class_name |
entity.asset.asset_type |
CI-Klasse (Server, Computer usw.) |
os |
entity.asset.platform_software.platform |
Betriebssystem |
sys_created_on |
entity.asset.first_seen_time |
Zeitstempel der Asset-Erstellung |
sys_updated_on |
entity.asset.last_seen_time |
Zeitstempel der letzten Aktualisierung |
location |
entity.asset.location.name |
Physischer Standort |
company |
entity.asset.attribute.labels.value |
Inhaber (Unternehmen/Organisation) |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten