Conditions de correspondance des règles

Dans les ensembles de règles Azure Front Door, une règle se compose d’une ou de plusieurs conditions de correspondance et d’une action. Cet article offre une description détaillée des conditions de correspondance que vous pouvez utiliser dans les ensembles de règles Azure Front Door.

Important

Azure Front Door (classique) ne prend pas en charge la création de profils, l'intégration de nouveaux domaines ou les certificats gérés et sera retiré le 31 mars 2027. Pour éviter toute interruption de service, migrate à Azure Front Door Standard ou Premium. Pour plus d’informations, consultez retrait d'Azure Front Door (classique).

Dans les moteurs de règles Azure Front Door (classique), une règle se compose d’une ou plusieurs conditions de correspondance et d’une action. Cet article offre une description détaillée des conditions de correspondance (match) que vous pouvez utiliser dans les moteurs de règles d'Azure Front Door (classique).

Une règle part d’une condition de correspondance ou d’un ensemble de conditions de correspondance. Une règle peut contenir jusqu’à 10 conditions de correspondance. Une condition de correspondance identifie des types spécifiques de requêtes pour lesquelles des actions définies sont exécutées. Si vous utilisez plusieurs conditions de correspondance, elles sont regroupées à l’aide de la logique AND. Pour les conditions de correspondance qui prennent en charge plusieurs valeurs, la logique OR est utilisée.

Vous pouvez utiliser une condition de correspondance pour les opérations suivantes :

  • Filtrer les requêtes en fonction d’une adresse IP, d’un port, d’un pays ou d’une région.
  • Filtrer les requêtes d’après les informations d’en-tête.
  • Filtrer les requêtes provenant d’appareils mobiles ou de bureau.
  • Filtrer les requêtes par nom et extension de fichier de requête.
  • Filtrer les requêtes par nom d’hôte, protocole SSL, URL de requête, protocole, chemin d’accès, chaîne de requête, arguments de publication et d’autres valeurs.
  • Filtrer les requêtes en fonction d’une adresse IP, d’un pays ou d’une région.
  • Filtrer les requêtes d’après les informations d’en-tête.
  • Filtrer les requêtes provenant d’appareils mobiles ou de bureau.
  • Filtrer les requêtes par nom et extension de fichier de requête.
  • Filtrer les requêtes par URL de requête, protocole, chemin d’accès, chaîne de requête, arguments de publication et autres valeurs.

Type d’appareil

Utilisez la condition de correspondance type d’appareil pour identifier les requêtes provenant d’un appareil mobile ou d’un appareil de bureau.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Dans le portail Azure : Equal, Not Equal
  • Dans les modèles ARM : Equal ; utilisez la propriété negateCondition pour spécifier Not Equal (Non égal)
Valeur Mobile, Desktop

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes détectées comme provenant d’un appareil mobile.

Capture d’écran du portail montrant la condition de correspondance du type d'appareil.

Version HTTP

Utilisez la condition de correspondance version HTTP afin d’identifier les requêtes effectuées à l’aide d’une version spécifique du protocole HTTP.

Remarque

La condition de correspondance de la version HTTP est uniquement disponible sur Azure Front Door Standard/Premium.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Dans le portail Azure : Equal, Not Equal
  • Dans les modèles ARM : Equal ; utilisez la propriété negateCondition pour spécifier Not Equal (Non égal)
Valeur 2.0, 1.1, 1.0, 0.9

Exemple

Dans cet exemple, nous associons toutes les requêtes envoyées à l’aide du protocole HTTP 2.0.

Capture d’écran du portail montrant la condition de correspondance de la version HTTP.

Cookies de demande

Utilisez la condition de correspondance cookies de requête pour identifier les requêtes qui incluent un cookie spécifique.

Remarque

La condition de correspondance des cookies de demande est uniquement disponible sur Azure Front Door Standard/Premium.

Propriétés

Propriété Valeurs prises en charge
Nom du cookie Une valeur de type chaîne représentant le nom du cookie.
Opérateur Tout opérateur de la liste d’opérateurs standard.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur de l’en-tête de la demande à mettre en correspondance. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes qui ont un cookie nommé deploymentStampId avec une valeur 1.

Capture d’écran du portail montrant la condition de correspondance des cookies de requête.

Publier les arguments

Utilisez la condition de correspondance post args pour identifier les demandes sur la base des arguments fournis dans le corps d’une demande POST. Une condition de correspondance unique correspond à un argument unique du corps de la demande POST. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Remarque

La condition de correspondance post args fonctionne avec le type de contenu application/x-www-form-urlencoded.

Propriétés

Propriété Valeurs prises en charge
Publier les arguments Valeur de chaîne représentant le nom de l’argument POST.
Opérateur Tout opérateur de la liste d’opérateurs standard.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur de l’argument POST à mettre en correspondance. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes POST où un argument customerName est fourni dans le corps de la demande, et où la valeur de customerName commence par la lettre J ou K. Nous utilisons une transformation de casse pour convertir les valeurs d’entrée en majuscules afin que les valeurs commençant par J, j, K et k soient toutes mises en correspondance.

Capture d’écran du portail montrant la condition de correspondance des arguments post.

Chaîne de requête

Utilisez la condition de correspondance query string pour identifier les demandes contenant une chaîne de requête spécifique. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Remarque

La chaîne de requête entière est considérée comme une seule chaîne, sans le signe ? initial.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, lorsque vous utilisez la condition de correspondance chaîne de requête, la condition de correspondance Any correspond à chaque demande, tandis que la condition de correspondance Not Any ne correspond à aucune demande.
Chaîne de requête Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur de la chaîne de requête à mettre en correspondance. N’incluez pas le signe ? au début de la chaîne de requête. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes où la chaîne de requête contient la chaîne language=en-US. Comme nous voulons que la condition de correspondance respecte la casse (majuscule/minuscule), nous ne la transformons pas.

Capture d’écran du portail montrant la condition de correspondance de la chaîne de requête.

Adresse distante

La condition de correspondance de adresse distante identifie les requêtes en fonction de l'adresse IP ou de l'emplacement du demandeur. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

  • Utilisez la notation CIDR lorsque vous spécifiez des blocs d’adresses IP. La syntaxe d’un bloc d’adresses IP est l’adresse IP de base suivie d’une barre oblique et de la taille de préfixe. Par exemple :
    • Exemple IPv4 : 5.5.5.64/26 correspond aux requêtes provenant des adresses 5.5.5.64 à 5.5.5.127.
    • Exemple IPv6 : 1:2:3:/48 correspond aux requêtes qui proviennent des adresses 1:2:3:0:0:0:0:0 à 1:2:3: ffff:ffff:ffff:ffff:ffff.
  • Quand vous spécifiez plusieurs adresses IP et blocs d’adresses IP, un « OR » logique est appliqué.
    • Exemple IPv4 : si vous ajoutez deux adresses IP, 1.2.3.4 et 10.20.30.40, la condition est remplie pour les demandes provenant de l’adresse 1.2.3.4 ou 10.20.30.40.
    • Exemple IPv6 : si vous ajoutez deux adresses IP, 1:2:3:4:5:6:7:8 et 10:20:30:40:50:60:70:80, la condition est remplie pour les demandes provenant de l’adresse 1:2:3:4:5:6:7:8 ou 10:20:30:40:50:60:70:80.
  • L'adresse distante représente l'adresse IP d'origine du client, provenant soit de la connexion réseau, soit généralement de l'en-tête de requête X-Forwarded-For si l'utilisateur est derrière un proxy. Utilisez la condition de correspondance adresse du socket (disponible dans Standard/Premium) si vous devez faire correspondre en fonction de l’adresse IP de la requête TCP.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Dans le portail Azure : Geo Match, Geo Not Match, IP Match ou IP Not Match
  • Dans les modèles ARM : GeoMatch, IPMatch ; utilisez la propriété negateCondition pour spécifier Geo Not Match (non-correspondance de zone géographique) ou IP Not Match (non-correspondance d’adresse IP)
Valeur
  • Pour les opérateurs IP Match ou IP Not Match : spécifiez une ou plusieurs plages d’adresses IP. Si plusieurs plages d’adresses IP sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
  • Pour les opérateurs Geo Match ou Geo Not Match : spécifiez un ou plusieurs emplacements à l’aide de leur indicatif de pays.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes ne provenant pas des États-Unis.

Capture d’écran du portail montrant la condition de correspondance de l'adresse distante.

Corps de demande

La condition de correspondance request body identifie les demandes sur la base du texte apparaissant dans le corps de celles-ci. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Remarque

Si le corps d’une demande dépasse 64 Ko, seuls les 64 premiers Ko sont pris en compte pour la condition de correspondance request body.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance N’importe lequel correspond à chaque demande, et la condition de correspondance Aucun ne correspond à aucune demande, lorsqu’elles sont utilisées avec la condition de correspondance corps de la demande.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur du texte du corps de la demande à mettre en correspondance. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes dont le corps contient la chaîne ERROR. Nous transformons le corps de la requête en majuscules avant d’évaluer la correspondance, de sorte que error et d’autres variations de la casse déclenchent également cette condition de correspondance.

Capture d’écran du portail montrant la condition de correspondance du corps de la requête.

Nom de fichier de la requête

La condition de correspondance request file name identifie les demandes qui incluent le nom de fichier spécifié dans l’URL de la demande. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance Any remplit toutes les requêtes, et la condition de correspondance Not Any ne remplit aucune requête, lorsqu'elle est utilisée avec la condition de correspondance nom de fichier de la demande.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur du nom de fichier de demande à mettre en correspondance. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes où le nom de fichier de la demande est media.mp4. Nous transformons le nom de fichier en minuscules avant d’évaluer la correspondance, de sorte que MEDIA.MP4 et d’autres variations de la casse déclenchent également cette condition de correspondance.

Capture d’écran du portail montrant la condition de correspondance du nom de fichier de requête.

Extension de fichier demandée

La condition de correspondance request file extension identifie les demandes qui incluent l’extension de fichier spécifiée dans le nom de fichier dans l’URL de la demande. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Remarque

N’incluez pas de point initial. Par exemple, utilisez html au lieu de .html.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance Any correspond à chaque demande, et la condition de correspondance Not Any ne correspond à aucune demande, lorsque utilisée avec la condition de correspondance extension de fichier de la demande.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur de l’extension de fichier de la demande à mettre en correspondance. N’incluez pas de point initial. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes où l’extension de fichier de la demande est pdf ou docx. Nous transformons l’extension de fichier de la requête en minuscules avant d’évaluer la correspondance, de sorte que PDF, DocX et d’autres variations de la casse déclenchent également cette condition de correspondance.

Capture d’écran du portail montrant la condition de correspondance pour l'extension de fichier de demande.

En-tête de requête

La condition de correspondance request header identifie les demandes qui incluent un en-tête spécifique. Vous pouvez utiliser cette condition de correspondance pour vérifier si un en-tête existe ou pour vérifier si l’en-tête correspond à une valeur spécifiée. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Propriétés

Propriété Valeurs prises en charge
Nom de l’en-tête Valeur de chaîne représentant le nom de l’argument POST.
Opérateur Tout opérateur de la liste d’opérateurs standard.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur de l’en-tête de la demande à mettre en correspondance. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes contenant un en-tête nommé MyCustomHeader, quelle que soit sa valeur.

Capture d’écran du portail montrant la condition de correspondance de l'en-tête de requête.

Méthode de requête

La condition de correspondance request method identifie les demandes qui utilisent la méthode de demande HTTP spécifiée. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Dans le portail Azure : Equal, Not Equal
  • Dans les modèles ARM : Equal ; utilisez la propriété negateCondition pour spécifier Not Equal (Non égal)
Méthode de requête Une ou plusieurs méthodes HTTP parmi les suivantes : GET , POST , PUT , DELETE , HEAD , OPTIONS , TRACE. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes utilisant la méthode DELETE.

Capture d’écran du portail montrant la condition de correspondance de la méthode de requête.

Chemin de la requête

La condition de correspondance request path identifie les demandes qui incluent le chemin spécifié dans l’URL de la demande. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Remarque

Le chemin est la partie de l’URL située derrière le nom d’hôte et une barre oblique. Par exemple, dans l’URL https://www.contoso.com/files/secure/file1.pdf, le chemin est files/secure/file1.pdf.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance Any correspond à toute demande, et la condition de correspondance Not Any ne correspond à aucune demande, lorsqu'elle est utilisée avec la condition de correspondance request path.
  • Joker : Correspond lorsque le chemin de la requête correspond à une expression joker. Une expression générique peut inclure le caractère * correspondant à zéro ou plusieurs caractères dans le chemin d’accès. Par exemple, l’expression générique files/customer*/file.pdf correspond aux chemins d’accès files/customer1/file.pdf, files/customer109/file.pdf et files/customer/file.pdf, mais ne correspond pas à files/customer2/anotherfile.pdf.
    • Dans le portail Azure : Wildcards, Not Wildcards
    • Dans les modèles ARM : Wildcard ; utilisez la propriété negateCondition pour spécifier Pas de caractères génériques
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur du chemin de la demande à mettre en correspondance. Si vous spécifiez un slash initial, il est ignoré. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.
Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance Any correspond à toute demande, et la condition de correspondance Not Any ne correspond à aucune demande, lorsqu'elle est utilisée avec la condition de correspondance request path.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur du chemin de la demande à mettre en correspondance. Si vous spécifiez un slash initial, il est ignoré. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes où le chemin du fichier de demande commence par files/secure/. Nous transformons l’extension de fichier de la requête en minuscules avant d’évaluer la correspondance, de sorte que les requêtes pour files/SECURE/ et d’autres variations de la casse déclenchent également cette condition de correspondance.

Capture d’écran du portail montrant la condition de correspondance du chemin de requête.

Protocole de requête

La condition de correspondance request protocol identifie les demandes qui utilisent le protocole spécifié (HTTP ou HTTPS).

Remarque

Le protocole est parfois également appelé schéma.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Dans le portail Azure : Equal, Not Equal
  • Dans les modèles ARM : Equal ; utilisez la propriété negateCondition pour spécifier Not Equal (Non égal)
Méthode de requête HTTP, HTTPS

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes utilisant le protocole HTTP.

Capture d’écran du portail montrant la condition de correspondance du protocole de requête.

URL de la demande

Identifie les requêtes qui correspondent à l’URL spécifiée. L’URL entière est évaluée, y compris le protocole et la chaîne de requête, mais pas le fragment. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Conseil

Lorsque vous utilisez cette condition de règle, veillez à inclure le protocole et une barre oblique finale /. Par exemple, utilisez https://www.contoso.com/ au lieu de www.contoso.com.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance N’importe lequel correspond à toute demande, tandis que la condition de correspondance Aucun ne correspond à aucune demande, lorsqu'elle est utilisée avec la condition de correspondance URL de la demande.
Valeur Une ou plusieurs valeurs de chaîne ou d’entier représentant la valeur de l’URL de la demande à mettre en correspondance. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les demandes où l’URL de la demande commence par https://api.contoso.com/customers/123. Nous transformons l’extension de fichier de la demande en minuscules avant d’évaluer la correspondance, de sorte que les demandes adressées à https://api.contoso.com/Customers/123, et d’autres variations de casse, déclenchent également cette condition de correspondance.

Capture d’écran du portail montrant la condition de correspondance de l'URL de requête.

Nom de l’hôte

La condition de correspondance du nom d’hôte identifie les requêtes en fonction du nom d’hôte spécifié dans la requête du client. La condition de correspondance utilise la valeur d’en-tête Host pour évaluer le nom d’hôte. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance N’importe lequel satisfait toute demande et la condition de correspondance Aucun ne satisfait aucune demande lorsqu'elles sont utilisées avec la condition de correspondance nom d’hôte.
Valeur Une ou plusieurs valeurs de chaîne représentant la valeur du nom d'hôte de la requête à mettre en correspondance. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.
Transformation de cas Toute transformation de cas de la liste de transformations de chaîne standard.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes dont Host l’en-tête se termine par contoso.com.

Capture d’écran du portail montrant la condition de correspondance du nom d’hôte.

Protocole SSL

La condition de correspondance de protocole SSL identifie les requêtes en fonction du protocole SSL d’une connexion TLS établie. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Dans le portail Azure : Equal, Not Equal
  • Dans les modèles ARM : Equal ; utilisez la propriété negateCondition pour spécifier Not Equal (Non égal)
Protocole SSL
  • Dans le Portail Azure : 1.0, 1.1, 1.2
  • Dans les modèles ARM : TLSv1, TLSv1.1, TLSv1.2

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes qui utilisent le protocole TLS 1.2.

Capture d’écran du portail montrant la condition de correspondance du protocole SSL.

Adresse du socket

La condition de correspondance d’adresse du socket identifie les requêtes en fonction de l’adresse IP de la connexion directe au périmètre Azure Front Door. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Remarque

Si le client a utilisé un proxy HTTP ou un équilibreur de charge pour envoyer la requête, l’adresse du socket est l’adresse IP du proxy ou de l’équilibreur de charge.

Utilisez la condition de correspondance d'adresse distante si vous devez faire correspondre en fonction de l’adresse IP d’origine du client.

  • Utilisez la notation CIDR lorsque vous spécifiez des blocs d’adresses IP. Cela signifie que la syntaxe d’un bloc d’adresses IP est l’adresse IP de base suivie d’une barre oblique et de la taille de préfixe. Par exemple :
    • Exemple IPv4 : 5.5.5.64/26 correspond aux requêtes provenant des adresses 5.5.5.64 à 5.5.5.127.
    • Exemple IPv6 : 1:2:3:/48 correspond aux requêtes qui proviennent des adresses 1:2:3:0:0:0:0:0 à 1:2:3: ffff:ffff:ffff:ffff:ffff.
  • Quand vous spécifiez plusieurs adresses IP et blocs d’adresses IP, un « OR » logique est appliqué.
    • Exemple IPv4 : si vous ajoutez deux adresses IP, 1.2.3.4 et 10.20.30.40, la condition est remplie pour les demandes provenant de l’adresse 1.2.3.4 ou 10.20.30.40.
    • Exemple IPv6 : si vous ajoutez deux adresses IP, 1:2:3:4:5:6:7:8 et 10:20:30:40:50:60:70:80, la condition est remplie pour les demandes provenant de l’adresse 1:2:3:4:5:6:7:8 ou 10:20:30:40:50:60:70:80.

Propriétés

Propriété Valeurs prises en charge
Opérateur
  • Dans le portail Azure : IP Match, Not IP Match
  • Dans les modèles ARM : IPMatch ; utilisez la propriété negateCondition pour spécifier Sans correspondance IP
Valeur Spécifiez une ou plusieurs plages d’adresses IP. Si plusieurs plages d’adresses IP sont spécifiées, elles sont évaluées à l’aide d’un OR logique.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes des adresses IP dans la plage 5.5.5.64/26.

Capture d’écran du portail montrant la condition de correspondance de l’adresse du socket.

Port client

La condition de correspondance de port client identifie les requêtes en fonction du port TCP du client qui a effectué la requête. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance N’importe lequel correspond à toute demande, et la condition de correspondance Aucun ne correspond à aucune demande lorsqu'elle est utilisée avec la condition de correspondance port du client.
Valeur Un ou plusieurs numéros de port, exprimés en tant qu’entiers. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes avec le port client 1234.

Capture d’écran du portail montrant la condition de correspondance du port du client.

Port du serveur

La condition de correspondance de port du serveur identifie les requêtes en fonction du port TCP du serveur Azure Front Door qui a accepté la requête. Le port doit être 80 ou 443. Vous pouvez spécifier plusieurs valeurs à mettre en correspondance, qui peuvent être combinées à l’aide de la logique OR.

Propriétés

Propriété Valeurs prises en charge
Opérateur Tous les opérateurs de la liste d’opérateurs standard sont pris en charge. Toutefois, la condition de correspondance N’importe lequel correspond à toute demande, tandis que la condition de correspondance Aucun ne correspond à aucune demande, lorsqu'elles sont utilisées avec la condition de correspondance port du serveur.
Valeur Un numéro de port, qui doit être 80 ou 443. Si plusieurs valeurs sont spécifiées, elles sont évaluées à l’aide d’un OR logique.

Exemple

Dans cet exemple, nous mettons en correspondance toutes les requêtes avec le port serveur 443.

Capture d’écran du portail montrant la condition de correspondance du port du serveur.

Liste d'opérateurs

Pour les règles qui acceptent les valeurs de la liste des opérateurs standard, les opérateurs suivants sont valides :

Opérateur Descriptif Prise en charge de modèle ARM
N'importe quel Correspond à n'importe quelle valeur, quelle qu'elle soit. operator: Any
Égal Correspond quand la valeur correspond exactement à la chaîne spécifiée. operator: Equal
Contient Correspond quand la valeur contient la chaîne spécifiée. operator: Contains
Inférieur à Correspond quand la longueur de la valeur est inférieure à l’entier spécifié. operator: LessThan
Supérieur à Correspond quand la longueur de la valeur est supérieure à l’entier spécifié. operator: GreaterThan
Inférieur ou égal à Correspond quand la longueur de la valeur est inférieure ou égale à l’entier spécifié. operator: LessThanOrEqual
Supérieur ou égal à Correspond quand la longueur de la valeur est supérieure ou égale à l’entier spécifié. operator: GreaterThanOrEqual
Commence par Correspond quand la valeur commence par la chaîne spécifiée. operator: BeginsWith
Se termine par Correspond quand la valeur se termine par la chaîne spécifiée. operator: EndsWith
Pas un seul Correspond quand il n’y a aucune valeur. operator : Any et negateCondition : true
N’est pas égal à Correspond quand la valeur ne correspond pas à la chaîne spécifiée. operator : Equal et negateCondition : true
Ne contient pas Correspond quand la valeur ne contient pas la chaîne spécifiée. operator : Contains et negateCondition : true
Pas inférieur à Correspond quand la longueur de la valeur n’est pas inférieure à l’entier spécifié. operator : LessThan et negateCondition : true
Pas supérieur à Correspond quand la longueur de la valeur n’est pas supérieure à l’entier spécifié. operator : GreaterThan et negateCondition : true
Pas inférieur ou égal à Correspond quand la longueur de la valeur n’est pas inférieure ou égale à l’entier spécifié. operator : LessThanOrEqual et negateCondition : true
Pas supérieur ou égal à Correspond quand la longueur de la valeur n’est pas supérieure ou égale à l’entier spécifié. operator : GreaterThanOrEqual et negateCondition : true
Ne commence pas par Correspond quand la valeur ne commence pas par la chaîne spécifiée. operator : BeginsWith et negateCondition : true
Ne se termine pas par Correspond quand la valeur ne se termine pas par la chaîne spécifiée. operator : EndsWith et negateCondition : true
Opérateur Descriptif Prise en charge de modèle ARM
N'importe quel Correspond à n'importe quelle valeur, quelle qu'elle soit. operator: Any
Égal Correspond quand la valeur correspond exactement à la chaîne spécifiée. operator: Equal
Contient Correspond quand la valeur contient la chaîne spécifiée. operator: Contains
Inférieur à Correspond quand la longueur de la valeur est inférieure à l’entier spécifié. operator: LessThan
Supérieur à Correspond quand la longueur de la valeur est supérieure à l’entier spécifié. operator: GreaterThan
Inférieur ou égal à Correspond quand la longueur de la valeur est inférieure ou égale à l’entier spécifié. operator: LessThanOrEqual
Supérieur ou égal à Correspond quand la longueur de la valeur est supérieure ou égale à l’entier spécifié. operator: GreaterThanOrEqual
Commence par Correspond quand la valeur commence par la chaîne spécifiée. operator: BeginsWith
Se termine par Correspond quand la valeur se termine par la chaîne spécifiée. operator: EndsWith
Expression régulière Correspond quand la valeur correspond à l’expression régulière spécifiée. Voyez ci-dessous pour plus de détails. operator: RegEx
Pas un seul Correspond quand il n’y a aucune valeur. operator : Any et negateCondition : true
N’est pas égal à Correspond quand la valeur ne correspond pas à la chaîne spécifiée. operator : Equal et negateCondition : true
Ne contient pas Correspond quand la valeur ne contient pas la chaîne spécifiée. operator : Contains et negateCondition : true
Pas inférieur à Correspond quand la longueur de la valeur n’est pas inférieure à l’entier spécifié. operator : LessThan et negateCondition : true
Pas supérieur à Correspond quand la longueur de la valeur n’est pas supérieure à l’entier spécifié. operator : GreaterThan et negateCondition : true
Pas inférieur ou égal à Correspond quand la longueur de la valeur n’est pas inférieure ou égale à l’entier spécifié. operator : LessThanOrEqual et negateCondition : true
Pas supérieur ou égal à Correspond quand la longueur de la valeur n’est pas supérieure ou égale à l’entier spécifié. operator : GreaterThanOrEqual et negateCondition : true
Ne commence pas par Correspond quand la valeur ne commence pas par la chaîne spécifiée. operator : BeginsWith et negateCondition : true
Ne se termine pas par Correspond quand la valeur ne se termine pas par la chaîne spécifiée. operator : EndsWith et negateCondition : true
Pas une expression régulière Correspond quand la valeur ne correspond pas à l’expression régulière spécifiée. Voyez ci-dessous pour plus de détails. operator : RegEx et negateCondition : true

Conseil

Pour les opérateurs numériques tels que Inférieur à et Supérieur ou égal à, la comparaison utilisée est basée sur la longueur. La valeur de la condition de correspondance doit être un entier spécifiant la longueur que vous voulez comparer.

Expressions régulières

Les expressions régulières ne prennent pas en charge les opérations suivantes :

  • Références arrière et capture de sous-expressions.
  • Assertions de largeur nulle arbitraires.
  • Références de sous-routines et modèles récursifs.
  • Modèles conditionnels.
  • Verbes de contrôle de retours sur trace.
  • La directive \C mono-octet.
  • La directive de correspondance de saut de ligne \R.
  • Début de la directive de réinitialisation de correspondance \K.
  • Annotations et code intégré.
  • Regroupement atomique et quantificateurs possessifs.

Liste de transformations de chaîne

Pour les règles qui risquent de transformer des chaînes, les transformations suivantes sont valables :

Transformation Descriptif Prise en charge de modèle ARM
En minuscules Convertit la chaîne en une représentation en minuscules. Lowercase
En majuscules Convertit la chaîne en une représentation en majuscules. Uppercase
Supprimer les espaces Supprime les espaces blancs au début et à la fin de la chaîne. Trim
Supprimer les valeurs nulles Supprime les valeurs null de la chaîne. RemoveNulls
Encoder par URL Coder la chaîne au format URL. UrlEncode
Décoder une URL Décode la chaîne par URL. UrlDecode

Étapes suivantes