View a markdown version of this page

Protegendo seu gateway com AWS WAF - Base da Amazônia AgentCore

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á.

Protegendo seu gateway com AWS WAF

Você pode usar o AWS WAF com o Amazon Bedrock AgentCore Gateway para proteger seu gateway contra explorações na web, tráfego de bots e ataques volumétricos. AWS O WAF fornece uma camada de segurança em linha que avalia todas as solicitações de entrada antes que elas atinjam seus alvos.

Quando você associa uma lista de controle de acesso à web (ACL da web) do AWS WAF ao seu gateway, o AWS WAF inspeciona cada solicitação de entrada e aplica as regras que você configura. Solicitações que correspondam a uma regra de bloqueio são rejeitadas antes de atingirem qualquer meta. Você associa uma ACL da web no nível do gateway, com uma ACL da web por gateway.

Como AWS O WAF funciona com seu gateway

Quando você associa uma ACL da web ao seu gateway, ocorre o seguinte fluxo de solicitação:

  1. Um cliente envia uma solicitação para seu endpoint de gateway.

  2. AWS O WAF avalia a solicitação em relação às regras da ACL da web associada.

  3. Se a solicitação for permitida, o gateway a encaminha para o destino apropriado.

  4. Se a solicitação for bloqueada, o gateway retornará um erro ao cliente sem encaminhar a solicitação.

AWS O WAF avalia cada solicitação de entrada em linha. Quando nenhuma ACL da web está associada ao seu gateway, não há nenhuma sobrecarga e nenhuma avaliação do AWS WAF ocorre.

Pré-requisitos

Antes de associar uma ACL da web ao seu gateway, verifique se você atende aos seguintes requisitos:

  • Sua ACL web AWS do WAF deve existir na mesma AWS região do seu gateway.

  • Você deve usar uma ACL regional da web. CloudFront As ACLs da web (globais) não são suportadas.

  • Seu gateway deve estar no READY estado.

  • Sua identidade do IAM deve ter as seguintes permissões:

    • wafv2:AssociateWebACL

    • wafv2:DisassociateWebACL

    • wafv2:GetWebACLForResource

    • wafv2:ListResourcesForWebACL

    • bedrock-agentcore:GatewayAssociateWebACL

    • bedrock-agentcore:GatewayDisassociateWebACL

    • bedrock-agentcore:GatewayGetWebACLForResource

    • bedrock-agentcore:GatewayListResourcesForWebACL

Associando uma ACL da web ao seu gateway

Você pode associar uma ACL da web ao seu gateway usando o console AWS WAF ou a AWS CLI. Um gateway pode ter no máximo uma ACL da web. No entanto, uma ACL da web pode ser associada a vários gateways. Para alterar a ACL da web associada ao seu gateway, associe uma nova ACL da web. A nova associação substitui a existente.

Para associar uma ACL da web ao seu gateway usando a AWS CLI, execute o seguinte comando:

aws wafv2 associate-web-acl \ --web-acl-arn arn:aws:wafv2:us-east-1:123456789012:regional/webacl/my-web-acl/a1b2c3d4-5678-90ab-cdef-example11111 \ --resource-arn arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/my-gateway-id

Substitua os valores do ARN pelo ARN da ACL da web e pelo ARN do gateway.

Desassociando uma ACL da web do seu gateway

Para remover a proteção AWS WAF do seu gateway, desassocie a ACL da web. Você deve desassociar qualquer ACL da web do seu gateway antes de excluir o gateway.

Para desassociar uma ACL da web do seu gateway usando a AWS CLI, execute o seguinte comando:

aws wafv2 disassociate-web-acl \ --resource-arn arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/my-gateway-id

Substitua o valor do ARN pelo ARN do gateway.

Configurando o   AWS Modo de falha do WAF

Se o AWS WAF estiver inacessível ou atingir o tempo limite durante a avaliação da solicitação, o gateway usará o modo de falha configurado para determinar se deseja bloquear ou permitir a solicitação.

FAIL_CLOSE

O gateway bloqueia a solicitação. Esse é o comportamento padrão.

FAIL_OPEN

O gateway permite que a solicitação chegue ao destino sem a avaliação do AWS WAF.

Para configurar o modo de falha, use a UpdateGateway API com o wafConfiguration parâmetro:

aws bedrock-agentcore-control update-gateway \ --gateway-identifier my-gateway-id \ --name my-gateway \ --role-arn arn:aws:iam::123456789012:role/my-gateway-service-role \ --authorizer-type CUSTOM_JWT \ --authorizer-configuration '{ "customJWTAuthorizer": { "discoveryUrl": "https://cognito-idp.us-east-1.amazonaws.com/my-user-pool/.well-known/openid-configuration", "allowedClients": ["clientId"] } }' \ --waf-configuration '{"failureMode": "FAIL_OPEN"}'
Importante

O modo de falha padrão éFAIL_CLOSE, que fornece uma abordagem que prioriza a segurança. Use FAIL_OPEN somente quando a disponibilidade for mais importante do que a segurança para sua carga de trabalho.

AWS Manipulação da resposta WAF

Quando o AWS WAF bloqueia uma solicitação, a resposta de erro depende do seu tipo de alvo:

Metas do MCP

As solicitações bloqueadas retornam um JSON-RPC erro com o código -32002 e a mensagem"Authorization error - Request forbidden".

Alvos HTTP e de passagem

As solicitações bloqueadas retornam HTTP 403.

Se o AWS WAF atingir o tempo limite com a FAIL_CLOSE configuração, o gateway retornará o mesmo erro de uma solicitação bloqueada. Se o AWS WAF retornar um erro 5xx, os alvos MCP receberão um JSON-RPC erro com o código -32603 e a mensagem. "Internal error - Server error"

Monitoramento AWS Atividade do WAF

Você pode monitorar a atividade AWS do WAF em seu gateway usando as CloudWatch métricas da Amazon.

As seguintes métricas estão disponíveis no AWS/Bedrock-AgentCore namespace:

Métrica Description

WafBlocks

A contagem de solicitações bloqueadas pelo AWS WAF, incluindo respostas de bloqueio padrão e personalizadas.

WafFailOpens

A contagem de solicitações em que o AWS WAF estava inacessível e o modo de falha do gateway estáFAIL_OPEN, portanto, a solicitação foi encaminhada ao destino sem a avaliação do WAF. AWS Valores sustentados diferentes de zero indicam que seu gateway está deixando o tráfego passar sem a inspeção do AWS WAF.

WafFailCloses

A contagem de solicitações em que o AWS WAF estava inacessível e o modo de falha do gateway estáFAIL_CLOSE, portanto, a solicitação foi rejeitada. Valores sustentados diferentes de zero indicam que seu gateway está reduzindo o tráfego devido à inacessibilidade do WAF. AWS

Para obter detalhes em nível de regra sobre solicitações bloqueadas, use o registro do AWS WAF. Você pode correlacionar o ID da solicitação em seus registros do gateway com os registros do AWS WAF.

Cotas e limitações

As seguintes cotas e limitações se aplicam à integração do AWS WAF com seu gateway:

  • Máximo de 100 associações de ACL da web por conta.

  • AWS A associação do WAF está somente no nível do gateway, não por alvo. Para aplicar regras diferentes a alvos diferentes, use as regras AWS WAF baseadas em caminhos de URI.

  • AWS A integração com o WAF está disponível AWS nas regiões em que o AWS WAF e o AgentCore Gateway estão disponíveis.

Práticas recomendadas

Recomendamos as seguintes práticas ao usar o AWS WAF com seu gateway:

  • Use grupos de regras AWS gerenciadas para obter proteções comuns contra ameaças conhecidas.

  • Implemente regras baseadas em taxas para se proteger contra ataques volumétricos.

  • Use IP-based regras para permitir ou negar fontes conhecidas.

  • Teste as regras AWS do WAF no COUNT modo antes de mudar BLOCK para ele para entender o impacto em seu tráfego.

  • Monitore as WafFailCloses métricas WafBlocksWafFailOpens,, e para ajustar suas regras e identificar problemas.

  • Use o FAIL_CLOSE modo padrão para cargas de trabalho sensíveis à segurança. Use FAIL_OPEN somente quando a disponibilidade for crítica e você tiver outros controles de segurança em vigor.