Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Eine Tabelle für Netzwerkfluss-Protokolle erstellen und abfragen
-
Ändern Sie die folgende DDL-Beispielanweisung so, dass sie der Struktur Ihrer Netzwerkfluss-Protokolle entspricht. Möglicherweise müssen Sie die Anweisung so aktualisieren, dass sie die Spalten für die neueste Version der Protokolle enthält. Weitere Informationen finden Sie unter Inhalt eines Firewall-Protokolls im AWS Network Firewall-Entwicklerhandbuch.
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/'; -
Ändern Sie die
LOCATION-Klausel, um den Ordner für Ihre Protokolle in Amazon S3 anzugeben. -
Führen Sie die
CREATE TABLE-Abfrage im Athena-Abfrage-Editor aus. Nach Abschluss der Abfrage registriert Athena dienetwork_firewall_netflow_logs-Tabelle, sodass die Daten, auf die sie verweist, für Abfragen bereitstehen.
Beispielabfrage
Das Beispiel für eine Netzwerkfluss-Protokollabfrage in diesem Abschnitt filtert nach Ereignissen, bei denen eine TLS-Überprüfung durchgeführt wurde.
Die Abfrage verwendet Aliase, um Ausgabespaltenüberschriften zu erstellen, die das struct anzeigen, zu dem die Spalte gehört. Beispielsweise lautet die Spaltenüberschrift für das event.netflow.bytes-Feld event_netflow_bytes statt nur bytes. Um die Spaltennamen weiter anzupassen, können Sie die Aliase an Ihre Präferenzen anpassen. Sie können beispielsweise Unterstriche oder andere Trennzeichen verwenden, um die struct-Namen und Feldnamen abzugrenzen.
Denken Sie daran, Spaltennamen und struct-Verweise auf der Grundlage Ihrer Tabellendefinition und der Felder, die Sie im Abfrageergebnis haben möchten, zu ändern.
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