Invio di log di traffico ACL Web a un bucket Amazon Simple Storage Service - AWS WAFAWS Firewall Manager, e AWS Shield Advanced

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Invio di log di traffico ACL Web a un bucket Amazon Simple Storage Service

Questo argomento fornisce informazioni per inviare i log di traffico ACL Web a un bucket Amazon S3.

Nota

Oltre ai costi di utilizzo, ti verranno addebitati i costi per la registrazione. AWS WAF Per informazioni, consultare Prezzi per la registrazione delle informazioni sul traffico ACL Web.

Per inviare i log del traffico Web ACL ad Amazon S3, è necessario configurare un bucket Amazon S3 dallo stesso account utilizzato per gestire l'ACL Web e assegnare un nome al bucket a partire da. aws-waf-logs- Quando abiliti l'accesso, fornisci il nome del bucket. AWS WAF Per informazioni sulla creazione di un bucket di registrazione, consulta Create a Bucket nella Amazon Simple Storage Service User Guide.

Puoi accedere e analizzare i log di Amazon S3 utilizzando il servizio di query interattivo Amazon Athena. Athena semplifica l'analisi dei dati direttamente in Amazon S3 utilizzando SQL standard. Con poche azioni AWS Management Console, puoi indirizzare Athena ai dati archiviati in Amazon S3 e iniziare rapidamente a utilizzare SQL standard per eseguire query ad hoc e ottenere risultati. Per ulteriori informazioni, consulta la sezione Interrogazione dei AWS WAF log nella guida per l'utente di Amazon Athena. Per ulteriori esempi di query Amazon Athena, consulta waf-log-sample-athenaaws-samples/ -queries sul sito Web. GitHub

Nota

AWS WAF supporta la crittografia con bucket Amazon S3 per il tipo di chiave Amazon S3 key (SSE-S3) e per (SSE-KMS). AWS Key Management Service AWS KMS keys AWS WAF non supporta la crittografia per le chiavi gestite da. AWS Key Management Service AWS

Web ACLs pubblica i propri file di log nel bucket Amazon S3 a intervalli di 5 minuti. Ogni file di registro contiene i record di registro per il traffico registrato nei 5 minuti precedenti.

Le dimensioni file massime per un file di log sono di 75 MB. Se il file di registro raggiunge il limite di dimensione del file entro un periodo di 5 minuti, interrompe l'aggiunta di record, lo pubblica nel bucket Amazon S3 e quindi crea un nuovo file di registro.

I file di log sono compressi. Se apri i file utilizzando la console Amazon S3, Amazon S3 decomprime i record di log e li visualizza. Se scarichi i file di registro, devi decomprimerli per visualizzare i record.

Un singolo file di registro contiene voci interlacciate con più record. Per visualizzare tutti i file di registro di un ACL Web, cerca le voci aggregate in base al nome ACL Web, alla regione e all'ID dell'account.

Requisiti di denominazione e sintassi

I nomi dei bucket per la AWS WAF registrazione devono iniziare con aws-waf-logs- e possono terminare con qualsiasi suffisso desiderato. Ad esempio aws-waf-logs-LOGGING-BUCKET-SUFFIX.

Ubicazione del bucket

Le posizioni dei bucket utilizzano la seguente sintassi:

s3://aws-waf-logs-LOGGING-BUCKET-SUFFIX/
Bucket ARN

Il formato del bucket Amazon Resource Name (ARN) è il seguente:

arn:aws:s3:::aws-waf-logs-LOGGING-BUCKET-SUFFIX
Posizioni dei bucket con prefissi

Se utilizzi dei prefissi nel nome delle chiavi oggetto per organizzare i dati archiviati nei bucket, puoi fornire i prefissi nei nomi dei bucket di registrazione.

Nota

Questa opzione non è disponibile tramite la console. Usa AWS WAF APIs, CLI o. AWS CloudFormation

Per informazioni sull'uso dei prefissi in Amazon S3, consulta Organizing objects using prefixes nella Amazon Simple Storage Service User Guide.

Le posizioni dei bucket con prefissi utilizzano la seguente sintassi:

s3://aws-waf-logs-LOGGING-BUCKET-SUFFIX/KEY-NAME-PREFIX/
Cartelle e nomi di file dei bucket

All'interno dei bucket e seguendo i prefissi che fornisci, AWS WAF i log sono scritti in una struttura di cartelle determinata dall'ID dell'account, dalla regione, dal nome ACL web e dalla data e dall'ora.

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

All'interno delle cartelle, i nomi dei file di registro seguono un formato simile:

account-id_waflogs_Region_web-acl-name_timestamp_hash.log.gz

Le specifiche temporali utilizzate nella struttura delle cartelle e nel nome del file di registro rispettano le specifiche del formato del timestamp. YYYYMMddTHHmmZ

Di seguito viene illustrato un esempio di file di log in un bucket Amazon S3 per un bucket denominato. aws-waf-logs-LOGGING-BUCKET-SUFFIX Lo è. Account AWS 11111111111 L'ACL web è TEST-WEBACL e la regione èus-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
Nota

I nomi dei bucket per la AWS WAF registrazione devono iniziare con aws-waf-logs- e possono terminare con qualsiasi suffisso desiderato.

Autorizzazioni necessarie per pubblicare i log su Amazon S3

La configurazione della registrazione del traffico Web ACL per un bucket Amazon S3 richiede le seguenti impostazioni di autorizzazione. Queste autorizzazioni vengono impostate automaticamente quando utilizzi una delle politiche di gestione dell'accesso completo, oppure. AWS WAF AWSWAFConsoleFullAccess AWSWAFFullAccess Se desideri gestire ulteriormente l'accesso ai tuoi log e alle tue AWS WAF risorse, puoi impostare tu stesso queste autorizzazioni. Per informazioni sulla gestione delle autorizzazioni, consulta Gestione degli accessi per AWS le risorse nella Guida per l'utente IAM. Per informazioni sulle politiche AWS WAF gestite, consultaAWS politiche gestite per AWS WAF.

Le seguenti autorizzazioni consentono di modificare la configurazione di registrazione ACL Web e di configurare la consegna dei log al bucket Amazon S3. Queste autorizzazioni devono essere associate all'utente che utilizzi per la gestione. AWS WAF

Nota

Quando imposti le autorizzazioni elencate di seguito, potresti visualizzare errori nei AWS CloudTrail registri che indicano un accesso negato, ma le autorizzazioni sono corrette per la registrazione. AWS WAF

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

Quando sono consentite azioni su tutte le AWS risorse, ciò è indicato nella politica con un'impostazione di. "Resource" "*" Ciò significa che le azioni sono consentite su tutte le AWS risorse supportate da ciascuna azione. Ad esempio, l'azione wafv2:PutLoggingConfiguration è supportata solo per la wafv2 registrazione delle risorse di configurazione.

Per impostazione predefinita, i bucket Amazon S3 e gli oggetti in essi contenuti sono privati. Solo il proprietario del bucket può accedere al bucket e agli oggetti in esso archiviati. Il proprietario del bucket, tuttavia, può concedere l'accesso ad altre risorse e utenti scrivendo una politica di accesso.

Se l'utente che crea il log è proprietario del bucket, il servizio allega automaticamente la seguente policy al bucket per concedere al log l'autorizzazione a pubblicare i log su di esso:

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

I nomi dei bucket per la AWS WAF registrazione devono iniziare con aws-waf-logs- e possono terminare con qualsiasi suffisso desiderato.

Se l'utente che crea il log non è proprietario del bucket o non dispone delle autorizzazioni GetBucketPolicy e dei PutBucketPolicy permessi per il bucket, la creazione del log ha esito negativo. In questo caso, il proprietario del bucket deve aggiungere manualmente la politica precedente al bucket e specificare l'ID del creatore del log. Account AWS Per ulteriori informazioni, consulta Come aggiungere una policy per un bucket S3 nella Guida per l'utente di Amazon Simple Storage Service. Se il bucket riceve log da più account, aggiungi un Resource elemento all'AWSLogDeliveryWriteinformativa relativa a ciascun account.

Ad esempio, la seguente politica sui bucket consente di Account AWS 111122223333 pubblicare i log in un bucket denominato: 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:*"] } } } ] }

Autorizzazioni per l'utilizzo con una chiave KMS AWS Key Management Service

Se la destinazione di registrazione utilizza la crittografia lato server con chiavi archiviate in AWS Key Management Service (SSE-KMS) e utilizzi una chiave gestita dal cliente (chiave KMS), devi autorizzare l'uso della tua chiave KMS. AWS WAF A tale scopo, aggiungi una politica chiave alla chiave KMS per la destinazione scelta. Ciò consente la AWS WAF registrazione per scrivere i file di registro nella destinazione.

Aggiungi la seguente policy chiave alla tua chiave KMS per consentire l'accesso AWS WAF al tuo bucket Amazon S3.

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

Autorizzazioni necessarie per accedere ai file di registro di Amazon S3

Amazon S3 utilizza le liste di controllo degli accessi (ACLs) per gestire l'accesso ai file di registro creati da un AWS WAF registro. Per impostazione predefinita, il proprietario del bucket dispone di autorizzazioni FULL_CONTROL su ogni file di log. Il proprietario della distribuzione dei log, se diverso dal proprietario del bucket, non dispone di autorizzazioni. L'account di distribuzione dei log dispone delle autorizzazioni READ e WRITE. Per ulteriori informazioni, consulta Panoramica della lista di controllo accessi nella Guida per l'utente di Amazon Simple Storage Service.