Comprendre F5 · ASM

F5 ASM : paramètres : type, longueur et portée

Relier une valeur HTTP à son entité ASM et choisir une exception qui ne s’étend pas inutilement à toute l’application.

Thomas SAUTIER · Publié le · Révisions de certification

Références et objectifs de certification (1)
  • Certification : F5 303 · Référence consultée le · Objectifs abordés : F5 303 1.07, F5 303 2.03.

Ce guide concerne BIG-IP sur TMOS. Vérifiez les noms et les options dans la documentation de votre version.

Comprendre en imageMême nom de paramètre, deux contrats applicatifs
Même nom de paramètre, deux contrats applicatifs Exemple : id doit être entier sur /users et peut valoir ORD-42 sur /orders. Deux définitions liées aux URL évitent d’assouplir globalement les contrôles. Le parsing et le profil de contenu déterminent les valeurs extraites ; les contraintes puis les signatures applicables sont évaluées dans leur contexte. Le blocage reste soumis au mode, aux flags et à l’enforcement. La présence d’une définition ne prouve pas que la bonne entité a été sélectionnée. /users /orders Requête + contexte URL + méthode + Content-TypeValeur décodée du paramètre id URL /users id = 42 : entier attenduid = ORD-42 : type non conformePortée : cette URLAutres limites restent actives URL /orders id = ORD-42 : format attenduRègle texte adaptée au contratPortée : cette URLContrôles de signatures maintenus Contrôles effectifs Entité réellement sélectionnéeType, longueur, caractèresSignatures et exceptions locales Une relaxation globale affecte plusieurs routes Ne pas rendre id globalement permissif pour corriger uniquement /orders. Comparer les deux parcours aprèschangement. Un échec de parsing se traite dans son contexte ; augmenter une longueur ne répare pas unJSON mal formé. Valeur non conforme : violation, puis décision WAF selon les réglages. Valeur conforme :les autres contrôles continuent.

Exemple : id doit être entier sur /users et peut valoir ORD-42 sur /orders. Deux définitions liées aux URL évitent d’assouplir globalement les contrôles. Le parsing et le profil de contenu déterminent les valeurs extraites ; les contraintes puis les signatures applicables sont évaluées dans leur contexte. Le blocage reste soumis au mode, aux flags et à l’enforcement. La présence d’une définition ne prouve pas que la bonne entité a été sélectionnée.

Télécharger le schéma en SVG · version claire

Décrire ce que l’application attend

Un paramètre peut être global, lié à une URL ou à un flow. Son type et ses limites décrivent les valeurs acceptables : entier, texte, contenu structuré, upload ou valeur dynamique selon les options. La portée doit correspondre à l’usage réel.

Un nom identique ne signifie pas une fonction identique. id peut représenter un nombre sur une route et un identifiant textuel sur une autre. Un paramètre global doit convenir à tous les endroits où il s’applique.

Sources : F5 TechDocs, Adding entities ; F5 TechDocs, JSON content profiles.

Analyser avant d’assouplir

Lisez la valeur décodée et la violation : longueur, caractère, type ou signature. Vérifiez le Content-Type et le profil qui extrait les données. Un problème de parsing ne se corrige pas toujours en augmentant une limite.

Pour un champ sensible, contrôlez aussi le masquage dans les logs. Une exception doit conserver les autres protections utiles et s’accompagner d’exemples de valeurs autorisées et refusées.

Sources : F5 TechDocs, Adding entities ; F5 TechDocs, JSON content profiles.

Repères pour lire une configuration

Ces repères permettent de relier le besoin à la configuration et aux observations. Comparer les objets réellement attachés au service avant de modifier un réglage.

F5 ASM : paramètres : type, longueur et portée : points de contrôle
ÉlémentÀ comprendreÀ vérifier
PortéeGlobal / URL / flowMême sémantique partout
TypeContrat de valeurNombre, texte, JSON
LimitesContraintes métierLongueur et caractères

Sources : F5 TechDocs, Adding entities ; F5 TechDocs, JSON content profiles.

Une situation à expliquer

Le champ id accepte ORD-42 sur /orders mais seulement des entiers sur /users. Une relaxation globale crée une incohérence. Définissez la portée appropriée et rejouez les deux parcours pour vérifier que chacun respecte son contrat.

Sources : F5 TechDocs, Adding entities ; F5 TechDocs, JSON content profiles.

Pour poursuivre les révisions

Expliquez la décision du schéma, puis recherchez dans la référence les objets qui la produisent. Pour ASM, justifiez aussi ce qui changerait si un prérequis échouait : une réponse DNS, une décision WAF et une autorisation d’accès ne se vérifient pas au même endroit.

Revenir au parcours F5 ASM pour lire les guides voisins et leurs exemples.

Sources : F5 TechDocs, Adding entities ; F5 TechDocs, JSON content profiles.

Sources et portée

Les dates de consultation et les versions applicables sont précisées pour chaque référence ci-dessous. Les exemples utilisent des noms et adresses de documentation à remplacer. Les commandes de lecture affichent l’existant ; les captures et requêtes de diagnostic sont à limiter au périmètre autorisé.

Retrouver le parcours de lecture F5 ASM

Continuer la série F5

Explorer tous les guides du parcours F5 ASM

Découvrir l’expertise F5 de Samhan

Échange

Besoin d’éclaircir votre architecture F5 ?

Échangeons sur vos flux, vos contraintes de disponibilité et vos services applicatifs.