En bref. Une règle AWS WAF exécutée plus tard peut reconnaître une étiquette uniquement si une règle précédente reconnaît la requête et l’ajoute, et si l’évaluation de l’ACL web se poursuit.
Définition : Une étiquette (label) AWS WAF est une métadonnée ajoutée à une requête web par une règle qui la reconnaît. Une règle ultérieure peut reconnaître cette étiquette pendant la même évaluation du pack de protection (protection pack), ou ACL web (web ACL), si la règle d’étiquetage s’est déjà exécutée et que l’évaluation atteint cette règle ultérieure.
Points clés
- Selon AWS, une étiquette reste disponible sur la requête jusqu’à la fin de l’évaluation du pack de protection, ou ACL web. Les règles suivantes y accèdent par une instruction de correspondance d’étiquettes (label match statement), selon la documentation sur l’étiquetage des requêtes web.
- Une instruction de correspondance d’étiquettes inspecte les étiquettes déjà ajoutées par d’autres règles pendant la même évaluation de l’ACL web. Elle voit celles des règles évaluées auparavant, selon la documentation de l’instruction de correspondance d’étiquettes.
- AWS WAF évalue les règles par ordre croissant de valeur numérique de priorité. Chaque règle doit avoir une priorité unique au sein de son ACL web ou de son groupe de règles, selon la documentation sur le réglage de la priorité des règles.
Countpoursuit le traitement des règles suivantes, tandis queAllowetBlockl’arrêtent, selon la documentation des actions des règles et des groupes de règles.- L’API utilise
Scopepour choisir une correspondance sur une étiquette ou un espace de noms, etKeypour la chaîne à rechercher. AWS définitLABELetNAMESPACEcomme valeurs valides de portée dans la référence de LabelMatchStatement.
Comment AWS WAF rend-il une étiquette disponible ?
La règle d’étiquetage doit reconnaître la requête et précéder celle qui lit l’étiquette. La documentation AWS sur la correspondance d’étiquettes précise que les étiquettes inspectables sont celles déjà ajoutées à la requête par d’autres règles pendant la même évaluation du pack de protection, ou ACL web. L’instruction ne voit que les étiquettes des règles évaluées auparavant.
L’étiquette reste sur la requête jusqu’à la fin de l’évaluation de cette ACL web. La documentation AWS sur l’étiquetage des requêtes web décrit l’étiquette comme une métadonnée ajoutée lorsqu’une règle reconnaît une requête, disponible jusqu’à la fin de l’évaluation. L’instruction de correspondance d’étiquettes est donc une condition évaluée ultérieurement pour la même requête.
Quel effet l’ordre des règles a-t-il sur la correspondance d’étiquettes ?
AWS détermine l’ordre d’évaluation à l’aide de priorités numériques. Sa documentation sur la priorité des règles exige des valeurs de priorité uniques au sein de l’ACL web et de chaque groupe de règles. L’évaluation suit l’ordre croissant des valeurs numériques de priorité, jusqu’à une correspondance qui y met fin ou jusqu’à épuisement des règles.
La règle d’étiquetage doit donc avoir une valeur numérique de priorité inférieure à celle de la règle de correspondance d’étiquettes. Dans l’exemple d’AWS, une nouvelle règle d’étiquetage des chemins de connexion reçoit une valeur numérique de priorité inférieure à celle des règles d’origine pour s’exécuter en premier. Une règle de correspondance d’étiquettes placée plus tôt dans la séquence ne peut pas inspecter une étiquette qu’une règle ultérieure n’a pas encore ajoutée.
Les actions déterminent également si la règle ultérieure est atteinte. La documentation AWS sur les actions des règles indique que Count poursuit le traitement des règles suivantes. Allow et Block arrêtent le traitement : la correspondance d’une règle associée à l’une de ces actions empêche l’évaluation d’une règle de correspondance d’étiquettes ultérieure.
Que peut inspecter l’instruction de correspondance d’étiquettes ?
L’instruction compare les étiquettes de la requête à une chaîne spécifiée. La référence de l’API LabelMatchStatement d’AWS précise que la clé peut représenter tout ou partie d’un nom d’étiquette pleinement qualifié, dont les composants sont séparés par des deux-points. Les étiquettes sont sensibles à la casse, et Scope sélectionne un nom d’étiquette ou un espace de noms.
{
"LabelMatchStatement": {
"Scope": "LABEL",
"Key": "NS1:NS2:name"
}
}
La référence de l’API donne l’exemple d’étiquette NS1:NS2:name, séparée par des deux-points, et les valeurs de portée LABEL et NAMESPACE. Une correspondance sur un espace de noms peut donc cibler un espace de noms plutôt qu’un nom d’étiquette complet.
Termes associés
- Quelles différences entre les niveaux d’inspection d’AWS WAF Bot Control ?
- Comment exclure un bot de supervision sous son contrôle d’AWS WAF Bot Control ?
- Comment utiliser les étiquettes AWS WAF pour observer les détections de robots sans bloquer les requêtes ?
Questions fréquentes
Une étiquette reste-t-elle disponible après l’évaluation de l’ACL web ?
Non. La documentation AWS sur les étiquettes précise que l’étiquette reste disponible jusqu’à la fin de l’évaluation du pack de protection, ou ACL web, et sa référence sur la correspondance d’étiquettes précise qu’elles ne persistent pas au-delà.
Que se passe-t-il si vous attribuez une valeur numérique de priorité plus élevée à la règle qui ajoute l’étiquette ?
Elle s’exécute plus tard, car AWS WAF procède par ordre croissant de valeur numérique de priorité. La règle de correspondance d’étiquettes ne peut inspecter cette étiquette qu’après l’exécution de la règle d’étiquetage.
Pouvez-vous utiliser une étiquette après une correspondance avec une action Allow ou Block ?
Non. AWS WAF arrête le traitement des règles suivantes après l’une ou l’autre de ces actions qui mettent fin à l’évaluation. Une correspondance avec une action Count laisse les règles suivantes dans la séquence d’évaluation.
Sources
- AWS, "Web request labeling in AWS WAF", sans date
- AWS, "Label match rule statement", sans date
- AWS, "Setting rule priority", sans date
- AWS, "How AWS WAF handles rule and rule group actions", sans date
- AWS, "LabelMatchStatement", sans date
Vérifiez comment une page se lit pour les moteurs de réponse. Ouvrir l’analyseur de score GEO