Associa un ACL AWS WAF web a un pool di utenti - Amazon Cognito

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

Associa un ACL AWS WAF web a un pool di utenti

AWS WAF è un firewall per applicazioni Web. Con una AWS WAF lista di controllo degli accessi Web (Web ACL), puoi proteggere il tuo pool di utenti da richieste indesiderate all'interfaccia utente ospitata classica, all'accesso gestito e agli endpoint del servizio API Amazon Cognito. Una ACL Web offre un controllo granulare su tutte le richieste Web HTTPS a cui risponde il pool di utenti. Per ulteriori informazioni sul AWS WAF web ACLs, consulta Gestione e utilizzo di una lista di controllo degli accessi Web (Web ACL) nella Guida per gli sviluppatori.AWS WAF

Quando hai un ACL AWS WAF Web associato a un pool di utenti, Amazon Cognito inoltra le intestazioni e i contenuti selezionati non riservati delle richieste degli utenti a. AWS WAF AWS WAF ispeziona il contenuto della richiesta, la confronta con le regole che hai specificato nell'ACL web e restituisce una risposta ad Amazon Cognito.

Cose da sapere sul AWS WAF Web ACLs e Amazon Cognito

  • AWS WAF non è disponibile Regioni AWS ovunque sia possibile creare pool di utenti. Al momento non è possibile applicare ACLs il web ai pool di utenti nelle seguenti regioni:

    • Messico (centrale)

    • Asia Pacifico (Tailandia)

  • Non è possibile configurare le regole ACL Web in modo che corrispondano alle informazioni di identificazione personale (PII) nelle richieste del pool di utenti, ad esempio nomi utente, password, numeri di telefono o indirizzi e-mail. Questi dati non saranno disponibili per. AWS WAF Configura invece le regole ACL Web in modo che corrispondano ai dati della sessione nelle intestazioni, nel percorso e nel corpo, come gli indirizzi IP, gli agenti del browser e le operazioni API richieste.

  • Le condizioni della regola nell'ACL web devono corrispondere alla prima richiesta degli utenti all'accesso gestito. La loro prima richiesta è in genere rivolta a. Endpoint Authorize L'endpoint di autorizzazione reindirizza sempre le richieste; non configurate la corrispondenza dei percorsi URL nelle regole ACL Web.

  • Le richieste bloccate da AWS WAF non vengono conteggiate ai fini della quota di richiesta per nessun tipo di richiesta. Il AWS WAF gestore viene chiamato prima dei gestori di limitazione a livello di API.

  • Quando si crea una ACL Web, passa del tempo prima che l'ACL Web si propaghi completamente e sia disponibile per Amazon Cognito. Il tempo di propagazione può variare da pochi secondi a diversi minuti. AWS WAF restituisce a WAFUnavailableEntityExceptionquando si tenta di associare un ACL Web prima che si sia completamente propagato.

  • È possibile associare un ACL Web a ciascun pool di utenti.

  • La richiesta potrebbe comportare un payload superiore ai limiti di quanto AWS WAF può controllare. Consulta Gestione dei componenti di richieste sovradimensionate nella AWS WAF Developer Guide per scoprire come configurare come AWS WAF gestire le richieste sovradimensionate da Amazon Cognito.

  • Non puoi associare un ACL Web che utilizza la prevenzione dell'acquisizione di account AWS WAF Fraud Control (ATP) a un pool di utenti Amazon Cognito. La funzionalità ATP fa parte del gruppo di regole gestite. AWS-AWSManagedRulesATPRuleSet Prima di associare un ACL Web a un pool di utenti, assicurati che non utilizzi questo gruppo di regole gestito.

  • Quando hai un ACL AWS WAF web associato a un pool di utenti e una regola nell'ACL web presenta un CAPTCHA, ciò può causare un errore irreversibile nella registrazione TOTP con accesso gestito. Per creare una regola che abbia un'azione CAPTCHA e non influisca sul TOTP dell'accesso gestito, consulta. Configurazione dell'ACL AWS WAF Web per l'accesso gestito TOTP MFA

AWS WAF esamina le richieste ai seguenti endpoint.

Accesso gestito e interfaccia utente classica ospitata

Richieste a tutti gli endpoint in Endpoint del pool di utenti e riferimento per l'accesso gestito.

Operazioni API pubbliche

Richieste dalla tua app all'API Amazon Cognito che non utilizzano AWS credenziali per l'autorizzazione. Ciò include operazioni API come InitiateAuth, e RespondToAuthChallenge. GetUser Le operazioni API incluse nell'ambito di AWS WAF non richiedono l'autenticazione con AWS credenziali. Non sono autenticate o sono autorizzate con una stringa di sessione o un token di accesso. Per ulteriori informazioni, consulta Elenco delle operazioni API raggruppate per modello di autorizzazione.

È possibile configurare le regole nell'ACL Web con operazioni di regole Count (Conteggio), Allow (Consenti), Block (Blocca), oppure che presentano un CAPTCHA in risposta a una richiesta che corrisponde a una regola. Per ulteriori informazioni, consulta Regole personalizzate AWS WAF nella Guida per gli sviluppatori di AWS WAF . A seconda dell'operazione della regola, è possibile personalizzare la risposta che Amazon Cognito restituisce agli utenti.

Importante

Le opzioni per personalizzare la risposta all'errore dipendono dal modo in cui si effettua una richiesta API.

  • È possibile personalizzare il codice di errore e il corpo di risposta delle richieste di accesso gestite. Puoi solo presentare un CAPTCHA che l'utente deve risolvere nell'accesso gestito.

  • Per le richieste effettuate con l'API dei pool di utenti di Amazon Cognito, puoi personalizzare il corpo della risposta di una richiesta che riceve una risposta Blocca. È inoltre possibile specificare un codice di errore personalizzato compreso tra 400 e 499.

  • Il AWS Command Line Interface (AWS CLI) e il AWS SDKs restituiscono un ForbiddenException errore alle richieste che producono una risposta Block o CAPTCHA.

Associazione di una ACL Web al pool di utenti

Per utilizzare un ACL Web nel tuo pool di utenti, il tuo principale AWS Identity and Access Management (IAM) deve disporre dei seguenti Amazon Cognito AWS WAF e delle autorizzazioni seguenti. Per informazioni sulle AWS WAF autorizzazioni, consulta le autorizzazioni AWS WAF API nella Guida per gli sviluppatori.AWS WAF

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowWebACLUserPool", "Effect": "Allow", "Action": [ "cognito-idp:ListResourcesForWebACL", "cognito-idp:GetWebACLForResource", "cognito-idp:AssociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:123456789012:userpool/*" ] }, { "Sid": "AllowWebACLUserPoolWAFv2", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL", "wafv2:AssociateWebACL", "wafv2:DisassociateWebACL", "wafv2:GetWebACLForResource" ], "Resource": "arn:aws:wafv2:*:123456789012:*/webacl/*/*" }, { "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:DisassociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:123456789012:userpool/*" ] } ] }

Sebbene sia necessario concedere le autorizzazioni IAM, le azioni elencate riguardano solo le autorizzazioni e non corrispondono a nessuna operazione API.

Da attivare AWS WAF per il tuo pool di utenti e associare un ACL web
  1. Accedi alla console Amazon Cognito.

  2. Nel pannello di navigazione, scegli User Pools (Bacini d'utenza) e seleziona i bacini d'utenza che intendi modificare.

  3. Scegli la AWS WAFscheda nella sezione Sicurezza.

  4. Scegli Modifica.

  5. Seleziona Usa AWS WAF con il tuo pool di utenti.

    Schermata della AWS WAF finestra di dialogo con Use AWS WAF with your user pool selezionato.
  6. Scegliete un ACL AWS WAF Web già creato oppure scegliete Crea ACL Web in AWS WAF per crearne uno in una nuova AWS WAF sessione in. AWS Management Console

  7. Scegli Save changes (Salva modifiche).

Per associare a livello di codice un ACL Web al tuo pool di utenti in AWS Command Line Interface o in un SDK, utilizza ACL dell'API. AssociateWeb AWS WAF Amazon Cognito non dispone di un'operazione API distinta che associ una lista ACL Web.

Test e registrazione web AWS WAF ACLs

Quando imposti un'azione della regola su Count nell'ACL web, AWS WAF aggiunge la richiesta a un conteggio di richieste che corrispondono alla regola. Per testare una ACL Web con il pool di utenti, impostare le operazioni delle regole su Count (Conteggio) e considerare il volume di richieste che corrispondono a ciascuna regola. Ad esempio, se una regola che desideri impostare sull'operazione Block (Blocca) corrisponde a un gran numero di richieste che si ritiene sia un normale traffico utente, potrebbe essere necessario riconfigurare la regola. Per ulteriori informazioni, consulta Testare e ottimizzare AWS WAF le protezioni nella Guida per gli AWS WAF sviluppatori.

Puoi anche configurare AWS WAF per registrare le intestazioni delle richieste in un gruppo di log di Amazon CloudWatch Logs, un bucket Amazon Simple Storage Service (Amazon S3) o un Amazon Data Firehose. Puoi identificare le richieste Amazon Cognito effettuate con l'API dei pool di utenti tramite x-amzn-cognito-client-id e x-amzn-cognito-operation-name. Le richieste di accesso gestite includono solo l'intestazione. x-amzn-cognito-client-id Per ulteriori informazioni, consulta Registrazione del traffico ACL Web nella Guida per gli sviluppatori di AWS WAF .

AWS WAF ACLs i web sono disponibili in tutti i piani di funzionalità del pool di utenti. Le funzionalità di sicurezza AWS WAF completano la protezione dalle minacce di Amazon Cognito. È possibile attivare entrambe le caratteristiche in un pool di utenti. AWS WAF fattura separatamente per l'ispezione delle richieste del pool di utenti. Per ulteriori informazioni, consultare AWS WAF Prezzi.

I dati della AWS WAF richiesta di registrazione sono soggetti a una fatturazione aggiuntiva da parte del servizio a cui vengono indirizzati i log. Per ulteriori informazioni, consulta Prezzi per la registrazione delle informazioni sul traffico ACL web nella Guida per gli sviluppatori di AWS WAF .