Wir stellen vor: ein neues Konsolenerlebnis für AWS WAF
Sie können das aktualisierte Erlebnis jetzt verwenden, um überall in der Konsole auf AWS WAF Funktionen zuzugreifen. Weitere Details finden Sie unter Arbeiten mit der aktualisierten Konsolenerfahrung.
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.
Senden von Protection Pack- oder Web-ACL-Traffic-Logs an einen Amazon Simple Storage Service-Bucket
Dieses Thema enthält Informationen zum Senden Ihrer Protection Pack- oder Web-ACL-Traffic-Logs an einen Amazon S3 S3-Bucket.
Anmerkung
Die Kosten für die Protokollierung werden zusätzlich zu den Kosten für die Nutzung von AWS WAF berechnet. Weitere Informationen finden Sie unter Preise für die Protokollierung von Protection Pack- oder Web-ACL-Verkehrsinformationen.
Um Ihr Protection Pack oder Ihre Web-ACL-Verkehrsprotokolle an Amazon S3 zu senden, richten Sie einen Amazon S3 S3-Bucket von demselben Konto aus ein, mit dem Sie das Protection Pack oder die Web-ACL verwalten, und geben dem Bucket einen Namen, der mit beginntaws-waf-logs-
. Wenn Sie die Anmeldung aktivieren AWS WAF, geben Sie den Bucket-Namen an. Informationen zum Erstellen eines Logging-Buckets finden Sie unter Create a Bucket im Amazon Simple Storage Service-Benutzerhandbuch.
Mit dem interaktiven Abfrageservice von Amazon Athena können Sie auf Ihre Amazon S3-Protokolle zugreifen und diese analysieren. Athena macht es einfach, Daten mit Standard-SQL direkt in Amazon S3 zu analysieren. Mit einigen Aktionen in der können Sie Athena auf Daten verweisen AWS Management Console, die in Amazon S3 gespeichert sind, und schnell beginnen, Standard-SQL zu verwenden, um Ad-hoc-Abfragen auszuführen und Ergebnisse zu erhalten. Weitere Informationen finden Sie unter Abfragen von AWS WAF Protokollen im Amazon Athena Athena-Benutzerhandbuch. Weitere Amazon Athena Athena-Beispielabfragen finden Sie auf der Website unter aws-samples/ waf-log-sample-athena
Anmerkung
AWS WAF unterstützt die Verschlüsselung mit Amazon S3 S3-Buckets für den Schlüsseltyp Amazon S3 S3-Schlüssel (SSE-S3) und für AWS Key Management Service (SSE-KMS). AWS KMS keys AWS WAF unterstützt keine Verschlüsselung für AWS Key Management Service Schlüssel, die von verwaltet werden. AWS
Protokolldateien aus Ihrem Protection Pack oder Ihrer Web-ACL werden in Intervallen von 5 Minuten im Amazon S3 S3-Bucket veröffentlicht. Jede Protokolldatei enthält Aufzeichnungen über den Datenverkehr der letzten 5 Minuten.
Die maximale Dateigröße für eine Protokolldatei beträgt 75 MB. Wenn die Protokolldatei die Dateigrößenbeschränkung innerhalb des 5-Minuten-Zeitraums erreicht, fügt das Protokoll keine weiteren Protokollsätze hinzu, sondern veröffentlicht sie im Amazon-S3-Bucket und erstellt dann eine neue Protokolldatei.
Die Protokolldateien werden komprimiert. Wenn Sie die Dateien über die Amazon-S3-Konsole öffnen, dekomprimiert Amazon S3 die Protokollsätze und zeigt sie an. Wenn Sie die Protokolldateien herunterladen, müssen Sie sie dekomprimieren, um die Datensätze anzuzeigen.
Eine einzelne Protokolldatei enthält verschachtelte Einträge mit mehreren Datensätzen. Um alle Protokolldateien für ein Protection Pack oder eine Web-ACL zu sehen, suchen Sie nach Einträgen, die nach dem Namen des Schutzpakets oder der Web-ACL, der Region und Ihrer Konto-ID zusammengefasst sind.
Benennungsanforderungen und Syntax
Bucket-Namen für die AWS WAF Protokollierung müssen mit einem beliebigen Suffix beginnen aws-waf-logs-
und können mit einem beliebigen Suffix enden. Beispiel, aws-waf-logs-
. LOGGING-BUCKET-SUFFIX
Standort des Buckets
Die Speicherorte der Buckets verwenden die folgende Syntax:
s3://aws-waf-logs-
LOGGING-BUCKET-SUFFIX
/
Bucket-ARN
Das Format des Buckets „Amazon-Ressourcenname (ARN)“ lautet wie folgt:
arn:aws:s3:::aws-waf-logs-
LOGGING-BUCKET-SUFFIX
Bucket-Standorte mit Präfixen
Wenn Sie Präfixe in Ihrem Objektschlüsselnamen verwenden, um die Daten zu organisieren, die Sie in Ihren Buckets speichern, können Sie Ihre Präfixe in Ihren Logging-Bucket-Namen angeben.
Anmerkung
Diese Option ist nicht über die Konsole verfügbar. Verwenden Sie AWS WAF APIs die CLI oder AWS CloudFormation.
Informationen zur Verwendung von Präfixen in Amazon S3 finden Sie unter Objekte mithilfe von Präfixen organisieren im Amazon Simple Storage Service-Benutzerhandbuch.
Die Bucket-Standorte mit Präfixen verwenden die folgende Syntax:
s3://aws-waf-logs-
LOGGING-BUCKET-SUFFIX
/KEY-NAME-PREFIX
/
Bucket-Ordner und Dateinamen
In Ihren Buckets und nach allen von Ihnen angegebenen Präfixen werden Ihre AWS WAF Logs in eine Ordnerstruktur geschrieben, die durch Ihre Konto-ID, die Region, den Namen des Schutzpakets oder der Web-ACL sowie Datum und Uhrzeit bestimmt wird.
AWSLogs/
account-id
/WAFLogs/Region
/web-acl-name
/YYYY
/MM
/dd
/HH
/mm
Innerhalb der Ordner folgen die Namen der Protokolldateien einem ähnlichen Format:
account-id
_waflogs_Region
_web-acl-name
_timestamp
_hash
.log.gz
Die in der Ordnerstruktur und im Namen der Protokolldatei verwendeten Zeitangaben entsprechen der Spezifikation des Zeitstempelformats YYYYMMddTHHmmZ
.
Das folgende Beispiel zeigt eine Protokolldatei in einem Amazon-S3-Bucket für einen Bucket mit dem Namen aws-waf-logs-
. Das AWS-Konto ist. LOGGING-BUCKET-SUFFIX
11111111111
Das Schutzpaket oder die Web-ACL ist TEST-WEBACL
und die Region istus-east-1
.
s3://aws-waf-logs-
LOGGING-BUCKET-SUFFIX
/AWSLogs/11111111111/WAFLogs/us-east-1/TEST-WEBACL/2021/10/28/19/50/11111111111_waflogs_us-east-1_TEST-WEBACL_20211028T1950Z_e0ca43b5.log.gz
Anmerkung
Ihre Bucket-Namen für die AWS WAF Protokollierung müssen mit einem beliebigen Suffix beginnen aws-waf-logs-
und können mit einem beliebigen Suffix enden.
Zum Veröffentlichen von Protokollen auf Amazon S3 sind Berechtigungen erforderlich
Für die Konfiguration des Protection Packs oder der Web-ACL-Datenverkehrsprotokollierung für einen Amazon S3 S3-Bucket sind die folgenden Berechtigungseinstellungen erforderlich. Diese Berechtigungen werden für Sie festgelegt, wenn Sie eine der verwalteten AWS WAF -Richtlinien mit vollem Zugriff, AWSWAFConsoleFullAccess
oder AWSWAFFullAccess
verwenden. Wenn Sie den Zugriff auf Ihre Protokollierung und AWS WAF Ressourcen weiter verwalten möchten, können Sie diese Berechtigungen selbst festlegen. Informationen zur Verwaltung von Berechtigungen finden Sie unter Zugriffsverwaltung für AWS
Ressourcen im IAM-Benutzerhandbuch. Informationen zu den AWS WAF verwalteten Richtlinien finden Sie unterAWS verwaltete Richtlinien für AWS WAF.
Mit den folgenden Berechtigungen können Sie die Konfiguration für das Protection Pack oder die Web-ACL-Protokollierung ändern und die Protokollzustellung an Ihren Amazon S3 S3-Bucket konfigurieren. Diese Berechtigungen müssen an den Benutzer angehängt werden, den Sie zur Verwaltung von AWS WAF verwenden.
Anmerkung
Wenn Sie die unten aufgeführten Berechtigungen festlegen, werden in Ihren AWS CloudTrail Protokollen möglicherweise Fehler angezeigt, die darauf hinweisen, dass der Zugriff verweigert wurde, die Berechtigungen für die AWS WAF Protokollierung jedoch korrekt sind.
{ "Version":"2012-10-17", "Statement":[ { "Action":[ "wafv2:PutLoggingConfiguration", "wafv2:DeleteLoggingConfiguration" ], "Resource":[ "*" ], "Effect":"Allow", "Sid":"LoggingConfigurationAPI" }, { "Sid":"WebACLLogDelivery", "Action":[ "logs:CreateLogDelivery", "logs:DeleteLogDelivery" ], "Resource": "*", "Effect":"Allow" }, { "Sid":"WebACLLoggingS3", "Action":[ "s3:PutBucketPolicy", "s3:GetBucketPolicy" ], "Resource": [ "arn:aws:s3:::aws-waf-logs-
LOGGING-BUCKET-SUFFIX
" ], "Effect":"Allow" } ] }
Wenn Aktionen für alle AWS Ressourcen zulässig sind, wird dies in der Richtlinie mit der "Resource"
Einstellung von angegeben"*"
. Das bedeutet, dass die Aktionen für alle AWS Ressourcen zulässig sind, die jede Aktion unterstützt. Die Aktion wafv2:PutLoggingConfiguration
wird beispielsweise nur für wafv2
-Protokollkonfigurationsressourcen unterstützt.
Standardmäßig sind Amazon-S3-Buckets und die darin enthaltenen Objekte privat. Nur der Bucket-Besitzer kann auf den Bucket und die darin gespeicherten Objekte zugreifen. Der Bucket-Besitzer kann jedoch anderen Ressourcen und Benutzern Zugriffsberechtigungen gewähren, indem er eine Zugriffsrichtlinie schreibt.
Wenn der Benutzer, der das Protokoll erstellt, den Bucket besitzt, fügt der Service automatisch die folgende Richtlinie an den Bucket an, um dem Protokoll die Berechtigung zum Veröffentlichen von Protokollen darin zu erteilen.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::aws-waf-logs-
LOGGING-BUCKET-SUFFIX
/AWSLogs/account-id
/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "aws:SourceAccount": ["account-id
"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:region
:account-id
:*"] } } }, { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::aws-waf-logs-LOGGING-BUCKET-SUFFIX
", "Condition": { "StringEquals": { "aws:SourceAccount": ["account-id
"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:region
:account-id
:*"] } } } ] }
Anmerkung
Ihre Bucket-Namen für die AWS WAF Protokollierung müssen mit einem beliebigen Suffix beginnen aws-waf-logs-
und können mit einem beliebigen Suffix enden.
Wenn der Benutzer, der das Protokoll erstellt, nicht Eigentümer des Buckets ist, hat er keine GetBucketPolicy
- und PutBucketPolicy
-Berechtigungen für den Bucket und das Protokoll kann nicht erstellt werden. In diesem Fall muss der Bucket-Eigentümer dem Bucket die vorherige Richtlinie manuell hinzufügen und die AWS-Konto -ID des Erstellers des Protokolls angeben. Weitere Informationen erhalten Sie unter Wie füge ich einen S3 Bucket hinzu? im Benutzerhandbuch zu Amazon Simple Storage Service. Wenn der Bucket Protokolle von mehreren Konten erhält, fügen Sie der AWSLogDeliveryWrite
-Richtlinienanweisung für jedes Konto einen Resource
-Elementeintrag hinzu.
Die folgende Bucket-Richtlinie ermöglicht beispielsweise die Veröffentlichung von Logs AWS-Konto
111122223333
in einem Bucket mit dem Namenaws-waf-logs-
:LOGGING-BUCKET-SUFFIX
{ "Version": "2012-10-17", "Id": "AWSLogDeliveryWrite20150319", "Statement": [ { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::aws-waf-logs-
LOGGING-BUCKET-SUFFIX
/AWSLogs/111122223333/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "aws:SourceAccount": ["111122223333"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:us-east-1:111122223333:*"] } } }, { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::aws-waf-logs-LOGGING-BUCKET-SUFFIX
", "Condition": { "StringEquals": { "aws:SourceAccount": ["111122223333"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:us-east-1:111122223333:*"] } } } ] }
Anmerkung
Manchmal werden in AWS CloudTrail unter Umständen Fehler vom Typ AccessDenied
angezeigt, wenn delivery.logs.amazonaws.com
nicht die Berechtigung s3:ListBucket
erteilt wurde. Um diese Fehler in Ihren CloudTrail Protokollen zu vermeiden, müssen Sie die s3:ListBucket
Erlaubnis erteilen delivery.logs.amazonaws.com
und die angegebenen Condition
Parameter mit den in der vorherigen Bucket-Richtlinie festgelegten s3:GetBucketAcl
Berechtigungen angeben. Um dies zu vereinfachen, können Sie das Objekt direkt aktualisierenStatement
, anstatt ein neues AWSLogDeliveryAclCheck
zu erstellen“Action”:
[“s3:GetBucketAcl”, “s3:ListBucket”]
.
Berechtigungen für die Verwendung AWS Key Management Service mit einem KMS-Schlüssel
Wenn Ihr Protokollierungsziel serverseitige Verschlüsselung mit Schlüsseln verwendet, die in AWS Key Management Service (SSE-KMS) gespeichert sind, und Sie einen vom Kunden verwalteten Schlüssel (KMS-Schlüssel) verwenden, müssen Sie die AWS WAF Erlaubnis zur Verwendung Ihres KMS-Schlüssels erteilen. Dazu fügen Sie dem KMS-Schlüssel für das von Ihnen gewählte Ziel eine Schlüsselrichtlinie hinzu. Auf diese Weise kann die AWS WAF Protokollierung Ihre Protokolldateien an Ihr Ziel schreiben.
Fügen Sie Ihrem KMS-Schlüssel die folgende Schlüsselrichtlinie hinzu, damit Sie AWS WAF sich bei Ihrem Amazon S3-Bucket anmelden können.
{ "Sid": "Allow AWS WAF to use the key", "Effect": "Allow", "Principal": { "Service": [ "delivery.logs.amazonaws.com" ] }, "Action": "kms:GenerateDataKey*", "Resource": "*" }
Für den Zugriff auf Amazon S3 S3-Protokolldateien sind Berechtigungen erforderlich
Amazon S3 verwendet Zugriffskontrolllisten (ACLs), um den Zugriff auf die von einem Protokoll erstellten AWS WAF
Protokolldateien zu verwalten. Standardmäßig hat der Bucket-Eigentümer FULL_CONTROL
-Berechtigungen für jede Protokolldatei. Der Protokollbereitstellungseigentümer hat keine Berechtigungen, wenn er nicht gleichzeitig der Bucket-Eigentümer ist. Das Konto für die Protokollbereitstellung hat READ
- und WRITE
-Berechtigungen. Weitere Informationen finden Sie unter Zugriffskontrollliste (ACL) – Übersicht im Benutzerhandbuch zu Amazon Simple Storage Service.