Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Envoi des journaux de trafic Web ACL vers un bucket Amazon Simple Storage Service

Mode de mise au point
Envoi des journaux de trafic Web ACL vers un bucket Amazon Simple Storage Service - AWS WAF, AWS Firewall Manager, et AWS Shield Advanced

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.

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.

Cette rubrique fournit des informations sur l'envoi de vos journaux de trafic ACL Web vers un compartiment Amazon S3.

Note

La connexion vous est facturée en plus des frais d'utilisation AWS WAF. Pour plus d’informations, veuillez consulter Tarification de l'enregistrement des informations relatives au trafic ACL Web.

Pour envoyer vos journaux de trafic ACL Web à Amazon S3, vous configurez un compartiment Amazon S3 à partir du même compte que celui que vous utilisez pour gérer l'ACL Web, et vous nommez le compartiment en commençant paraws-waf-logs-. Lorsque vous activez la connexion AWS WAF, vous indiquez le nom du compartiment. Pour plus d'informations sur la création d'un bucket de journalisation, consultez Create a Bucket dans le guide de l'utilisateur d'Amazon Simple Storage Service.

Vous pouvez accéder à vos journaux Amazon S3 et les analyser à l'aide du service de requêtes interactif Amazon Athena. Athena facilite l'analyse des données directement dans Amazon S3 à l'aide du SQL standard. En effectuant quelques actions AWS Management Console, vous pouvez pointer Athena vers les données stockées dans Amazon S3 et commencer rapidement à utiliser le SQL standard pour exécuter des requêtes ad hoc et obtenir des résultats. Pour plus d'informations, consultez la section Interrogation des AWS WAF journaux dans le guide de l'utilisateur d'Amazon Athena. Pour des exemples de requêtes Amazon Athena supplémentaires, consultez waf-log-sample-athenaaws-samples/ -queries sur le site Web. GitHub

Note

AWS WAF prend en charge le chiffrement avec des compartiments Amazon S3 pour le type de clé Amazon S3 (SSE-S3) et pour AWS Key Management Service (SSE-KMS). AWS KMS keys AWS WAF ne prend pas en charge le chiffrement des AWS Key Management Service clés gérées par AWS.

ACLs Publiez leurs fichiers journaux sur le Web dans le compartiment Amazon S3 à intervalles de 5 minutes. Chaque fichier journal contient les enregistrements du trafic enregistré au cours des 5 minutes précédentes.

La taille maximale d'un fichier journal est de 75 Mo. Si le fichier journal atteint la taille limite de fichier dans un délai de 5 minutes, le journal arrête d'y ajouter des enregistrements, le publie dans le compartiment Amazon S3, puis crée un nouveau fichier journal.

Les fichiers journaux sont compressés. Si vous ouvrez les fichiers à l'aide de la console Amazon S3, Amazon S3 décompresse les enregistrements du journal et les affiche. Si vous téléchargez les fichiers journaux, vous devez les décompresser pour afficher les enregistrements.

Un seul fichier journal contient des entrées entrelacées avec plusieurs enregistrements. Pour voir tous les fichiers journaux d'une ACL Web, recherchez les entrées agrégées par le nom de l'ACL Web, la région et l'ID de votre compte.

Exigences en matière de dénomination et syntaxe

Les noms des compartiments pour la AWS WAF journalisation doivent commencer par aws-waf-logs- et peuvent se terminer par le suffixe de votre choix. Par exemple, aws-waf-logs-LOGGING-BUCKET-SUFFIX.

Emplacement du godet

Les emplacements des compartiments utilisent la syntaxe suivante :

s3://aws-waf-logs-LOGGING-BUCKET-SUFFIX/
ARN de compartiment

Le format du bucket Amazon Resource Name (ARN) est le suivant :

arn:aws:s3:::aws-waf-logs-LOGGING-BUCKET-SUFFIX
Emplacements des compartiments avec préfixes

Si vous utilisez des préfixes dans le nom de vos clés d'objet pour organiser les données que vous stockez dans vos compartiments, vous pouvez fournir vos préfixes dans les noms de vos compartiments de journalisation.

Note

Cette option n'est pas disponible via la console. Utilisez AWS WAF APIs la CLI ou AWS CloudFormation.

Pour plus d'informations sur l'utilisation des préfixes dans Amazon S3, consultez la section Organisation des objets à l'aide de préfixes dans le guide de l'utilisateur d'Amazon Simple Storage Service.

Les emplacements des compartiments dotés de préfixes utilisent la syntaxe suivante :

s3://aws-waf-logs-LOGGING-BUCKET-SUFFIX/KEY-NAME-PREFIX/
Dossiers de compartiments et noms de fichiers

À l'intérieur de vos compartiments, et après les préfixes que vous fournissez, vos AWS WAF journaux sont écrits dans une structure de dossiers déterminée par votre identifiant de compte, la région, le nom de l'ACL Web, ainsi que la date et l'heure.

AWSLogs/account-id/WAFLogs/Region/web-acl-name/YYYY/MM/dd/HH/mm

À l'intérieur des dossiers, les noms des fichiers journaux suivent un format similaire :

account-id_waflogs_Region_web-acl-name_timestamp_hash.log.gz

Les spécifications temporelles utilisées dans la structure des dossiers et dans le nom du fichier journal sont conformes à la spécification du format d'horodatage. YYYYMMddTHHmmZ

Voici un exemple de fichier journal dans un compartiment Amazon S3 pour un compartiment nomméaws-waf-logs-LOGGING-BUCKET-SUFFIX. L' Compte AWS est11111111111. L'ACL Web est TEST-WEBACL et la région l'estus-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
Note

Les noms de vos compartiments pour la AWS WAF journalisation doivent commencer par aws-waf-logs- et peuvent se terminer par le suffixe de votre choix.

Autorisations requises pour publier des journaux sur Amazon S3

La configuration de la journalisation du trafic ACL Web pour un compartiment Amazon S3 nécessite les paramètres d'autorisation suivants. Ces autorisations sont définies pour vous lorsque vous utilisez l'une des politiques gérées d'accès AWS WAF complet, AWSWAFConsoleFullAccess ouAWSWAFFullAccess. Si vous souhaitez gérer davantage l'accès à votre journal et à vos AWS WAF ressources, vous pouvez définir ces autorisations vous-même. Pour plus d'informations sur la gestion des autorisations, consultez la section Gestion de l'accès aux AWS ressources dans le Guide de l'utilisateur IAM. Pour plus d'informations sur les politiques AWS WAF gérées, consultezAWS politiques gérées pour AWS WAF.

Les autorisations suivantes vous permettent de modifier la configuration de journalisation de l'ACL Web et de configurer la livraison des journaux vers votre compartiment Amazon S3. Ces autorisations doivent être associées à l'utilisateur que vous utilisez pour gérer AWS WAF.

Note

Lorsque vous définissez les autorisations répertoriées ci-dessous, vous pouvez voir des erreurs dans vos AWS CloudTrail journaux indiquant que l'accès a été refusé, mais que les autorisations sont correctes pour la AWS WAF journalisation.

{ "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" } ] }

Lorsque des actions sont autorisées sur toutes les AWS ressources, cela est indiqué dans la politique avec un "Resource" paramètre de"*". Cela signifie que les actions sont autorisées sur toutes les AWS ressources prises en charge par chaque action. Par exemple, l'action n'wafv2:PutLoggingConfigurationest prise en charge que pour la wafv2 journalisation des ressources de configuration.

Par défaut, les compartiments Amazon S3 et les objets qu'ils contiennent sont privés. Seul le propriétaire du compartiment peut accéder au compartiment et aux objets qui y sont stockés. Le propriétaire du bucket peut toutefois accorder l'accès à d'autres ressources et utilisateurs en rédigeant une politique d'accès.

Si l'utilisateur qui crée le journal est propriétaire du compartiment, le service attache automatiquement la politique suivante au compartiment pour autoriser le journal à y publier des journaux :

{ "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:*"] } } } ] }
Note

Les noms de vos compartiments pour la AWS WAF journalisation doivent commencer par aws-waf-logs- et peuvent se terminer par le suffixe de votre choix.

Si l'utilisateur qui crée le journal n'est pas propriétaire du compartiment ou ne dispose pas des PutBucketPolicy autorisations GetBucketPolicy et pour le compartiment, la création du journal échoue. Dans ce cas, le propriétaire du compartiment doit ajouter manuellement la politique précédente au compartiment et spécifier l' Compte AWS ID du créateur du journal. Pour de plus amples informations, veuillez consulter Comment ajouter une politique de compartiment S3 dans le Guide de l'utilisateur Amazon Simple Storage Service. Si le bucket reçoit les journaux de plusieurs comptes, ajoutez une entrée d'Resourceélément à la déclaration de AWSLogDeliveryWrite politique pour chaque compte.

Par exemple, la politique de compartiment suivante permet Compte AWS 111122223333 de publier des journaux dans un compartiment nommé aws-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:*"] } } } ] }

Autorisations d'utilisation AWS Key Management Service avec une clé KMS

Si votre destination de journalisation utilise le chiffrement côté serveur avec des clés stockées dans AWS Key Management Service (SSE-KMS) et que vous utilisez une clé gérée par le client (clé KMS), vous devez AWS WAF autoriser l'utilisation de votre clé KMS. Pour ce faire, vous ajoutez une politique clé à la clé KMS pour la destination que vous avez choisie. Cela permet à la AWS WAF journalisation d'écrire vos fichiers journaux vers votre destination.

Ajoutez la politique clé suivante à votre clé KMS pour autoriser AWS WAF la connexion à votre compartiment Amazon S3.

{ "Sid": "Allow AWS WAF to use the key", "Effect": "Allow", "Principal": { "Service": [ "delivery.logs.amazonaws.com" ] }, "Action": "kms:GenerateDataKey*", "Resource": "*" }

Autorisations requises pour accéder aux fichiers journaux Amazon S3

Amazon S3 utilise des listes de contrôle d'accès (ACLs) pour gérer l'accès aux fichiers journaux créés par un AWS WAF journal. Par défaut, le propriétaire du compartiment dispose d'autorisations FULL_CONTROL sur chaque fichier journal. Si le propriétaire de la diffusion des journaux n'est pas le propriétaire du compartiment, il ne dispose d'aucune autorisation. Le compte de diffusion des journaux possède les autorisations READ et WRITE. Pour de plus amples informations, veuillez consulter Présentation des listes de contrôle d'accès (ACL) dans le Guide du développeur Amazon Simple Storage Service.

Rubrique suivante :

Firehose

Rubrique précédente :

CloudWatch Journaux
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.