Azure Front Door regler matchar villkor
I Azure Front Door regelmotor och Azure Front Door Standard/Premium regeluppsättningbestår en regel av inga eller vissa matchningsvillkor och en åtgärd. Den här artikeln innehåller detaljerade beskrivningar av matchningsvillkor som du kan använda i Azure Front Door regeluppsättning eller regelmotor.
Den första delen av en regel är ett matchningsvillkor eller en uppsättning matchningsvillkor. En regel kan bestå av upp till 10 matchningsvillkor. Ett matchningsvillkor identifierar specifika typer av begäranden som definierade åtgärder utförs för. Om du använder flera matchningsvillkor grupperas matchningsvillkoren tillsammans med hjälp av AND-logik. För alla matchningsvillkor som stöder flera värden används OR-logik.
Du kan använda ett matchningsvillkor för att:
- Filtrera begäranden baserat på en specifik IP-adress, land eller region.
- Filtrera begäranden efter rubrikinformation.
- Filtrera begäranden från mobila enheter eller stationära enheter.
- Filtrera begäranden från begärandefilnamn och filnamnstillägg.
- Filtrera begäranden från begärande-URL, protokoll, sökväg, frågesträng, post args osv.
Viktigt
Azure Front Door Standard/Premium (förhandsversion) är för närvarande i offentlig förhandsversion. Den här förhandsversionen tillhandahålls utan serviceavtal och rekommenderas inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller kan vara begränsade. Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.
Enhetstyp
Använd matchningsvillkoret för enhetstyp för att identifiera begäranden som har gjorts från en mobil eller stationär enhet.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator |
|
| Värde | Mobile, Desktop |
Exempel
I det här exemplet matchar vi alla begäranden som har identifierats som kommer från en mobil enhet.
Publicera args
Använd matchningsvillkoret post args för att identifiera begäranden baserat på de argument som anges i en POST-begärans brödtext. Ett enda matchningsvillkor matchar ett enda argument från POST-begärans brödtext. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Anteckning
Matchningsvillkoret för post args fungerar med application/x-www-form-urlencoded innehållstypen.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Publicera args | Ett strängvärde som representerar namnet på ARGUMENTET POST. |
| Operator | Alla operatorer från standardoperatorns lista. |
| Värde | En eller flera sträng- eller heltalsvärden som representerar värdet för postargumentet som ska matchas. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla POST-begäranden där ett argument anges i begärandetexten och där värdet för customerName customerName börjar med bokstaven eller J K . Vi använder en falltransform för att konvertera indatavärdena till versaler så att alla värden som börjar J med , , och j K k matchas.
Frågesträng
Använd matchningsvillkoret för frågesträngen för att identifiera begäranden som innehåller en specifik frågesträng. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Anteckning
Hela frågesträngen matchas som en enda sträng, utan inledande ? .
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator | Alla operatorer från standardoperatorns lista. |
| Frågesträng | En eller flera sträng- eller heltalsvärden som representerar värdet för frågesträngen som ska matchas. Ta inte med ? i början av frågesträngen. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla begäranden där frågesträngen innehåller strängen language=en-US . Vi vill att matchningsvillkoret ska vara fallkänsligt, så vi transformerar inte ärendet.
Fjärradress
Matchningsvillkoret för fjärradress identifierar begäranden baserat på beställarens plats eller IP-adress. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
- Använd CIDR-notation när du anger IP-adressblock. Det innebär att syntaxen för ett IP-adressblock är den grundläggande IP-adressen följt av ett snedstreck och prefixstorleken. Ett exempel:
- IPv4-exempel: matchar alla begäranden som tas emot från
5.5.5.64/26adresserna 5.5.5.64 till 5.5.5.127. - IPv6-exempel: matchar alla begäranden som kommer från
1:2:3:/48adresserna 1:2:3:0:0:0:0:0 till 1:2:3: ffff:ffff:ffff:ffff:ffff.
- IPv4-exempel: matchar alla begäranden som tas emot från
- När du anger flera IP-adresser och IP-adressblock tillämpas "OR"-logik.
- IPv4-exempel: Om du lägger till två IP-adresser och , matchas villkoret för begäranden som kommer från adress
1.2.3.410.20.30.401.2.3.4 eller 10.20.30.40. - IPv6-exempel: Om du lägger till två IP-adresser och matchas villkoret för begäranden som kommer från någon av
1:2:3:4:5:6:7:810:20:30:40:50:60:70:80adresserna 1:2:3:4:5:6:7:8 eller 10:20:30:40:50:60:70:80.
- IPv4-exempel: Om du lägger till två IP-adresser och , matchas villkoret för begäranden som kommer från adress
- Fjärradress representerar den ursprungliga klient-IP-adressen som antingen kommer från nätverksanslutningen eller vanligtvis begärandehuvudet X-Forwarded-For om användaren finns bakom en proxyserver.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator |
|
| Värde |
|
Exempel
I det här exemplet matchar vi alla begäranden där begäran inte har sitt ursprung i USA.
Begärandetext
Matchningsvillkoret för begärandetexten identifierar begäranden baserat på specifik text som visas i begärandetexten. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Anteckning
Om en begärandetext överskrider 64 kB i storlek tas endast de första 64 kB i beaktande för matchningsvillkoret för begärandetexten.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator | Alla operatorer från standardoperatorlistan. |
| Värde | En eller flera sträng- eller heltalsvärden som representerar värdet för begärandetexten som ska matchas. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla begäranden där begärandetexten innehåller strängen ERROR . Vi omvandlar begärandetexten till versaler innan vi utvärderar matchningen, så error andra skiftlägesvariationer utlöser även det här matchningsvillkoret.
Begärandefilnamn
Matchningsvillkoret för begärandefilen identifierar begäranden som innehåller det angivna filnamnet i begärande-URL:en. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator | Alla operatorer från standardoperatorlistan. |
| Värde | En eller flera sträng- eller heltalsvärden som representerar värdet för begärandefilens namn som ska matchas. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla begäranden där begärandefilens namn är media.mp4 . Vi omvandlar filnamnet till gemener innan vi utvärderar matchningen, så MEDIA.MP4 andra skiftlägesvariationer utlöser även det här matchningsvillkoret.
Begär filnamnstillägg
Matchningsvillkoret för filnamnstillägget identifierar begäranden som innehåller det angivna filnamnstillägget i filnamnet i begärande-URL:en. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Anteckning
Inkludera inte en inledande punkt. Använd till exempel html i stället för .html.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator | Alla operatorer från standardoperatorlistan. |
| Värde | En eller flera sträng- eller heltalsvärden som representerar värdet för filtillägget för begäran som ska matchas. Inkludera inte en inledande punkt. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla begäranden där filnamnstillägget för begäran pdf är eller docx . Vi omvandlar filnamnstillägget för begäran till gemener innan vi utvärderar matchningen, så , och andra skiftlägesvariationer utlöser PDF DocX även matchningsvillkoret.
Begärandehuvud
Matchningsvillkoret för begärandehuvudet identifierar begäranden som innehåller ett specifikt huvud i begäran. Du kan använda det här matchningsvillkoret för att kontrollera om en rubrik finns oavsett dess värde eller för att kontrollera om rubriken matchar ett angivet värde. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Huvudnamn | Ett strängvärde som representerar namnet på ARGUMENTET POST. |
| Operator | Alla operatorer från standardoperatorlistan. |
| Värde | En eller flera sträng- eller heltalsvärden som representerar värdet för begärandehuvudet som ska matchas. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla begäranden där begäran innehåller ett huvud med namnet MyCustomHeader , oavsett dess värde.
Begärandemetod
Matchningsvillkoret för begärandemetoden identifierar begäranden som använder den angivna HTTP-förfrågningsmetoden. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator |
|
| Begärandemetod | En eller flera HTTP-metoder från: GET , , , , , , POST PUT DELETE HEAD OPTIONS TRACE . Om flera värden anges utvärderas de med hjälp av OR-logik. |
Exempel
I det här exemplet matchar vi alla begäranden där begäran använder DELETE metoden .
Sökväg för begäran
Matchningsvillkoret för begärandesökvägen identifierar begäranden som innehåller den angivna sökvägen i begärande-URL:en. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Anteckning
Sökvägen är en del av URL:en efter värdnamnet och ett snedstreck. I URL:en https://www.contoso.com/files/secure/file1.pdf är sökvägen till exempel files/secure/file1.pdf .
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator | Alla operatorer från standardoperatorlistan. |
| Värde | En eller flera sträng- eller heltalsvärden som representerar värdet för den sökväg för begäran som ska matchas. Inkludera inte det inledande snedstrecket. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla begäranden där sökvägen till begärandefilen börjar med files/secure/ . Vi omvandlar filnamnstillägget för begäran till gemener innan vi utvärderar matchningen, så begäranden till och andra skiftlägesvariationer utlöser files/SECURE/ även det här matchningsvillkoret.
Begärandeprotokoll
Matchningsvillkoret för begärandeprotokollet identifierar begäranden som använder det angivna protokollet (HTTP eller HTTPS).
Anteckning
Protokollet kallas ibland även schema.
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator |
|
| Begärandemetod | HTTP, HTTPS |
Exempel
I det här exemplet matchar vi alla begäranden där begäran använder HTTP protokollet.
Begärans-URL
Identifierar begäranden som matchar den angivna URL:en. Hela URL:en utvärderas, inklusive protokollet och frågesträngen, men inte fragmentet. Du kan ange flera värden som ska matchas, som kombineras med hjälp av OR-logik.
Tips
När du använder det här regelvillkoret måste du inkludera protokollet. Använd till exempel i https://www.contoso.com stället för bara www.contoso.com .
Egenskaper
| Egenskap | Värden som stöds |
|---|---|
| Operator | Alla operatorer från standardoperatorlistan. |
| Värde | En eller flera sträng- eller heltalsvärden som representerar värdet för den begärande-URL som ska matchas. Om flera värden anges utvärderas de med hjälp av OR-logik. |
| Transformering av ärende | Lowercase, Uppercase |
Exempel
I det här exemplet matchar vi alla begäranden där begärande-URL:en börjar med https://api.contoso.com/customers/123 . Vi omvandlar filnamnstillägget för begäran till gemener innan vi utvärderar matchningen, så begäranden till och andra skiftlägesvariationer utlöser https://api.contoso.com/Customers/123 även det här matchningsvillkoret.
Operatorlista
För regler som accepterar värden från standardoperatorlistan är följande operatorer giltiga:
| Operator | Beskrivning | Stöd för ARM-mallar |
|---|---|---|
| Valfri | Matchar när det finns ett värde, oavsett vad det är. | operator: Any |
| Lika med | Matchar när värdet exakt matchar den angivna strängen. | operator: Equal |
| Innehåller | Matchar när värdet innehåller den angivna strängen. | operator: Contains |
| Mindre än | Matchar när längden på värdet är mindre än det angivna heltal. | operator: LessThan |
| Större än | Matchar när längden på värdet är större än det angivna heltal. | operator: GreaterThan |
| Mindre än eller lika med | Matchar när längden på värdet är mindre än eller lika med det angivna heltal. | operator: LessThanOrEqual |
| Större än eller lika med | Matchar när längden på värdet är större än eller lika med det angivna heltal. | operator: GreaterThanOrEqual |
| Börjar med | Matchar när värdet börjar med den angivna strängen. | operator: BeginsWith |
| Slutar med | Matchar när värdet slutar med den angivna strängen. | operator: EndsWith |
| Regex | Matchar när värdet matchar det angivna reguljära uttrycket. Mer information finns nedan. | operator: RegEx |
| Inte alla | Matchar när det inte finns något värde. | operator: Any och negateCondition : true |
| Inte lika med | Matchar när värdet inte matchar den angivna strängen. | operator: Equal och negateCondition : true |
| Innehåller inte | Matchar när värdet inte innehåller den angivna strängen. | operator: Contains och negateCondition : true |
| Inte mindre än | Matchar när längden på värdet inte är mindre än det angivna heltal. | operator: LessThan och negateCondition : true |
| Inte större än | Matchar när längden på värdet inte är större än det angivna heltal. | operator: GreaterThan och negateCondition : true |
| Inte mindre än eller lika med | Matchar när längden på värdet inte är mindre än eller lika med det angivna heltal. | operator: LessThanOrEqual och negateCondition : true |
| Inte större än eller lika med | Matchar när längden på värdet inte är större än eller lika med det angivna heltal. | operator: GreaterThanOrEqual och negateCondition : true |
| Börjar inte med | Matchar när värdet inte börjar med den angivna strängen. | operator: BeginsWith och negateCondition : true |
| Slutar inte med | Matchar när värdet inte slutar med den angivna strängen. | operator: EndsWith och negateCondition : true |
| Inte RegEx | Matchar när värdet inte matchar det angivna reguljära uttrycket. Se nedan för ytterligare information. | operator: RegEx och negateCondition : true |
Tips
För numeriska operatorer som Mindre än och Större än eller lika med baseras jämförelsen som används på längd. Värdet i matchningsvillkoret ska vara ett heltal som anger den längd som du vill jämföra.
Reguljära uttryck
Reguljära uttryck stöder inte följande åtgärder:
- Bakåtreferenser och avbildning av underuttryck.
- Godtyckliga nollbreddspåståenden.
- Subrutinreferenser och rekursiva mönster.
- Villkorliga mönster.
- Kontrollverb för bakåtspårning.
- Direktivet
\Cmed en byte. \RMatchningsdirektiv för nyrad.- Början
\Kav direktivet för matchningsåterställning. - Bildtext och inbäddad kod.
- Atomisk gruppering och possessiva kvantifierare.
Nästa steg
Azure Front Door:
- Läs mer om Azure Front Door regelmotor
- Lär dig hur du konfigurerar din första regelmotor.
- Läs mer om regelmotoråtgärder
Azure Front Door Standard/Premium:
- Läs mer om Azure Front Door Standard/Premium regeluppsättning.
- Lär dig hur du konfigurerar din första regeluppsättning.
- Läs mer om regeluppsättningsåtgärder.