Raccogli i log di Neo4j Aura
Questo documento spiega come importare i log di Neo4j Aura in Google Security Operations utilizzando Google Cloud Storage V2.
Neo4j Aura è un servizio di database a grafo cloud completamente gestito. Fornisce log di sicurezza e log delle query che possono essere inoltrati a Google Cloud Logging per i livelli AuraDB Business Critical, AuraDB Virtual Dedicated Cloud e AuraDS Enterprise.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza Google SecOps
- Un progetto GCP con l'API Cloud Storage abilitata
- Autorizzazioni per creare e gestire bucket GCS
- Autorizzazioni per gestire le policy IAM nei bucket GCS
- Autorizzazioni per creare sink di Cloud Logging
- Istanza Neo4j Aura in esecuzione su Google Cloud Platform
- Ruolo Neo4j Aura Project Admin
- Livello Neo4j Aura che supporta l'inoltro dei log (AuraDB Business Critical, AuraDB Virtual Dedicated Cloud o AuraDS Enterprise)
Crea un bucket Google Cloud Storage
- Vai alla console Google Cloud.
- Seleziona il tuo progetto o creane uno nuovo.
- Nel menu di navigazione, vai a Cloud Storage > Bucket.
- Fai clic su Crea bucket.
Fornisci i seguenti dettagli di configurazione:
Impostazione Valore Assegna un nome al bucket Inserisci un nome globalmente univoco (ad esempio neo4j-aura-logs)Tipo di località Scegli in base alle tue esigenze (regione singola, a due regioni, multiregionale) Località Seleziona la posizione (ad esempio, us-central1).Classe di archiviazione Standard (consigliato per i log a cui si accede di frequente) Controllo dell'accesso Uniforme (consigliato) Strumenti di protezione (Facoltativo) Abilita il controllo delle versioni degli oggetti o la policy di conservazione Fai clic su Crea.
Configura l'inoltro dei log di Neo4j Aura a Google Cloud Logging
Neo4j Aura inoltra i log a Google Cloud Logging nel tuo progetto GCP. Questa configurazione viene eseguita nella console Neo4j Aura.
- Vai alla console Neo4j Aura.
- Accedi con il tuo account Neo4j.
- Nella barra laterale, vai a Impostazioni > Inoltro log.
- Fai clic su Configura inoltro log.
- Seleziona l'ambito dell'inoltro dei log:
- AuraDB Business Critical: seleziona un'istanza specifica per inoltrare i relativi log.
- AuraDB Virtual Dedicated Cloud: seleziona una regione per inoltrare i log da tutte le istanze in quella regione.
- AuraDS Enterprise: seleziona una regione per inoltrare i log da tutte le istanze in quella regione.
Seleziona il tipo di log da inoltrare:
- Log di sicurezza: eventi di autenticazione, eventi di autorizzazione e attività correlate alla sicurezza.
- Log delle query: query Cypher eseguite sul database.
Se hai selezionato Log delle query, espandi la sezione Filtro per configurare i filtri facoltativi:
- Rimuovi voci iniziali: attiva questa opzione per inoltrare solo le voci finali delle query (riduce il volume di circa il 50%).
- Includi: seleziona Tutte le query, Solo query riuscite o Solo query non riuscite.
Segui le istruzioni della procedura guidata specifiche per Google Cloud Platform.
Completa la procedura guidata e fai clic su Crea o Salva.
Attendi che lo stato cambi da configurazione a inoltro.
Crea un sink di Cloud Logging per esportare i log in GCS
Dopo che Neo4j Aura inoltra i log a Google Cloud Logging, crea un sink di log per esportarli nel tuo bucket GCS.
- Nella console Google Cloud, vai a Logging > Router dei log.
- Fai clic su Crea sink.
Fornisci i seguenti dettagli di configurazione:
Impostazione Valore Nome sink Inserisci un nome (ad esempio neo4j-aura-to-gcs)Descrizione sink Inserisci una descrizione (ad esempio, Export Neo4j Aura logs to GCS for Chronicle)Fai clic su Avanti.
Nella sezione Seleziona il servizio sink, seleziona Bucket Cloud Storage.
Nel menu a discesa Seleziona bucket Cloud Storage, seleziona il bucket che hai creato (ad esempio,
neo4j-aura-logs).Fai clic su Avanti.
Nella sezione Scegli i log da includere nel sink, crea un filtro di inclusione per selezionare i log di Neo4j Aura.
Per i log di Neo4j Aura inoltrati dalla funzionalità di forwarding dei log, utilizza il seguente filtro:
resource.type="generic_node" resource.labels.namespace="neo4j-aura"Fai clic su Avanti.
Rivedi la configurazione del sink.
Fai clic su Crea sink.
Verifica l'esportazione dei log in GCS
- Attendi 2-3 ore prima che le prime voci di log vengano visualizzate nel bucket GCS.
- Nella console GCP, vai a Cloud Storage > Bucket.
- Fai clic sul nome del bucket (ad esempio
neo4j-aura-logs). Verifica che i file di log vengano creati nel bucket.
Cloud Logging organizza i log in gerarchie di directory per tipo di log e data. La struttura delle directory sarà simile a questa:
neo4j-aura-logs/ ├── security.log/ │ └── YYYY/ │ └── MM/ │ └── DD/ │ └── HH:MM:SS_HH:MM:SS_S0.json └── query.log/ └── YYYY/ └── MM/ └── DD/ └── HH:MM:SS_HH:MM:SS_S0.json
Recuperare il account di servizio Google SecOps
Google SecOps utilizza un account di servizio univoco per leggere i dati dal tuo bucket GCS. Devi concedere a questo account di servizio l'accesso al tuo bucket.
Recupera l'email del account di servizio
- Vai a Impostazioni SIEM > Feed.
- Fai clic su Aggiungi nuovo feed.
- Fai clic su Configura un singolo feed.
- Nel campo Nome feed, inserisci un nome per il feed (ad esempio,
Neo4j Aura Logs). - Seleziona Google Cloud Storage V2 come Tipo di origine.
- Seleziona NEO4J come Tipo di log.
- Fai clic su Get Service Account (Ottieni service account).
Viene visualizzata un'email del account di servizio univoca. Ad esempio:
chronicle-12345678@chronicle-gcp-prod.iam.gserviceaccount.comCopia questo indirizzo email per utilizzarlo nel passaggio successivo.
Fai clic su Avanti.
Specifica i valori per i seguenti parametri di input:
URL del bucket di archiviazione: inserisci l'URI del bucket GCS:
gs://neo4j-aura-logs/Sostituisci
neo4j-aura-logscon il nome del bucket effettivo.Opzione di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze:
- Mai: non elimina mai i file dopo i trasferimenti (opzione consigliata per i test).
- Elimina file trasferiti: elimina i file dopo il trasferimento riuscito.
Elimina i file trasferiti e le directory vuote: elimina i file e le directory vuote dopo il trasferimento riuscito.
Età massima del file: includi i file modificati nell'ultimo numero di giorni (il valore predefinito è 180 giorni)
Spazio dei nomi dell'asset: lo spazio dei nomi dell'asset
Etichette di importazione: l'etichetta da applicare agli eventi di questo feed
Fai clic su Avanti.
Controlla la nuova configurazione del feed nella schermata Finalizza e poi fai clic su Invia.
Concedi le autorizzazioni IAM al account di servizio Google SecOps
Il account di servizio Google SecOps deve avere il ruolo Visualizzatore oggetti Storage nel tuo bucket GCS.
- Vai a Cloud Storage > Bucket.
- Fai clic sul nome del bucket (ad esempio
neo4j-aura-logs). - Vai alla scheda Autorizzazioni.
- Fai clic su Concedi l'accesso.
Fornisci i seguenti dettagli di configurazione:
- Aggiungi entità: incolla l'email del account di servizio Google SecOps
- Assegna i ruoli: seleziona Visualizzatore oggetti Storage.
Fai clic su Salva.
Tabella di mappatura UDM
| Campo log | Mappatura UDM | Logica |
|---|---|---|
| id2 | about.resource.attribute.labels | Etichette per gli attributi della risorsa |
| id3 | about.resource.attribute.labels | |
| timestamp_msg | metadata.event_timestamp | Timestamp evento |
| event_type | metadata.event_type | Tipo di evento |
| recordDate | principal.asset.creation_time | Ora di creazione dell'asset |
| spazio dei nomi | principal.domain.tech.product_object_id | ID oggetto prodotto nel dominio |
| properties.host_group | principal.hostname | Nome host di origine |
| msg | principal.process.command_line | Riga di comando del processo |
| user_id | principal.user.userid | ID utente dell'entità |
| ruolo | roles.name | Nome del ruolo |
| security_result | security_result | Dettagli del risultato di sicurezza |
| levelx | security_result.severity | Livello di gravità |
| levelx | security_result.severity_details | Informazioni dettagliate sulla gravità |
| properties.source | src.resource.name | Nome risorsa di origine |
| properties.cluster_node | target.hostname | Nome host di destinazione |
| database | target.resource.name | Nome risorsa target |
| ruoli | target.user.attribute.roles | Ruoli associati all'utente di destinazione |
| user_dest | target.user.userid | ID utente del target |
| metadata.product_name | metadata.product_name | Nome del prodotto |
| metadata.vendor_name | metadata.vendor_name | Nome fornitore |
Log delle modifiche
Visualizza il log delle modifiche per questo parser
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.