Esportare i log non elaborati in un bucket Google Cloud Storage autogestito
L'API Data Export facilita l'esportazione collettiva dei dati di sicurezza da Google Security Operations a un bucket Google Cloud Storage controllato da te. Questa funzionalità supporta la conservazione dei dati critici a lungo termine, l'analisi forense storica e i rigorosi requisiti di conformità (ad esempio SOX, HIPAA, GDPR).
Importante: dopo aver attivato la nuova API avanzata, non puoi utilizzarla per accedere ai tuoi vecchi lavori esistenti.
Per maggiori dettagli sull'API per l'esportazione dei dati, consulta API per l'esportazione dei dati (migliorata).
L'API Data Export fornisce una soluzione scalabile e affidabile per le esportazioni di dati in un determinato momento e gestisce richieste fino a 100 TB.
In quanto pipeline gestita, offre funzionalità essenziali di livello aziendale, tra cui:
- Nuovi tentativi automatici in caso di errori temporanei
- Monitoraggio completo dello stato dei job
- Un audit trail completo per ogni job di esportazione
L'API partiziona logicamente i dati esportati per data e ora all'interno del tuo bucket Google Cloud Storage.
Questa funzionalità consente di creare flussi di lavoro di offload dei dati su larga scala. Google SecOps gestisce la complessità del processo di esportazione per garantire stabilità e prestazioni.
Vantaggi principali
L'API Data Export fornisce una soluzione resiliente e controllabile per la gestione del ciclo di vita dei dati di sicurezza.
- Affidabilità: il servizio gestisce trasferimenti di dati su larga scala. Il sistema
utilizza una strategia di backoff esponenziale per riprovare automaticamente i job di esportazione che
riscontrano problemi temporanei (ad esempio, problemi di rete temporanei), rendendolo
resiliente. Se il job di esportazione non riesce a causa di un errore temporaneo, viene riprovato automaticamente più volte. Se un job non va a buon fine in modo permanente dopo tutti i tentativi, il sistema aggiorna il suo stato a
FINISHED_FAILUREe la risposta API per quel job contiene un messaggio di errore dettagliato che spiega la causa. Auditabilità completa: per soddisfare rigorosi standard di conformità e sicurezza, il sistema acquisisce ogni azione relativa a un job di esportazione in una traccia di controllo immutabile. Questo audit trail include la creazione, l'avvio, la riuscita o l'errore di ogni job, insieme all'utente che ha avviato l'azione, un timestamp e i parametri del job.
Ottimizzata per il rendimento e la scalabilità: l'API utilizza un solido sistema di gestione dei job. Questo sistema include la gestione delle code e la definizione delle priorità per garantire la stabilità della piattaforma e impedire a un singolo tenant di monopolizzare le risorse.
Integrità e accessibilità dei dati migliorate: il sistema organizza automaticamente i dati in una struttura di directory logica all'interno del bucket Google Cloud Storage, il che ti aiuta a individuare ed eseguire query su intervalli di tempo specifici per l'analisi storica.
Termini e concetti chiave
- Job di esportazione: una singola operazione asincrona per esportare un intervallo di tempo specifico di dati di log in un bucket Google Cloud Storage. Il sistema monitora ogni
lavoro con un
dataExportIdunivoco. - Stato del job: lo stato attuale di un job di esportazione nel suo ciclo di vita (ad esempio,
IN_QUEUE,PROCESSING,FINISHED_SUCCESS). - Bucket Google Cloud Storage: un bucket Google Cloud Storage di proprietà dell'utente che funge da destinazione per i dati esportati.
- Tipi di log: si tratta delle categorie specifiche di log che puoi esportare (ad esempio
NIX_SYSTEM,WINDOWS_DNS,CB_EDR). Per ulteriori dettagli, consulta l'elenco di tutti i tipi di log supportati.
Comprendere la struttura dei dati esportati
Quando un job viene completato correttamente, il sistema scrive i dati nel bucket Google Cloud Storage. Utilizza una struttura di directory partizionata specifica per semplificare l'accesso ai dati e le query.
Struttura del percorso della directory: gs://<gcs-bucket-name>/<export-job-name>/<logtype>/<event-time-bucket>/<epoch_execution_time>/<file-shard-name>.csv
- gcs-bucket-name: il nome del tuo bucket Google Cloud Storage.
- export-job-name: il nome univoco del job di esportazione.
- logtype: il nome del tipo di log per i dati esportati.
event-time-bucket: l'intervallo orario dei timestamp degli eventi dei log esportati.
Il formato è un timestamp UTC:
year/month/day/UTC-timestamp(doveUTC-timestampèhour/minute/second).
Ad esempio,2025/08/25/01/00/00si riferisce aUTC 01:00:00 AM, August 25, 2025.epoch-execution-time: il valore temporale dell'epoca Unix, che indica l'inizio del job di esportazione.
file-shard-name: il nome dei file suddivisi contenenti i log non elaborati. Ogni frammento di file ha un limite massimo di 100 MB.
Prestazioni e limitazioni
Il servizio ha limiti specifici per garantire la stabilità della piattaforma e l'equa allocazione delle risorse.
- Volume massimo di dati per job: ogni singolo job di esportazione può richiedere fino a 100 TB di dati. Per i set di dati più grandi, consigliamo di suddividere l'esportazione in più job con intervalli di tempo più brevi.
- Job simultanei: ogni tenant cliente può eseguire o mettere in coda un massimo di tre job di esportazione contemporaneamente. Il sistema rifiuta qualsiasi nuova richiesta di creazione di job che supera questo limite.
- Tempi di completamento del job: il volume dei dati esportati determina i tempi di completamento del job. Un singolo lavoro può richiedere fino a 18 ore.
- Formato di esportazione e ambito dei dati: questa API supporta le esportazioni collettive e puntuali, con le seguenti limitazioni e funzionalità:
- Solo log non elaborati: puoi esportare solo i log non elaborati (non i log UDM, gli eventi UDM o i rilevamenti). Per esportare i dati UDM, consulta Configurare l'esportazione dei dati in BigQuery in un progetto Google Cloud autogestito.
- Compressione dei dati: l'API esporta i dati come testo non compresso.
Prerequisiti e architettura
Questa sezione descrive l'architettura del sistema e i requisiti necessari per utilizzare l'API Data Export e fornisce dettagli sull'architettura del sistema. Utilizza queste informazioni per verificare che il tuo ambiente sia configurato correttamente.
Prima di iniziare
Prima di utilizzare l'API Data Export, completa questi passaggi preliminari per configurare la destinazione Google Cloud Storage e concedere le autorizzazioni necessarie.
Concedi le autorizzazioni all'utente API: per utilizzare l'API Data Export, devi disporre dei seguenti ruoli IAM.
Chronicle administrator (creating/managing jobs): concede autorizzazioni complete per creare, aggiornare, annullare e visualizzare i job di esportazione utilizzando l'API.Chronicle Viewer: concede l'accesso di sola lettura per visualizzare le configurazioni dei job e la cronologia utilizzando l'API.
Crea un bucket Google Cloud Storage: nel tuo progetto Google Cloud, crea un nuovo bucket Google Cloud Storage (la destinazione dei dati esportati) nella stessa regione del tuo tenant Google SecOps. Imposta la privacy su Privato per impedire l'accesso non autorizzato. Per maggiori dettagli, consulta Creare un bucket.
Concedi le autorizzazioni al service account: concedi al service account Google SecOps, collegato al tuo tenant Google SecOps, i ruoli IAM necessari per scrivere dati nel tuo bucket.
Chiama l'endpoint API
FetchServiceAccountForDataExportper identificare l'account di servizio univoco della tua istanza di Google SecOps. L'API restituisce l'email del service account.Esempio di richiesta:
{ "parent": "projects/myproject/locations/us/instances/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }Esempio di risposta:
{ "service_account_email": "service-1234@gcp-sa-chronicle.iam.gserviceaccount.com" }Concedi all'entità service account Google SecOps il seguente ruolo IAM per il bucket Google Cloud Storage di destinazione: questo ruolo consente al servizio Google SecOps di scrivere i file di dati esportati nel tuo bucket Google Cloud Storage.
Storage object administrator (roles/storage.objectAdmin)Legacy bucket reader (roles/storage.legacyBucketReader)
Per maggiori dettagli, vedi Concedere l'accesso all'account di servizio Google SecOps.
Completare l'autenticazione: l'API Data Export autentica le tue chiamate. Per configurare questa autenticazione, segui le istruzioni riportate nelle sezioni seguenti:
Casi d'uso principali
L'API Data Export fornisce una suite di endpoint per creare job di esportazione dei dati e gestire l'intero ciclo di vita dell'esportazione collettiva dei dati. Esegui tutte le interazioni utilizzando le chiamate API.
I seguenti casi d'uso descrivono come creare, monitorare e gestire i job di esportazione dei dati.
Flusso di lavoro principale
Questa sezione spiega come gestire il ciclo di vita dei job di esportazione.
Crea un nuovo job di esportazione dei dati
Il sistema archivia le specifiche del job di esportazione dei dati nell'istanza Google SecOps della risorsa padre. Questa istanza è l'origine dei dati di log per il job di esportazione.
Identifica il service account univoco per la tua istanza di Google SecOps. Per maggiori dettagli, vedi FetchServiceAccountForDataExports.
Per avviare una nuova esportazione, invia una richiesta
POSTall'endpointdataExports.create.
Per maggiori dettagli, vedi l'endpointCreateDataExport.
Monitorare lo stato del job di esportazione dei dati
Visualizza i dettagli e lo stato di un job di esportazione dei dati specifico o imposta un filtro per visualizzare determinati tipi di job.
Per visualizzare uno specifico job di esportazione, vedi GetDataExport.
Per elencare determinati tipi di job di esportazione dei dati utilizzando un filtro, consulta ListDataExport.
Gestire i job in coda
Puoi modificare o annullare un job quando è nello stato IN_QUEUE.
Per modificare i parametri (ad esempio l'intervallo di tempo, l'elenco dei tipi di log o il bucket di destinazione), consulta UpdateDataExport.
Per annullare un job in coda, vedi CancelDataExport.
Risolvere i problemi comuni
L'API fornisce messaggi di errore dettagliati per facilitare la diagnosi dei problemi.
| Codice canonico | Messaggio di errore |
|---|---|
| INVALID_ARGUMENT | INVALID_REQUEST: Invalid request parameter <Parameter1, Parameter2,..>. Please fix the request parameters and try again. |
| NOT_FOUND | BUCKET_NOT_FOUND: il bucket Google Cloud Storage di destinazione <bucketName> non esiste. Crea il bucket Google Cloud Storage di destinazione e riprova. |
| NOT_FOUND | REQUEST_NOT_FOUND: dataExportId:<dataExportId> non esiste. Aggiungi un dataExportId valido e riprova. |
| FAILED_PRECONDITION | BUCKET_INVALID_REGION: la regione del bucket Google Cloud Storage <bucketId>:<region1> non è la stessa regione del tenant SecOps:<region2>. Crea il bucket Google Cloud Storage nella stessa regione del tenant SecOps e riprova. |
| FAILED_PRECONDITION | INSUFFICIENT_PERMISSIONS: Il service account <P4SA> non dispone delle autorizzazioni storage.objects.create, storage.objects.get e storage.buckets.get per il bucket Google Cloud Storage di destinazione <bucketName>. Fornisci l'accesso richiesto al service account e riprova. |
| FAILED_PRECONDITION | INVALID_UPDATE: lo stato della richiesta è nella fase <status> e non può essere aggiornato. Puoi aggiornare la richiesta solo se lo stato è nella fase IN_QUEUE. |
| FAILED_PRECONDITION | INVALID_CANCELLATION: Lo stato della richiesta è nella fase <status> e non può essere annullata. Puoi annullare la richiesta solo se lo stato è IN_QUEUE. |
| RESOURCE_EXHAUSTED | CONCURRENT_REQUEST_LIMIT_EXCEEDED: è stato raggiunto il limite massimo di richieste simultanee <limit> per le dimensioni della richiesta <sizelimit>. Attendi il completamento delle richieste esistenti e riprova. |
| RESOURCE_EXHAUSTED | REQUEST_SIZE_LIMIT_EXCEEDED: Il volume di esportazione stimato: <estimatedVolume> per la richiesta è superiore al volume di esportazione massimo consentito: <allowedVolume> per richiesta. Riprova con una richiesta entro il limite di volume di esportazione consentito. |
| INTERNAL | INTERNAL_ERROR: si è verificato un errore interno. Riprova. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.