Raccogliere i dati CMDB di ServiceNow

Supportato in:

Questo documento spiega come raccogliere i dati CMDB di ServiceNow configurando un feed Google Security Operations utilizzando l'API di terze parti.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Un'istanza Google SecOps
  • Accesso privilegiato all'istanza ServiceNow con accesso alla Console di amministrazione
  • Account utente ServiceNow con ruolo cmdb_read (requisito minimo per l'accesso in lettura)
  • API REST abilitata nell'istanza ServiceNow (abilitata per impostazione predefinita)

Configurare la lista consentita IP

Prima di creare il feed, devi inserire gli intervalli IP di Google SecOps nella lista consentita del firewall o delle impostazioni di rete di ServiceNow.

Ottenere gli intervalli IP di Google SecOps

Aggiungere intervalli IP a ServiceNow

  1. Accedi alla tua istanza ServiceNow come amministratore.
  2. Vai a All (Tutti) > System Security (Sicurezza del sistema) > IP Address Access Control (Controllo accesso indirizzi IP).
  3. Fai clic su New (Nuovo).
  4. Fornisci i seguenti dettagli di configurazione:
    • Tipo: seleziona Consenti.
    • Indirizzo IP: inserisci un intervallo IP di Google SecOps in notazione CIDR (ad esempio, 192.0.2.0/24).
    • Nome: inserisci un nome descrittivo (ad esempio, GGoogle SecOps IP Range 1).
    • Attiva: seleziona la casella di controllo per attivare la regola.
  5. Fai clic su Invia.
  6. Ripeti i passaggi da 3 a 5 per ogni intervallo IP Google SecOps aggiuntivo.

Configurare l'accesso all'API ServiceNow

Per consentire a Google SecOps di estrarre i dati CMDB, devi creare un utente ServiceNow con le autorizzazioni appropriate.

  1. Accedi alla Console di amministrazione ServiceNow.
  2. Vai a All (Tutti) > User Administration (Amministrazione utenti) > Users (Utenti).
  3. Fai clic su New (Nuovo).
  4. Fornisci i seguenti dettagli di configurazione:
    • ID utente: inserisci un nome utente descrittivo (ad esempio google_secops_integration).
    • Nome: inserisci Google.
    • Cognome: inserisci SecOps Integration.
    • Email: inserisci un indirizzo email valido per le notifiche.
    • Password: fai clic su Imposta password e crea una password efficace.
    • Attivo: seleziona la casella di controllo.
    • Solo accesso al servizio web: seleziona la casella di controllo (opzione consigliata per l'accesso solo API).
  5. Fai clic su Invia.

Assegnare le autorizzazioni richieste

  1. Dopo aver creato l'utente, apri il record utente.
  2. Vai alla sezione Ruoli.
  3. Fai clic su Modifica.
  4. Nell'elenco Raccolta, cerca e aggiungi il seguente ruolo:
    • cmdb_read: fornisce l'accesso in lettura alle tabelle CMDB.
  5. Fai clic su Salva.

Registra le credenziali API

Dopo aver creato l'utente, registra le seguenti credenziali:

  • Nome utente: l'ID utente che hai creato (ad esempio, google_secops_integration)
  • Password: la password impostata per l'utente
  • Nome host API: il nome di dominio completo (FQDN) della tua istanza ServiceNow (ad esempio myinstance.servicenow.com)
    • Non includere https:// o percorsi.
    • Non includere la barra finale.
  • Nome tabella: la tabella CMDB da interrogare (ad esempio cmdb_ci, cmdb_ci_server, cmdb_ci_computer)

Informazioni sulle tabelle CMDB di ServiceNow

ServiceNow CMDB è organizzato in una struttura gerarchica di tabelle. Le tabelle più comuni per l'importazione dati degli asset includono:

Nome tabella Descrizione Caso d'uso
cmdb_ci Tabella Elemento di configurazione di base (principale di tutte le tabelle CI) Tutti gli elementi di configurazione
cmdb_ci_server Elementi di configurazione del server Server fisici e virtuali
cmdb_ci_computer Elementi di configurazione del computer Workstation, laptop, computer
cmdb_ci_linux_server Elementi di configurazione del server Linux Server Linux in particolare
cmdb_ci_win_server Elementi di configurazione di Windows Server Server Windows in particolare
cmdb_ci_vm_instance Istanze di macchine virtuali Macchine virtuali
cmdb_ci_network_adapter Adattatori di rete Schede di interfaccia di rete
cmdb_ci_ip_address Indirizzi IP Record di indirizzi IP
cmdb_ci_service Servizi aziendali Elementi del catalogo di servizi
cmdb_ci_appl Applicazioni Elementi di configurazione dell'applicazione

Verificare l'accesso all'API REST

Prima di creare il feed, verifica che le credenziali dell'API ServiceNow funzionino correttamente.

Testa utilizzando Explorer API REST (facoltativo)

  1. Accedi alla tua istanza ServiceNow come utente di integrazione.
  2. Vai a Tutti > Servizi web di sistema > REST > Explorer API REST.
  3. Seleziona API Table dal menu a discesa dello spazio dei nomi.
  4. Seleziona Recupera record da una tabella (GET).
  5. In Parametri percorso, inserisci il nome della tabella, ad esempio cmdb_ci.
  6. Fai clic su Invia.
  7. Verifica che lo stato della risposta sia 200 OK e che vengano restituiti i record.

Testa utilizzando curl (facoltativo)

  • In alternativa, testa l'API utilizzando 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'
    
    • Sostituisci:
      • your-instance.service-now.com: il nome host dell'istanza ServiceNow
      • your-username: Il nome utente dell'utente di integrazione
      • your-password: la password dell'utente di integrazione

Una risposta positiva restituirà dati JSON con elementi di configurazione.

Configurare i feed

Per configurare un feed:

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo feed.
  3. Nella pagina successiva, fai clic su Configura un singolo feed.
  4. Nel campo Nome feed, inserisci un nome per il feed (ad esempio, ServiceNow CMDB - All CIs o ServiceNow CMDB - Servers).
  5. Seleziona API di terze parti come Tipo di origine.
  6. Seleziona ServiceNow CMDB come Tipo di log.
  7. Fai clic su Avanti.
  8. Specifica i valori per i seguenti parametri di input:

    • Nome utente: inserisci l'ID utente ServiceNow (ad esempio, google_secops_integration).
    • Secret (Segreto): inserisci la password dell'utente ServiceNow. Importante: questo è un campo sensibile. La password viene criptata e non può essere visualizzata dopo il salvataggio.
    • Nome host API: inserisci il nome di dominio completo della tua istanza ServiceNow.
      • Esempio: myinstance.servicenow.com
      • Non includere:
        • Protocollo (https://)
        • Percorsi (/api/now/table/)
        • Barra finale
    • Istanze regionali:se la tua istanza ServiceNow si trova in una regione specifica, utilizza il formato del nome host corretto:
      • Standard: instance.service-now.com
      • Unione Europea: instance.service-now.eu
      • Altre regioni: verifica con l'amministratore di ServiceNow
    • Nome tabella: inserisci la tabella ServiceNow CMDB da interrogare.
      • Esempi:
        • cmdb_ci (tutti gli elementi di configurazione)
        • cmdb_ci_server (tutti i server)
        • cmdb_ci_computer (workstation e computer)
        • cmdb_ci_linux_server (solo server Linux)
        • cmdb_ci_win_server (solo server Windows) Nota: il nome della tabella è sensibile alle maiuscole e deve corrispondere esattamente. Puoi eseguire query su una sola tabella per feed. Per importare più tabelle, crea feed separati per ciascuna tabella.
    • Spazio dei nomi dell'asset: lo spazio dei nomi dell'asset.
    • Etichette di importazione: l'etichetta da applicare agli eventi di questo feed.
  9. Fai clic su Avanti.

  10. Controlla la nuova configurazione del feed nella schermata Finalizza e poi fai clic su Invia.

Dopo la configurazione, il feed inizia a recuperare i record CMDB dall'istanza ServiceNow. La sincronizzazione iniziale potrebbe richiedere diversi minuti, a seconda del numero di record nella tabella.

Importazione di più tabelle CMDB

Per importare i dati da più tabelle CMDB, crea feed separati per ogni tabella:

  1. Crea il primo feed seguendo i passaggi precedenti (ad esempio, per cmdb_ci_server).
  2. Fai clic su Aggiungi nuovo feed per creare altri feed.
  3. Utilizza le stesse credenziali ServiceNow, ma specifica nomi di tabella diversi.

Esempio di configurazione:

Nome feed Nome tabella Finalità
ServiceNow CMDB - Servers cmdb_ci_server Tutti gli IC server
ServiceNow CMDB - Computer cmdb_ci_computer CI workstation
ServiceNow CMDB - Network Adapters cmdb_ci_network_adapter Elementi di configurazione dell'interfaccia di rete
ServiceNow CMDB - Applications cmdb_ci_appl CI dell'applicazione

Autorizzazioni API richieste

L'utente di integrazione richiede le seguenti autorizzazioni ServiceNow:

Autorizzazione/Ruolo Livello di accesso Finalità
cmdb_read Leggi Recuperare i dati degli elementi di configurazione CMDB

(Facoltativo) Ruoli aggiuntivi:

  • itil: obbligatorio se hai bisogno dell'accesso in scrittura per creare o aggiornare le CI (non obbligatorio per l'importazione di Google SecOps)
  • rest_api_explorer: utile per testare l'accesso all'API durante la configurazione

Tabella di mappatura UDM

Campo ServiceNow Mappatura UDM Logic
name entity.asset.hostname Nome host principale dell'asset
ip_address entity.asset.ip Indirizzo IP principale dell'asset
mac_address entity.asset.mac Indirizzo MAC dell'asset
serial_number entity.asset.hardware.serial_number Numero di serie dell'hardware
asset_tag entity.asset.asset_id Etichetta asset o identificatore
sys_class_name entity.asset.asset_type Classe CI (server, computer e così via)
os entity.asset.platform_software.platform Sistema operativo
sys_created_on entity.asset.first_seen_time Timestamp della creazione dell'asset
sys_updated_on entity.asset.last_seen_time Timestamp ultimo aggiornamento
location entity.asset.location.name Posizione fisica
company entity.asset.attribute.labels.value Società/organizzazione proprietaria

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.