Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
Wie aktiviere ich die AWS-WAF-Protokollierung und sende Protokolle an CloudWatch, Amazon S3 oder Firehose?
Ich möchte die AWS WAF-Protokollierung aktivieren und die Protokolle an Amazon CloudWatch, Amazon Simple Storage Service (Amazon S3) oder Amazon Data Firehose senden.
Kurzbeschreibung
Wähle zunächst ein unterstütztes Ziel für die AWS WAF Web-Zugriffssteuerungsliste (Web ACL). Du musst die erforderlichen Berechtigungen einrichten, um die AWS-WAF-Protokolle zu aktivieren. AWS WAF unterstützt die folgenden Protokollziele:
Schalte dann die AWS WAF-Protokolle für das Ziel ein.
Lösung
Voraussetzungen:
- Protokollgruppennamen müssen mit dem Präfix aws-waf-logs- beginnen.
- Protokollgruppen müssen sich im selben AWS-Konto und derselben AWS-Region wie die Web-ACL befinden. Für globale Web-ACLs, die du mit Amazon CloudFront verknüpfst, muss sich die Protokollgruppe in der Region USA Ost (Nord-Virginia) befinden.
- Überprüfe die Kontingente der CloudWatch Logs-Protokollgruppen und von Firehose, die du einhalten musst.
Berechtigungen für eine CloudWatch Logs-Protokollgruppe konfigurieren
Erstelle entweder eine neue Protokollgruppe oder verwende eine bestehende Protokollgruppe. Verwende CloudWatch Logs Insights, um die AWS WAF-Protokolle zu analysieren.
Verwende das Format Region_web-acl-name_log-stream-number für Protokollstreams, die du in Protokollgruppen erstellst.
Konfiguriere die erforderlichen Berechtigungen, um Protokolle in CloudWatch Logs zu veröffentlichen. Wenn der Benutzer über die erforderlichen Berechtigungen verfügt, fügt CloudWatch der Protokollgruppe automatisch die folgende ressourcenbasierte Richtlinie hinzu, die es AWS WAF ermöglicht, Protokolle an sie zu senden:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSLogDeliveryWrite20150319", "Effect": "Allow", "Principal": { "Service": ["delivery.logs.amazonaws.com"] }, "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": ["arn:aws:logs:us-east-1:0123456789:log-group:my-log-group:log-stream:*"], "Condition": { "StringEquals": { "aws:SourceAccount": ["0123456789"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:us-east-1:0123456789:*"] } } } ] }
Hinweis: Ersetze SourceAccount durch die Kontonummer und SourceARN durch den Amazon-Ressourcennamen (ARN).
Wenn du in der Protokollgruppe keine Protokolle siehst, überprüfe mithilfe der DescribeResourcePolicies-API, ob die ressourcenbasierte Richtlinie über die erforderlichen Berechtigungen verfügt. Verwende die PutResourcePolicy-API, um deine ressourcenbasierte Richtlinie zu bearbeiten.
Weitere Informationen zu Protokollierungsberechtigungen findest du unter Protokollierung von AWS-Services aktivieren.
Berechtigungen für einen Amazon S3-Bucket konfigurieren
Wenn du AWS-WAF-Protokolle an einen S3-Bucket sendest, kannst du Amazon Athena verwenden, um die AWS-WAF-Protokolle zu analysieren.
Konfiguriere die erforderlichen Berechtigungen, um Protokolle in einem S3-Bucket zu veröffentlichen. Wenn der Benutzer über die erforderlichen Berechtigungen verfügt, fügt AWS dem Bucket automatisch die folgende Richtlinie hinzu, die es AWS WAF ermöglicht, Protokolle an ihn zu übermitteln:
{ "Version": "2012-10-17", "Id": "AWSLogDeliveryWrite20150319", "Statement": [ { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::my-bucket", "Condition": { "StringEquals": { "aws:SourceAccount": ["0123456789"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:us-east-1:0123456789:*"] } } }, { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-bucket/AWSLogs/account-ID/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "aws:SourceAccount": ["0123456789"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:us-east-1:0123456789:*"] } } } ] }
Hinweis: Ersetze SourceAccount durch die Kontonummer und SourceARN durch den ARN.
Wenn du die Protokolle im Bucket nicht sehen, überprüfe mithilfe der GetBucketPolicy-API, ob die Bucket-Richtlinie über die erforderlichen Berechtigungen verfügt. Verwende die PutBucketPolicy-API, um deine Bucket-Richtlinie zu bearbeiten.
Informationen zum Senden von Protokollen an ein anderes Konto oder eine andere AWS-Region findest du unter Wie sende ich AWS-WAF-Protokolle an einen Amazon S3-Bucket in einem zentralen Protokollierungskonto?
Berechtigungen für Firehose konfigurieren
Konfiguriere einen Firehose-Bereitstellungsdatenstrom. Lasse die Optionen Datentransformation und Konvertierung des Aufnahmeformats deaktiviert. Informationen zum Konfigurieren eines Ziels für den Bereitstellungsdatenstrom findest du unter Zieleinstellungen konfigurieren. Weitere Informationen findest du unter Firehose-Stream von der Konsole aus erstellen.
Hinweis: Ein AWS-WAF-Protokoll entspricht einer Firehose-Aufnahme.
Konfiguriere die erforderlichen Berechtigungen, um Protokolle in einem Firehose-Bereitstellungsdatenstrom zu veröffentlichen. Informationen zu serviceverknüpften Rollen und der Berechtigung iam:CreateServiceLinkedRole findest du unter Verwenden von serviceverknüpften Rollen für AWS WAF.
Aktivieren von AWS-WAF-Protokollen
Führe die folgenden Schritte aus:
- Öffne die AWS-WAF-Konsole.
- Wähle im Navigationsbereich unter AWS WAF die Option Ressourcen und Schutzpakete aus.
- Suche das Schutzpaket und wähle dann neben Protokollierung die Option Anzeigen und Bearbeiten.
- Wähle unter Protokollierung die Option Aktivieren aus.
- Wähle Ziel der Protokollierung aus.
- Wähle im rechten Bereich unter Ziel der Protokollierung das Ziel aus.
- Wähle unter Geschwärzte Felder die Felder aus, die du aus den Protokollen auslassen möchtest.
- Füge für Protokolle filtern Filter für die Anforderungen hinzu, die du speichern möchtest.
- Wähle Speichern aus.
- Tags
- AWS WAF
- Sprache
- Deutsch
Ähnliche Videos


Relevanter Inhalt
AWS OFFICIALAktualisiert vor 6 Monaten
AWS OFFICIALAktualisiert vor 9 Monaten