Je souhaite configurer AWS WAF pour envoyer une réponse personnalisée lorsqu'une règle spécifique bloque les requêtes Web.
Résolution
Par défaut, AWS WAF renvoie une erreur HTTP 403 Forbidden lorsqu'il bloque une requête. Vous pouvez configurer un message de réponse personnalisé pour envoyer des codes de statut autres que des codes par défaut, des messages d'erreur personnalisés, des pages d'erreur personnalisées ou rediriger les clients vers d'autres URL.
Pour les règles personnalisées, vous pouvez configurer des réponses personnalisées directement sur la règle.
Pour les groupes de règles gérées AWS, définissez d'abord la règle spécifique au sein du groupe de règles géré sur Count. Créez ensuite un message de réponse personnalisé et une règle personnalisée pour envoyer le message personnalisé.
Remarque : Vous devez placer la nouvelle règle personnalisée en dessous du groupe de règles gérées, car AWS WAF évalue les règles par ordre de priorité.
Créer une réponse personnalisée
Procédez comme suit :
- Ouvrez la console AWS WAF.
- Dans le volet de navigation, sous AWS WAF, sélectionnez Packs de protection (ACL Web).
- Choisissez votre pack de protection.
- Choisissez Gérer les détails.
- Dans Comportement du pack de protection (ACL Web), choisissez Gérer.
- Choisissez Créer un corps de réponse personnalisé.
Pour Nom de l'objet du corps de réponse, saisissez un nom.
Pour Type de contenu, sélectionnez Texte brut.
Remarque : Le corps de la réponse peut être JSON, HTML ou texte brut.
Pour Corps de la réponse, saisissez votre message de réponse.
- Sélectionnez Enregistrer.
Remarque : Amazon CloudFront et Amazon API Gateway prennent également en charge les réponses personnalisées. Cependant, les réponses personnalisées d'AWS WAF pour les actions de blocage ont la priorité sur toutes les spécifications de réponse définies dans votre ressource protégée.
Créer une règle personnalisée pour envoyer la réponse personnalisée
Procédez comme suit :
- Ouvrez la console AWS WAF.
- Dans le volet de navigation, choisissez Packs de protection (ACL Web).
- Choisissez votre pack de protection.
- Choisissez Gérer les règles.
- Choisissez Ajouter des règles.
- Choisissez Règle personnalisée, puis cliquez sur Suivant.
- Pour Type de règle, choisissez Règle personnalisée, puis cliquez sur Suivant.
- Configurez votre règle avec les valeurs suivantes :
Pour Action, sélectionnez Bloquer.
Pour Nom, saisissez le nom de votre règle.
Pour S'il s'agit d'une demande, sélectionnez Correspond à l'instruction.
Pour Inspecter, choisissez Inclut une étiquette.
Pour Portée de correspondance, sélectionnez Étiquette.
Pour Clé de correspondance, saisissez l'étiquette de la règle. Par exemple, pour configurer des réponses personnalisées pour les requêtes qui correspondent à la règle CrossSiteScripting_QueryArguments du groupe de règles géré d'ensemble de règles de base (CRS), entrez awswaf:managed:aws:core-rule-set:CrossSiteScripting_QueryArguments.
Pour Réponse personnalisée, sélectionnez Activer.
Pour Code de réponse, entrez votre code de réponse. (Facultatif) Pour En-têtes de réponse, choisissez Ajouter un nouvel en-tête personnalisé.
Pour Clé, saisissez un nom d'en-tête.
Pour Valeur, saisissez une valeur d'en-tête.
Remarque : Vous pouvez spécifier n'importe quel nom d'en-tête, à l'exception de content-type.
- Pour Choisir la manière dont vous souhaitez spécifier le corps de la réponse - facultatif, choisissez le corps de réponse personnalisé créé dans la section Créer un message de réponse personnalisé.
- Sélectionnez Créer une règle.
Remarque : Pour obtenir la liste des codes de statut HTTP pris en charge pour les réponses personnalisées, consultez la section Codes de statut pris en charge pour les réponses personnalisées.
Informations connexes
Comment créer des règles JSON personnalisées complexes dans AWS WAF ?
Liste de groupes de règles Règles gérées d'AWS
Pourquoi ma règle personnalisée AWS WAF ne fonctionne-t-elle pas ?
Personnaliser les requêtes et les réponses avec AWS WAF