Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
-
Modifiez l'exemple d'instruction DDL suivant pour vous conformer à la structure de vos journaux Netflow. Il se peut que vous deviez mettre à jour l'instruction pour inclure les colonnes de la dernière version des journaux. Pour plus d'informations, consultez la rubrique Contenu d'un journal de pare-feu du Guide du développeur 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
/'; -
Modifiez la
LOCATION
clause pour spécifier le dossier de vos journaux dans Amazon S3. -
Exécutez la
CREATE TABLE
requête dans l'éditeur de requêtes Athena. Une fois la requête terminée, Athena enregistre lanetwork_firewall_netflow_logs
table et prépare les données vers lesquelles elle pointe pour les requêtes.
Exemple de requête
L'exemple de requête du journal Netflow présenté dans cette section filtre les événements au cours desquels une inspection TLS a été effectuée.
La requête utilise des alias pour créer des en-têtes de colonne de sortie indiquant à struct
quoi appartient la colonne. Par exemple, l'en-tête de colonne du event.netflow.bytes
champ est event_netflow_bytes
au lieu de simplementbytes
. Pour personnaliser davantage les noms des colonnes, vous pouvez modifier les alias en fonction de vos préférences. Par exemple, vous pouvez utiliser des traits de soulignement ou d'autres séparateurs pour délimiter les struct
noms et les noms de champs.
N'oubliez pas de modifier les noms et les struct
références des colonnes en fonction de la définition de votre table et des champs que vous souhaitez voir apparaître dans le résultat de la requête.
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