View a markdown version of this page

Proteggi il tuo gateway con AWS WAF - Fondamento Amazon AgentCore

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

Proteggi il tuo gateway con AWS WAF

Puoi utilizzare AWS WAF con Amazon Bedrock AgentCore Gateway per proteggere il tuo gateway da exploit web, traffico di bot e attacchi volumetrici. AWS WAF fornisce un livello di sicurezza in linea che valuta tutte le richieste in entrata prima che raggiungano i tuoi obiettivi.

Quando associ un elenco di controllo degli accessi web AWS WAF (ACL web) al tuo gateway, AWS WAF ispeziona ogni richiesta in entrata e applica le regole che configuri. Le richieste che corrispondono a una regola di blocco vengono respinte prima che raggiungano qualsiasi obiettivo. Si associa un ACL Web a livello di gateway, con un ACL Web per gateway.

In che modo AWS WAF funziona con il tuo gateway

Quando si associa un ACL web al gateway, si verifica il seguente flusso di richieste:

  1. Un client invia una richiesta all'endpoint del gateway.

  2. AWS WAF valuta la richiesta in base alle regole dell'ACL web associato.

  3. Se la richiesta è consentita, il gateway la indirizza alla destinazione appropriata.

  4. Se la richiesta è bloccata, il gateway restituisce un errore al client senza inoltrare la richiesta.

AWS WAF valuta ogni richiesta in entrata in linea. Quando nessun ACL web è associato al gateway, non vi è alcun sovraccarico e non viene eseguita alcuna valutazione WAF. AWS

Prerequisiti

Prima di associare un ACL web al gateway, assicurati di soddisfare i seguenti requisiti:

  • L'ACL web AWS WAF deve esistere nella stessa AWS regione del gateway.

  • È necessario utilizzare un ACL web regionale. CloudFront Gli ACL web (globali) non sono supportati.

  • Il gateway deve essere nello READY stato.

  • La tua identità IAM deve avere le seguenti autorizzazioni:

    • wafv2:AssociateWebACL

    • wafv2:DisassociateWebACL

    • wafv2:GetWebACLForResource

    • wafv2:ListResourcesForWebACL

    • bedrock-agentcore:GatewayAssociateWebACL

    • bedrock-agentcore:GatewayDisassociateWebACL

    • bedrock-agentcore:GatewayGetWebACLForResource

    • bedrock-agentcore:GatewayListResourcesForWebACL

Associazione di un ACL web al tuo gateway

È possibile associare un ACL Web al gateway utilizzando la console AWS WAF o la CLI. AWS Un gateway può avere al massimo un ACL web. Tuttavia, un ACL Web può essere associato a più gateway. Per modificare l'ACL Web associato al gateway, associa un nuovo ACL Web. La nuova associazione sostituisce quella esistente.

Per associare un ACL Web al gateway utilizzando la AWS CLI, esegui il comando seguente:

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

Sostituisci i valori ARN con l'ARN ACL web e l'ARN del gateway.

Dissociazione di un ACL web dal gateway

Per rimuovere la protezione AWS WAF dal gateway, dissocia l'ACL web. È necessario dissociare qualsiasi ACL Web dal gateway prima di poter eliminare il gateway.

Per dissociare un ACL web dal gateway utilizzando la AWS CLI, esegui il comando seguente:

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

Sostituisci il valore ARN con l'ARN del tuo gateway.

Configurazione della AWS Modalità di errore WAF

Se il AWS WAF non è raggiungibile o scade durante la valutazione della richiesta, il gateway utilizza la modalità di errore configurata per determinare se bloccare o consentire la richiesta.

FAIL_CLOSE

Il gateway blocca la richiesta. Questo è il comportamento che segue di default.

FAIL_OPEN

Il gateway consente alla richiesta di raggiungere la destinazione senza una valutazione AWS WAF.

Per configurare la modalità di errore, utilizza l'UpdateGatewayAPI con il wafConfiguration parametro:

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

La modalità di errore predefinita èFAIL_CLOSE, che fornisce un approccio incentrato sulla sicurezza. Utilizzala FAIL_OPEN solo quando la disponibilità è più importante della sicurezza per il tuo carico di lavoro.

AWS Gestione delle risposte WAF

Quando AWS WAF blocca una richiesta, la risposta all'errore dipende dal tipo di destinazione:

Obiettivi MCP

Le richieste bloccate restituiscono un JSON-RPC errore con il codice -32002 e il messaggio"Authorization error - Request forbidden".

Destinazioni HTTP e passthrough

Le richieste bloccate restituiscono HTTP 403.

Se AWS WAF scade con configureFAIL_CLOSE, il gateway restituisce lo stesso errore di una richiesta bloccata. Se AWS WAF restituisce un errore 5xx, i target MCP ricevono un JSON-RPC errore con il codice -32603 e il messaggio. "Internal error - Server error"

Monitoraggio AWS Attività WAF

Puoi monitorare l'attività AWS WAF per il tuo gateway utilizzando le metriche di Amazon CloudWatch .

Le seguenti metriche sono disponibili nel namespace: AWS/Bedrock-AgentCore

Metrica Description

WafBlocks

Il numero di richieste bloccate da AWS WAF, incluse le risposte di blocco predefinite e personalizzate.

WafFailOpens

Il numero di richieste per le quali AWS WAF era irraggiungibile e la modalità di errore del gateway sìFAIL_OPEN, quindi la richiesta è stata inoltrata alla destinazione senza la valutazione del WAF. AWS Valori permanenti diversi da zero indicano che il gateway sta facendo passare il traffico senza l'ispezione WAF. AWS

WafFailCloses

Il numero di richieste per le quali il AWS WAF non era raggiungibile e la modalità di errore del gateway sì, quindi la richiesta è FAIL_CLOSE stata rifiutata. I valori permanenti diversi da zero indicano che il gateway sta riducendo il traffico a causa dell'irraggiungibilità del WAF. AWS

Per ottenere dettagli a livello di regola sulle richieste bloccate, utilizza la registrazione WAF. AWS Puoi correlare l'ID della richiesta nei log del gateway con i log WAF. AWS

Quote e limiti

Le seguenti quote e limitazioni si applicano all'integrazione AWS WAF con il gateway:

  • Massimo 100 associazioni ACL web per account.

  • AWS L'associazione WAF è solo a livello di gateway, non per target. Per applicare regole diverse a destinazioni diverse, utilizzate le regole WAF basate sul percorso AWS URI.

  • AWS L'integrazione WAF è disponibile AWS nelle regioni in cui sono disponibili sia AWS WAF che Gateway. AgentCore

Best practice

Consigliamo le seguenti pratiche quando si utilizza AWS WAF con il gateway:

  • Utilizza i gruppi di regole AWS Managed Rules per protezioni comuni contro le minacce note.

  • Implementa regole basate sulla frequenza per proteggerti dagli attacchi volumetrici.

  • Usa IP-based le regole per consentire o negare l'inserimento di fonti note.

  • Prova le regole AWS WAF in COUNT modalità prima di passare a questa BLOCK per comprendere l'impatto sul tuo traffico.

  • Monitora WafBlocks le WafFailOpens metriche e WafFailCloses le metriche per ottimizzare le regole e identificare i problemi.

  • Usa la FAIL_CLOSE modalità predefinita per i carichi di lavoro sensibili alla sicurezza. Utilizzala FAIL_OPEN solo quando la disponibilità è fondamentale e disponi di altri controlli di sicurezza.