Je souhaite configurer une réponse personnalisée pour les requêtes bloquées par une règle spécifique appartenant à un groupe de règles AWS WAF.
Résolution
Dans l'action de règle Nombre, définissez la règle gérée AWS WAF pour laquelle vous souhaitez configurer une réponse personnalisée. Puis, créez une règle personnalisée en dessous du groupe de règles géré pour générer la réponse personnalisée. Si la requête correspond à l'étiquette générée par la règle gérée, la réponse est envoyée.
L'exemple suivant définit une réponse personnalisée pour la règle gérée d’AWS WAF CrossSiteScripting_QueryArguments dans le groupe de règles géré du jeu de règles principal (CRS).
Créer un message de réponse personnalisé utilisé par les actions de règles
Procédez comme suit :
- Ouvrez la console AWS WAF dans votre région AWS.
- Dans le volet de navigation, sélectionnez Listes ACL Web, puis sélectionnez votre liste de contrôle d'accès Web (liste ACL Web).
- Sélectionnez Corps de réponse personnalisés, puis 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.
- Dans Corps de la réponse, saisissez votre message de réponse, puis 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 votre région.
- Dans le volet de navigation, sélectionnez Listes ACL Web, puis sélectionnez votre liste ACL Web.
- Cliquez sur l'onglet Règles, puis sur Ajouter des règles.
- Sélectionnez Ajouter mes propres règles et groupes.
- Pour Type de règle, sélectionnez Générateur de règles.
- Pour Nom, saisissez le nom de votre règle.
- Pour Type, sélectionnez Règle régulière.
- Choisissez la liste déroulante S’il s’agit d’une requête, puis sélectionnez correspond à l'instruction.
- Choisissez la liste déroulante Inspecter, puis sélectionnez Inclut une étiquette.
- Pour Portée de correspondance, sélectionnez Étiquette.
- Pour Clé de correspondance, saisissez l’étiquette de la règle. Par exemple, awswaf:managed:aws:core-rule-set:CrossSiteScripting_QueryArguments.
- Pour Action, sélectionnez Bloquer pour les règles personnalisées.
- Développez Réponse personnalisée, puis sélectionnez Activer.
- Pour Code de réponse, saisissez votre code de réponse, par exemple 307.
- (Facultatif) Pour En-têtes de réponse, sélectionnez 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.
- Dans Choisissez la manière dont vous souhaitez spécifier le corps de la réponse (facultatif), choisissez la liste déroulante.
- Choisissez le corps de réponse personnalisé, puis sélectionnez Ajouter 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 puis-je créer des règles JSON AWS WAF personnalisées complexes ?
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