Destinos de logs - AWS WAF, AWS Firewall Manager, e AWS Shield Advanced

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Destinos de logs

Esta seção descreve os destinos de registro que você pode escolher para enviar seus registros AWS WAF de políticas. Cada seção fornece orientações para configurar os logs para o tipo de destino e informações sobre qualquer comportamento específico para o tipo de destino. Depois de configurar seu destino de registro, você pode fornecer suas especificações à AWS WAF política do Firewall Manager para começar a fazer login nele.

Você pode ativar o registro centralizado de suas AWS WAF políticas para obter informações detalhadas sobre o tráfego que é analisado pela sua web ACL em sua organização. As informações nos registros incluem a hora em que AWS WAF recebeu a solicitação do seu AWS recurso, informações detalhadas sobre a solicitação e a ação da regra de que cada solicitação correspondeu de todas as contas dentro do escopo. Você pode enviar seus registros para um stream de dados do Amazon Data Firehose ou para um bucket do Amazon Simple Storage Service (S3). Para obter mais informações sobre as AWS WAF , consulte Registro em log AWS WAF ACLtráfego na web no Guia do desenvolvedor do AWS WAF .

nota

AWS Firewall Manager suporta essa opção para AWS WAFV2, não para AWS WAF Classic.

O Firewall Manager não tem visibilidade das falhas de log depois de criar a configuração de registro em log. É sua responsabilidade verificar se a entrega de logs está funcionando conforme o esperado.

nota

O Firewall Manager não modifica nenhuma configuração de registro em log existente nas contas dos membros da sua organização.

Streams de dados do Amazon Data Firehose

Este tópico fornece informações para enviar seus registros de ACL tráfego da web para um stream de dados do Amazon Data Firehose.

Quando você ativa o registro no Amazon Data Firehose, o Firewall Manager envia registros da web da sua política ACLs para um Amazon Data Firehose onde você configurou um destino de armazenamento. Depois de habilitar o registro, AWS WAF entrega os registros para cada web configuradaACL, por meio do HTTPS endpoint do Kinesis Data Firehose até o destino de armazenamento configurado. Antes de usá-lo, teste seu streaming de entrega para ter certeza de que ele tem throughput suficiente para acomodar os logs da sua organização. Para obter mais informações sobre como criar um Amazon Kinesis Data Firehose e analisar os registros armazenados, consulte O que é o Amazon Data Firehose?

Você deve ter as seguintes permissões para habilitar o registro em log com êxito com um Kinesis:

  • iam:CreateServiceLinkedRole

  • firehose:ListDeliveryStreams

  • wafv2:PutLoggingConfiguration

Quando você configura um destino de registro do Amazon Data Firehose em uma AWS WAF política, o Firewall Manager cria uma web ACL para a política na conta do administrador do Firewall Manager da seguinte forma:

  • O Firewall Manager cria a web ACL na conta de administrador do Firewall Manager, independentemente de a conta estar ou não no escopo da política.

  • A web ACL tem o registro ativado, com um nome de registroFMManagedWebACLV2-Loggingpolicy name-timestamp, em que o timestamp é a UTC hora em que o log foi ativado para a webACL, em milissegundos. Por exemplo, FMManagedWebACLV2-LoggingMyWAFPolicyName-1621880565180. A web não ACL tem grupos de regras nem recursos associados.

  • Você é cobrado pela web de ACL acordo com as diretrizes AWS WAF de preços. Para obter mais informações, consulte Preços do AWS WAF.

  • O Firewall Manager exclui a web ACL quando você exclui a política.

Para obter mais informações sobre funções vinculadas ao serviço e a permissão do iam:CreateServiceLinkedRole, consulte Usando funções vinculadas a serviços para AWS WAF.

Para obter mais informações sobre como criar seu stream de entrega, consulte Creating an Amazon Data Firehose Delivery Stream.

Buckets do Amazon Simple Storage Service

Este tópico fornece informações para enviar seus registros de ACL tráfego da web para um bucket do Amazon S3.

O bucket que você escolher como destino de registro em log deve pertencer a uma conta de administrador do Firewall Manager. Para obter informações sobre os requisitos para criar seu bucket do Amazon S3 para requisitos de registro em log e nomenclatura de buckets, consulte Amazon Simple Storage Service no Guia do desenvolvedor AWS WAF .

Consistência eventual

Quando você faz alterações AWS WAF nas políticas configuradas com um destino de registro do Amazon S3, o Firewall Manager atualiza a política do bucket para adicionar as permissões necessárias para o registro. Ao fazer isso, o Firewall Manager segue os modelos de last-writer-wins semântica e consistência de dados que o Amazon Simple Storage Service segue. Se você fizer simultaneamente várias atualizações de políticas em um destino do Amazon S3 no console do Firewall Manager ou por meio PutPolicyAPIdo, algumas permissões podem não ser salvas. Para obter mais informações sobre modelo de consistência de dados do Amazon S3, consulte Modelo de consistência de dados do Amazon S3 no Guia do usuário do Amazon Simple Storage Service.

Permissões para publicar logs em um bucket do Amazon S3

Configurar o registro de ACL tráfego da web para um bucket do Amazon S3 em AWS WAF uma política requer as seguintes configurações de permissões. O Firewall Manager atribui automaticamente essas permissões ao seu bucket do Amazon S3 quando você configura o Amazon S3 como seu destino de registro em log para dar ao serviço permissão para publicar registros em log no bucket. Se você quiser gerenciar um acesso mais refinado aos seus recursos de registro em log e do Firewall Manager, você mesmo pode definir essas permissões. Para obter informações sobre o gerenciamento de permissões, consulte Gerenciamento de acesso para AWS recursos no Guia IAM do usuário. Para obter informações sobre as políticas AWS WAF gerenciadas, consulteAWS políticas gerenciadas para AWS WAF.

{ "Version": "2012-10-17", "Id": "AWSLogDeliveryForFirewallManager", "Statement": [ { "Sid": "AWSLogDeliveryAclCheckFMS", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::aws-waf-amzn-s3-demo-bucket" }, { "Sid": "AWSLogDeliveryWriteFMS", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::aws-waf-logs-amzn-s3-demo-bucket/policy-id/AWSLogs/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } } ] }

Para evitar problema de “confused deputy” entre serviços, você pode adicionar as chaves de contexto de condição global aws:SourceArn e aws:SourceAccount e as chaves de contexto à política do seu bucket. Para adicionar essas chaves, você pode modificar a política que o Firewall Manager cria para você ao configurar o destino do registro em log ou, se quiser um controle refinado, pode criar sua própria política. Se você adicionar essas condições à sua política de destino de registro em log, o Firewall Manager não validará nem monitorará as proteções de “confused deputy”. Para obter informações gerais sobre o problema do deputado confuso, consulte O problema do deputado confuso no Guia do IAM usuário.

Quando você adiciona a sourceAccount às propriedades sourceArn de adição, isso aumenta o tamanho da política do bucket. Se você estiver adicionando uma longa lista de sourceAccount às propriedades sourceArn de adição, tome cuidado para não exceder a cota de tamanho da política de bucket do Amazon S3.

O exemplo a seguir mostra como evitar o problema de “confused deputy” usando as chaves de contexto de condição globais aws:SourceArn e aws:SourceAccount na política do seu bucket. Substituir member-account-id com a conta IDs dos membros da sua organização.

{ "Version":"2012-10-17", "Id":"AWSLogDeliveryForFirewallManager", "Statement":[ { "Sid":"AWSLogDeliveryAclCheckFMS", "Effect":"Allow", "Principal":{ "Service":"delivery.logs.amazonaws.com" }, "Action":"s3:GetBucketAcl", "Resource":"arn:aws:s3:::aws-waf-logs-amzn-s3-demo-bucket", "Condition":{ "StringEquals":{ "aws:SourceAccount":[ "member-account-id", "member-account-id" ] }, "ArnLike":{ "aws:SourceArn":[ "arn:aws:logs:*:member-account-id:*", "arn:aws:logs:*:member-account-id:*" ] } } }, { "Sid":"AWSLogDeliveryWriteFMS", "Effect":"Allow", "Principal":{ "Service":"delivery.logs.amazonaws.com" }, "Action":"s3:PutObject", "Resource":"arn:aws:s3:::aws-waf-logs-amzn-s3-demo-bucket/policy-id/AWSLogs/*", "Condition":{ "StringEquals":{ "s3:x-amz-acl":"bucket-owner-full-control", "aws:SourceAccount":[ "member-account-id", "member-account-id" ] }, "ArnLike":{ "aws:SourceArn":[ "arn:aws:logs:*:member-account-id-1:*", "arn:aws:logs:*:member-account-id-2:*" ] } } } ] }

Criptografia no lado do servidor de bucket do Amazon S3

Você pode habilitar a criptografia do lado do servidor do Amazon S3 ou usar uma chave gerenciada pelo AWS Key Management Service cliente em seu bucket do S3. Se você optar por usar a criptografia padrão do Amazon S3 em seu bucket do Amazon S3 AWS WAF para registros, não precisará realizar nenhuma ação especial. No entanto, se você optar por usar uma chave de criptografia fornecida pelo cliente para criptografar seus dados do Amazon S3 em repouso, você deve adicionar a seguinte declaração de permissão à sua política de chaves: AWS Key Management Service

{ "Sid": "Allow Logs Delivery to use the key", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }

Para obter informações sobre o uso de chaves de criptografia fornecidas pelo cliente com o Amazon S3, consulte Uso da criptografia do lado do servidor com chaves fornecidas pelo cliente SSE (-C) no Guia do usuário do Amazon Simple Storage Service.