

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Associer une ACL AWS WAF Web à un groupe d'utilisateurs
<a name="user-pool-waf"></a>

AWS WAF est un pare-feu d'applications Web. Grâce à une liste de contrôle d'accès AWS WAF Web (ACL Web), vous pouvez protéger votre groupe d'utilisateurs contre les demandes indésirables adressées à votre interface utilisateur hébergée classique, à votre connexion gérée et aux points de terminaison du service d'API Amazon Cognito. Une ACL web vous permet de contrôler avec précision toutes les requêtes web HTTPS auxquelles votre groupe d’utilisateurs répond. Pour plus d'informations sur le AWS WAF Web ACLs, consultez [la section Gestion et utilisation d'une liste de contrôle d'accès Web (ACL Web)](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl.html) dans le *manuel du AWS WAF développeur*.

Lorsqu'une ACL AWS WAF Web est associée à un groupe d'utilisateurs, Amazon Cognito transmet certains en-têtes non confidentiels et le contenu des demandes de vos utilisateurs à. AWS WAF AWS WAF inspecte le contenu de la demande, le compare aux règles que vous avez spécifiées dans votre ACL Web et renvoie une réponse à Amazon Cognito.

## Ce qu'il faut savoir sur le AWS WAF Web ACLs et Amazon Cognito
<a name="user-pool-waf-things-to-know"></a>
+ Vous ne pouvez pas configurer les règles ACL Web pour qu'elles correspondent aux informations personnelles identifiables (PII) contenues dans les demandes du groupe d'utilisateurs, par exemple les noms d'utilisateur, les mots de passe, les numéros de téléphone ou les adresses e-mail. Ces données ne seront pas disponibles pour AWS WAF. Configurez plutôt vos règles ACL Web pour qu'elles correspondent aux données de session contenues dans les en-têtes, le chemin et le corps, telles que les adresses IP, les agents de navigateur et les opérations d'API demandées.
+ Les conditions des règles ACL Web peuvent uniquement renvoyer des réponses de bloc personnalisées à la **première** demande des utilisateurs à une page de connexion gérée interactive. Lorsque les connexions suivantes répondent à une condition de réponse de blocage personnalisée, elles renvoient votre code de statut personnalisé, votre en-tête et vos réponses de redirection, mais un message de blocage par défaut.
+ Les demandes bloquées par AWS WAF ne sont pas prises en compte dans le quota de taux de demandes, quel que soit le type de demande. Le AWS WAF gestionnaire est appelé avant les gestionnaires de régulation au niveau de l'API.
+ Lorsque vous créez une liste ACL web, peu de temps s’écoule avant qu’elle ne soit entièrement propagée et ne soit disponible pour Amazon Cognito. Le temps de propagation peut aller de quelques secondes à plusieurs minutes. AWS WAF renvoie un [https://docs.aws.amazon.com/waf/latest/APIReference/API_AssociateWebACL.html#API_AssociateWebACL_Errors](https://docs.aws.amazon.com/waf/latest/APIReference/API_AssociateWebACL.html#API_AssociateWebACL_Errors)lorsque vous tentez d'associer une ACL Web avant qu'elle ne soit complètement propagée.
+ Vous pouvez associer une ACL Web à chaque groupe d'utilisateurs.
+ Votre demande peut entraîner une charge utile supérieure aux limites de ce que AWS WAF peut inspecter. Consultez la section [Gestion des composants de demandes surdimensionnés](https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-oversize-handling.html) dans le *guide du AWS WAF développeur* pour savoir comment configurer le mode de gestion des demandes AWS WAF surdimensionnées provenant d'Amazon Cognito.
+ Vous ne pouvez pas associer une ACL Web qui utilise AWS WAF [la prévention de la prise de contrôle des fraudes (ATP)](https://docs.aws.amazon.com/waf/latest/developerguide/waf-atp.html) à un groupe d'utilisateurs Amazon Cognito. La fonctionnalité ATP se trouve dans le groupe de règles `AWS-AWSManagedRulesATPRuleSet` gérées. Avant d'associer une ACL Web à un groupe d'utilisateurs, assurez-vous qu'elle n'utilise pas ce groupe de règles géré.
+ Lorsqu'une ACL AWS WAF Web est associée à un groupe d'utilisateurs et qu'une règle de votre ACL Web présente un CAPTCHA, cela peut provoquer une erreur irrécupérable lors de l'enregistrement TOTP de connexion gérée. Pour créer une règle comportant une action CAPTCHA et n'affectant pas la connexion gérée TOTP, consultez. [Configuration de votre ACL AWS WAF Web pour la connexion gérée (TOTP MFA)](user-pool-settings-mfa-totp.md#totp-waf)

AWS WAF inspecte les demandes adressées aux points de terminaison suivants.

**Connexion gérée et interface utilisateur hébergée classique**  
Demandes adressées à tous les points de terminaison de [Points de terminaison du groupe d'utilisateurs et référence de connexion gérée](cognito-userpools-server-contract-reference.md).

**Opérations d’API publiques**  
Demandes de votre application adressées à l'API Amazon Cognito qui n'utilisent pas AWS d'informations d'identification pour les autoriser. Cela inclut les opérations d'API telles que [InitiateAuth[RespondToAuthChallenge](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RespondToAuthChallenge.html)](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_InitiateAuth.html), et [GetUser](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_GetUser.html). Les opérations d'API concernées ne nécessitent AWS WAF pas d'authentification avec des informations d' AWS identification. Elles ne sont pas authentifiées ni autorisées par une chaîne de session ou un jeton d’accès. Pour de plus amples informations, veuillez consulter [Liste des opérations d'API regroupées par modèle d'autorisation](authentication-flows-public-server-side.md#user-pool-apis-auth-unauth).

Vous pouvez configurer les règles dans votre ACL web avec des actions de règles qui effectuent les opérations **Count**, **Allow** ou **Block**, ou qui présentent un **CAPTCHA** en réponse à une demande qui correspond à une règle. Pour plus d’informations, veuillez consulter la rubrique [Règles AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/waf-rules.html) dans le *Manuel du développeur AWS WAF *. En fonction de l’action de la règle, vous pouvez personnaliser la réponse qu’Amazon Cognito renvoie à vos utilisateurs.

**Important**  
Les options qui s’offrent à vous pour personnaliser la réponse aux erreurs dépendent de la manière dont vous envoyez une demande d’API.  
Vous pouvez personnaliser le code d'erreur et le corps de réponse des demandes de connexion gérées. Vous pouvez uniquement présenter un CAPTCHA à résoudre par votre utilisateur dans le cadre d'une connexion gérée.
Pour les demandes que vous faites avec l’[API de groupes d’utilisateurs](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/Welcome.html) Amazon Cognito, vous pouvez personnaliser le corps de la réponse d’une demande qui reçoit une réponse **Bloquer**. Vous pouvez également spécifier un code d’erreur personnalisé compris entre 400 et 499.
Le AWS Command Line Interface (AWS CLI) et le AWS SDKs renvoient une `ForbiddenException` erreur aux demandes qui produisent une réponse **Block** ou **CAPTCHA**.

## Associer une ACL web à votre groupe d’utilisateurs
<a name="user-pool-waf-setting-up"></a>

Pour utiliser une ACL Web dans votre groupe d'utilisateurs, votre principal Gestion des identités et des accès AWS (IAM) doit disposer des autorisations Amazon Cognito AWS WAF et des autorisations suivantes. Pour plus d'informations sur AWS WAF les autorisations, consultez la section [Autorisations d'AWS WAF API](https://docs.aws.amazon.com/waf/latest/developerguide/waf-api-permissions-ref.html) dans le *Guide du AWS WAF développeur*.

------
#### [ 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/*"
			]
		}
	]
}
```

------

[Bien que vous deviez accorder des autorisations IAM, les actions répertoriées ne concernent que des autorisations et ne correspondent à aucune opération d'API.](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/Welcome.html)

**Pour l'activer AWS WAF pour votre groupe d'utilisateurs et associer une ACL Web**

1. Connectez-vous à la [console Amazon Cognito](https://console.aws.amazon.com/cognito/home).

1. Dans le volet de navigation, choisissez **Groupes d’utilisateurs**, puis choisissez le groupe d’utilisateurs que vous souhaitez modifier.

1. Choisissez l'**AWS WAF**onglet dans la section **Sécurité**.

1. Choisissez **Modifier**.

1. Sélectionnez **Utiliser AWS WAF avec votre groupe d'utilisateurs**.  
![\[Capture d'écran de la boîte de AWS WAF dialogue avec l'option Utiliser AWS WAF avec votre groupe d'utilisateurs sélectionnée.\]](http://docs.aws.amazon.com/fr_fr/cognito/latest/developerguide/images/cup-WAF-console.png)

1. Choisissez une **ACL AWS WAF Web** que vous avez déjà créée, ou choisissez **Create Web ACL in AWS WAF** pour en créer une dans une nouvelle AWS WAF session dans le AWS Management Console.

1. Sélectionnez **Enregistrer les modifications**.

Pour associer par programmation une ACL Web à votre groupe d'utilisateurs dans le SDK AWS Command Line Interface ou dans un SDK, utilisez l'[AssociateWebACL](https://docs.aws.amazon.com/waf/latest/APIReference/API_AssociateWebACL.html) depuis l'API. AWS WAF Amazon Cognito ne dispose pas d’une opération d’API distincte qui associe une ACL Web.

## Tester et enregistrer sur AWS WAF le Web ACLs
<a name="user-pool-waf-evaluating-and-logging"></a>

Lorsque vous définissez une action de règle **sur Count** dans votre ACL Web AWS WAF , vous ajoutez la demande au nombre de demandes correspondant à la règle. Pour tester une ACL web avec votre groupe d’utilisateurs, définissez les actions des règles sur **Count** et examinez le volume de demandes correspondant à chaque règle. Par exemple, si une règle que vous souhaitez définir comme action **Block** correspond à un grand nombre de demandes que vous considérez comme relevant du trafic utilisateur normal. Vous devrez peut-être reconfigurer votre règle. Pour plus d'informations, consultez la section [Tester et régler vos AWS WAF protections](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-testing.html) dans le *Guide du AWS WAF développeur.*

Vous pouvez également configurer AWS WAF pour consigner les en-têtes des demandes dans un groupe de CloudWatch journaux Amazon Logs, un bucket Amazon Simple Storage Service (Amazon S3) ou un Amazon Data Firehose. Vous pouvez identifier les demandes Amazon Cognito que vous faites à l’aide de l’API des groupes d’utilisateurs grâce à `x-amzn-cognito-client-id` et `x-amzn-cognito-operation-name`. Les demandes de connexion gérées incluent uniquement l'`x-amzn-cognito-client-id`en-tête. Pour plus d’informations, consultez [Journalisation du trafic ACL web](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html) dans le *Guide du développeur AWS WAF *.

AWS WAF Web ACLs sont disponibles dans tous les [plans de fonctionnalités](cognito-sign-in-feature-plans.md) du pool d'utilisateurs. Les fonctionnalités de sécurité AWS WAF complètent la protection contre les menaces d'Amazon Cognito. Vous pouvez activer les deux fonctions dans un groupe d’utilisateurs. AWS WAF facture séparément pour l’inspection des demandes du groupe d’utilisateurs. Pour plus d’informations, consultez [Tarification d’AWS WAF](https://aws.amazon.com/waf/pricing).

Les données de AWS WAF demande de journalisation sont soumises à une facturation supplémentaire par le service sur lequel vous ciblez vos logs. Pour plus d’informations, veuillez consulter la rubrique [Tarification pour la journalisation des informations sur le trafic ACL web](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html#logging-pricing) dans le *Manuel du développeur AWS WAF *.