View a markdown version of this page

Proteja su puerta de enlace con AWS WAF - Base amazónica AgentCore

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Proteja su puerta de enlace con AWS WAF

Puede usar AWS WAF con Amazon Bedrock AgentCore Gateway para proteger su puerta de enlace contra los ataques volumétricos, el tráfico de bots y los ataques web. AWS El WAF proporciona una capa de seguridad en línea que evalúa todas las solicitudes entrantes antes de que lleguen a sus objetivos.

Cuando asocias una lista de control de acceso web (ACL web) de AWS WAF a tu puerta de enlace, AWS WAF inspecciona todas las solicitudes entrantes y aplica las reglas que configuras. Las solicitudes que cumplen una regla de bloqueo se rechazan antes de que lleguen a cualquier destino. Se asocia una ACL web a nivel de puerta de enlace, con una ACL web por puerta de enlace.

Cómo AWS El WAF funciona con su puerta de enlace

Cuando asocias una ACL web a tu puerta de enlace, se produce el siguiente flujo de solicitudes:

  1. Un cliente envía una solicitud al punto final de la puerta de enlace.

  2. AWS El WAF evalúa la solicitud comparándola con las reglas de la ACL web asociada.

  3. Si se permite la solicitud, la puerta de enlace la dirige al destino apropiado.

  4. Si la solicitud está bloqueada, la puerta de enlace devuelve un error al cliente sin reenviar la solicitud.

AWS WAF evalúa cada solicitud entrante en línea. Cuando no hay ninguna ACL web asociada a su puerta de enlace, no hay ninguna sobrecarga y no se realiza ninguna AWS evaluación del WAF.

Requisitos previos

Antes de asociar una ACL web a su puerta de enlace, asegúrese de cumplir los siguientes requisitos:

  • Su ACL web AWS de WAF debe existir en la misma AWS región que su puerta de enlace.

  • Debe usar una ACL web regional. CloudFront No se admiten las ACL web (globales).

  • La puerta de enlace debe estar en READY estado.

  • Tu identidad de IAM debe tener los siguientes permisos:

    • wafv2:AssociateWebACL

    • wafv2:DisassociateWebACL

    • wafv2:GetWebACLForResource

    • wafv2:ListResourcesForWebACL

    • bedrock-agentcore:GatewayAssociateWebACL

    • bedrock-agentcore:GatewayDisassociateWebACL

    • bedrock-agentcore:GatewayGetWebACLForResource

    • bedrock-agentcore:GatewayListResourcesForWebACL

Asociar una ACL web a su puerta de enlace

Puede asociar una ACL web a su puerta de enlace mediante la consola AWS WAF o la AWS CLI. Una puerta de enlace puede tener como máximo una ACL web. Sin embargo, una ACL web se puede asociar a varias puertas de enlace. Para cambiar la ACL web asociada a su puerta de enlace, asocie una nueva ACL web. La nueva asociación reemplaza a la existente.

Para asociar una ACL web a su puerta de enlace mediante la AWS CLI, ejecute el siguiente 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

Sustituya los valores de ARN por el ARN de la ACL web y el ARN de la puerta de enlace.

Cómo desasociar una ACL web de su puerta de enlace

Para eliminar la protección AWS WAF de su puerta de enlace, desasocie la ACL web. Debe desvincular cualquier ACL web de su puerta de enlace antes de poder eliminar la puerta de enlace.

Para desvincular una ACL web de su puerta de enlace mediante la AWS CLI, ejecute el siguiente comando:

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

Sustituya el valor ARN por el ARN de la puerta de enlace.

Configuración de la de AWS Modo de fallo del WAF

Si no se puede acceder al AWS WAF o se agota el tiempo de espera durante la evaluación de la solicitud, la puerta de enlace utiliza el modo de error configurado para determinar si se bloquea o se permite la solicitud.

FAIL_CLOSE

La puerta de enlace bloquea la solicitud. Este es el comportamiento predeterminado.

FAIL_OPEN

La pasarela permite que la solicitud llegue al destino sin necesidad de una evaluación AWS del WAF.

Para configurar el modo de error, utilice la UpdateGateway API con el 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

El modo de error predeterminado esFAIL_CLOSE, que proporciona un enfoque centrado en la seguridad. Úselo FAIL_OPEN solo cuando la disponibilidad sea más importante que la seguridad para su carga de trabajo.

AWS Gestión de respuestas de WAF

Cuando el AWS WAF bloquea una solicitud, la respuesta de error depende del tipo de destino:

Objetivos de MCP

Las solicitudes bloqueadas devuelven un JSON-RPC error con el código -32002 y el mensaje"Authorization error - Request forbidden".

Destinos HTTP y de acceso directo

Las solicitudes bloqueadas devuelven el HTTP 403.

Si se agota el tiempo de espera del AWS WAF mientras FAIL_CLOSE está configurado, la puerta de enlace devuelve el mismo error que una solicitud bloqueada. Si el AWS WAF devuelve un error 5xx, los destinos MCP reciben un JSON-RPC error con el código -32603 y el mensaje. "Internal error - Server error"

Supervisión AWS Actividad de WAF

Puedes supervisar la actividad de AWS WAF en tu puerta de enlace mediante las métricas de Amazon CloudWatch .

Las siguientes métricas están disponibles en el espacio de AWS/Bedrock-AgentCore nombres:

Métrica Description (Descripción)

WafBlocks

El recuento de solicitudes bloqueadas por AWS WAF, incluidas las respuestas de bloqueo predeterminadas y personalizadas.

WafFailOpens

El recuento de solicitudes en las que no se podía acceder al AWS WAF y el modo de error de la puerta de enlace esFAIL_OPEN, por lo que la solicitud se reenvió al destino sin que el WAF la evaluara. AWS Los valores sostenidos distintos de cero indican que la puerta de enlace está dejando pasar el tráfico sin la inspección del WAF. AWS

WafFailCloses

El recuento de solicitudes en las que no se AWS podía acceder al WAF y el modo de error de la puerta de enlace esFAIL_CLOSE, por lo que la solicitud se rechazó. Los valores sostenidos distintos de cero indican que la puerta de enlace está reduciendo el tráfico debido a la imposibilidad de acceder al WAF. AWS

Para obtener información detallada a nivel de regla sobre las solicitudes bloqueadas, utilice el registro de WAF. AWS Puedes correlacionar el ID de solicitud de los registros de tu pasarela con los registros de WAF. AWS

Cuotas y limitaciones

Se aplican las siguientes cuotas y limitaciones a la integración de AWS WAF con su puerta de enlace:

  • Máximo de 100 asociaciones de ACL web por cuenta.

  • AWS La asociación de WAF se realiza únicamente a nivel de puerta de enlace, no por destino. Para aplicar diferentes reglas a diferentes destinos, utilice reglas de WAF basadas en rutas AWS de URI.

  • AWS La integración de WAF está disponible en AWS las regiones en las que están disponibles tanto AWS WAF como Gateway. AgentCore

Prácticas recomendadas

Recomendamos las siguientes prácticas al usar AWS WAF con su puerta de enlace:

  • Utilice los grupos de reglas AWS administradas para obtener protecciones comunes contra las amenazas conocidas.

  • Implemente reglas basadas en la velocidad para protegerse contra los ataques volumétricos.

  • Use IP-based reglas para permitir o denegar fuentes conocidas.

  • Pon a prueba las reglas AWS del WAF en COUNT modo antes de cambiarte BLOCK para comprender el impacto en tu tráfico.

  • Supervise WafBlocks las WafFailOpens WafFailCloses métricas y las métricas para ajustar sus reglas e identificar los problemas.

  • Usa el FAIL_CLOSE modo predeterminado para las cargas de trabajo sensibles a la seguridad. Úselo FAIL_OPEN solo cuando la disponibilidad sea crítica y tenga implementados otros controles de seguridad.