Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Creare ed eseguire query in una tabella per i log di netflow
-
Modificare la seguente istruzione DDL di esempio per renderla conforme alla struttura dei log di netflow. Potrebbe essere necessario aggiornare l'istruzione per includere le colonne per la versione più recente dei log. Per ulteriori informazioni, consulta Contenuti di un log firewall nella Guida per gli sviluppatori di AWS Network Firewall.
CREATE EXTERNAL TABLE network_firewall_netflow_logs ( firewall_name string, availability_zone string, event_timestamp string, event struct< timestamp:string, flow_id:bigint, event_type:string, src_ip:string, src_port:int, dest_ip:string, dest_port:int, proto:string, app_proto:string, tls_inspected:boolean, netflow:struct< pkts:int, bytes:bigint, start:string, `end`:string, age:int, min_ttl:int, max_ttl:int, tcp_flags:struct< syn:boolean, fin:boolean, rst:boolean, psh:boolean, ack:boolean, urg:boolean > > > ) ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe' LOCATION 's3://amzn-s3-demo-bucket/path_to_netflow_logs_folder/'; -
Modificare la frase
LOCATIONper specificare la cartella per i log in Amazon S3. -
Eseguire la query
CREATE TABLEnell'editor di query della console Athena. Una volta completata la query, Athena registra la tabellanetwork_firewall_netflow_logs, rendendo i dati in essa contenuti pronti per le query.
Query di esempio
La query di log netflow di esempio in questa sezione filtra gli eventi in cui è stata eseguita l'ispezione TLS.
La query utilizza alias per creare intestazioni di colonna di output che mostrano l'appartenenza della colonna struct. Ad esempio, l'intestazione di colonna del campo event.netflow.bytes è event_netflow_bytes invece di una semplice bytes. Per personalizzare ulteriormente i nomi delle colonne, è possibile modificare gli alias in base alle proprie preferenze. Ad esempio, è possibile utilizzare caratteri di sottolineatura o altri separatori per delimitare i nomi struct e i nomi dei campi.
Ricordarsi di modificare i nomi e i riferimenti struct delle colonne in base alla definizione della tabella e ai campi che si desidera inserire nel risultato della query.
SELECT event.src_ip AS event_src_ip, event.dest_ip AS event_dest_ip, event.proto AS event_proto, event.app_proto AS event_app_proto, event.tls_inspected AS event_tls_inspected, event.netflow.pkts AS event_netflow_pkts, event.netflow.bytes AS event_netflow_bytes, event.netflow.tcp_flags.syn AS event_netflow_tcp_flags_syn FROM network_firewall_netflow_logs WHERE event.tls_inspected = true