Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2023-06-01
Bicep-resursdefinition
Resurstypen ApplicationGatewayWebApplicationFirewallPolicies kan distribueras med åtgärder som mål:
- Resursgrupper – Se kommandon för resursgruppsdistribution
En lista över ändrade egenskaper i varje API-version finns i ändringsloggen.
Resursformat
Om du vill skapa en Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies-resurs lägger du till följande Bicep i mallen.
resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2023-06-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
properties: {
customRules: [
{
action: 'string'
groupByUserSession: [
{
groupByVariables: [
{
variableName: 'string'
}
]
}
]
matchConditions: [
{
matchValues: [
'string'
]
matchVariables: [
{
selector: 'string'
variableName: 'string'
}
]
negationConditon: bool
operator: 'string'
transforms: [
'string'
]
}
]
name: 'string'
priority: int
rateLimitDuration: 'string'
rateLimitThreshold: int
ruleType: 'string'
state: 'string'
}
]
managedRules: {
exclusions: [
{
exclusionManagedRuleSets: [
{
ruleGroups: [
{
ruleGroupName: 'string'
rules: [
{
ruleId: 'string'
}
]
}
]
ruleSetType: 'string'
ruleSetVersion: 'string'
}
]
matchVariable: 'string'
selector: 'string'
selectorMatchOperator: 'string'
}
]
managedRuleSets: [
{
ruleGroupOverrides: [
{
ruleGroupName: 'string'
rules: [
{
action: 'string'
ruleId: 'string'
state: 'string'
}
]
}
]
ruleSetType: 'string'
ruleSetVersion: 'string'
}
]
}
policySettings: {
customBlockResponseBody: 'string'
customBlockResponseStatusCode: int
fileUploadEnforcement: bool
fileUploadLimitInMb: int
logScrubbing: {
scrubbingRules: [
{
matchVariable: 'string'
selector: 'string'
selectorMatchOperator: 'string'
state: 'string'
}
]
state: 'string'
}
maxRequestBodySizeInKb: int
mode: 'string'
requestBodyCheck: bool
requestBodyEnforcement: bool
requestBodyInspectLimitInKB: int
state: 'string'
}
}
}
Egenskapsvärden
ApplicationGatewayWebApplicationFirewallPolicies
Name | Beskrivning | Värde |
---|---|---|
name | Resursnamnet | sträng (krävs) |
location | Resursplats. | sträng |
tags | Resurstaggar. | Ordlista med taggnamn och värden. Se Taggar i mallar |
properties | Egenskaper för brandväggsprincipen för webbaserade program. | WebApplicationFirewallPolicyPropertiesFormat |
WebApplicationFirewallPolicyPropertiesFormat
Name | Beskrivning | Värde |
---|---|---|
customRules | De anpassade reglerna i principen. | WebApplicationFirewallCustomRule[] |
managedRules | Beskriver managedRules-strukturen. | ManagedRulesDefinition (krävs) |
policyInställningar | PolicyInställningar för principen. | PolicyInställningar |
WebApplicationFirewallCustomRule
Name | Beskrivning | Värde |
---|---|---|
åtgärd | Typ av åtgärder. | "Tillåt" "Blockera" "JSChallenge" "Logg" (krävs) |
groupByUserSession | Lista över användarsessionsidentifierare gruppera efter satser. | GroupByUserSession[] |
matchConditions | Lista över matchningsvillkor. | MatchCondition[] (krävs) |
name | Namnet på den resurs som är unik i en princip. Det här namnet kan användas för att komma åt resursen. | sträng Begränsningar: Maxlängd = 128 |
prioritet | Regelns prioritet. Regler med ett lägre värde utvärderas före regler med ett högre värde. | int (obligatoriskt) |
rateLimitDuration | Varaktighet för vilken princip för hastighetsbegränsning ska tillämpas. Gäller endast när ruleType är RateLimitRule. | "FiveMins" "OneMin" |
rateLimitThreshold | Tröskelvärde för hastighetsbegränsning som ska tillämpas om ruleType är RateLimitRule. Måste vara större än eller lika med 1 | int |
ruleType | Regeltypen. | "Ogiltigt" "MatchRule" "RateLimitRule" (krävs) |
state | Beskriver om den anpassade regeln är i aktiverat eller inaktiverat tillstånd. Standardvärdet är Aktiverad om det inte anges. | "Inaktiverad" "Aktiverad" |
GroupByUserSession
Name | Beskrivning | Värde |
---|---|---|
groupByVariables | Lista över variabler för gruppera efter-sats. | GroupByVariable[] (krävs) |
GroupByVariable
Name | Beskrivning | Värde |
---|---|---|
variableName | Variabel för användarsessionssatser. | "ClientAddr" "GeoLocation" "Ingen" (obligatoriskt) |
MatchCondition
Name | Beskrivning | Värde |
---|---|---|
matchValues | Matcha värde. | string[] (krävs) |
matchVariables | Lista över matchningsvariabler. | MatchVariable[] (krävs) |
negationConditon | Oavsett om detta är negatevillkor eller inte. | boolesk |
operator | Operatorn som ska matchas. | "Alla" "BeginsWith" "Innehåller" "EndsWith" "Lika" "GeoMatch" "GreaterThan" "GreaterThanOrEqual" "IPMatch" "LessThan" "LessThanOrEqual" "Regex" (krävs) |
Förvandlar | Lista över transformeringar. | Strängmatris som innehåller något av: "HtmlEntityDecode" "Gemener" "RemoveNulls" "Trimma" "Versaler" "UrlDecode" "UrlEncode" |
MatchVariable
Name | Beskrivning | Värde |
---|---|---|
väljare | Väljaren för matchningsvariabeln. | sträng |
variableName | Matcha variabel. | "PostArgs" "QueryString" "RemoteAddr" "RequestBody" "RequestCookies" "RequestHeaders" "RequestMethod" "RequestUri" (krävs) |
ManagedRulesDefinition
Name | Beskrivning | Värde |
---|---|---|
Undantag | Undantag som tillämpas på principen. | OwaspCrsExclusionEntry[] |
managedRuleSets | De hanterade regeluppsättningar som är associerade med principen. | ManagedRuleSet[] (krävs) |
OwaspCrsExclusionEntry
Name | Beskrivning | Värde |
---|---|---|
exclusionManagedRuleSets | De hanterade regeluppsättningar som är associerade med undantaget. | ExclusionManagedRuleSet[] |
matchVariable | Variabeln som ska undantas. | "RequestArgKeys" "RequestArgNames" "RequestArgValues" "RequestCookieKeys" "RequestCookieNames" "RequestCookieValues" "RequestHeaderKeys" "RequestHeaderNames" "RequestHeaderValues" (krävs) |
väljare | När matchVariable är en samling används operatorn för att ange vilka element i samlingen som undantaget gäller för. | sträng (krävs) |
selectorMatchOperator | När matchVariable är en samling använder du väljaren för att ange vilka element i samlingen som undantaget gäller för. | "Innehåller" "EndsWith" "Lika med" "Lika medAny" "StartsWith" (krävs) |
ExclusionManagedRuleSet
Name | Beskrivning | Värde |
---|---|---|
ruleGroups | Definierar de regelgrupper som ska tillämpas på regeluppsättningen. | ExclusionManagedRuleGroup[] |
ruleSetType | Definierar den regeluppsättningstyp som ska användas. | sträng (krävs) |
ruleSetVersion | Definierar den version av regeluppsättningen som ska användas. | sträng (krävs) |
ExclusionManagedRuleGroup
Name | Beskrivning | Värde |
---|---|---|
ruleGroupName | Den hanterade regelgruppen för exkludering. | sträng (krävs) |
regler | Lista över regler som ska undantas. Om ingen anges undantas alla regler i gruppen. | ExclusionManagedRule[] |
ExclusionManagedRule
Name | Beskrivning | Värde |
---|---|---|
ruleId | Identifierare för den hanterade regeln. | sträng (krävs) |
ManagedRuleSet
Name | Beskrivning | Värde |
---|---|---|
ruleGroupOverrides | Definierar regelgruppens åsidosättningar som ska tillämpas på regeluppsättningen. | ManagedRuleGroupOverride[] |
ruleSetType | Definierar den regeluppsättningstyp som ska användas. | sträng (krävs) |
ruleSetVersion | Definierar den version av regeluppsättningen som ska användas. | sträng (krävs) |
ManagedRuleGroupOverride
Name | Beskrivning | Värde |
---|---|---|
ruleGroupName | Den hanterade regelgrupp som ska åsidosättas. | sträng (krävs) |
regler | Lista över regler som ska inaktiveras. Om ingen anges inaktiveras alla regler i gruppen. | ManagedRuleOverride[] |
ManagedRuleOverride
Name | Beskrivning | Värde |
---|---|---|
åtgärd | Beskriver åsidosättningsåtgärden som ska tillämpas när regeln matchar. | "Tillåt" "AnomalyScoring" "Blockera" "JSChallenge" "Logg" |
ruleId | Identifierare för den hanterade regeln. | sträng (krävs) |
state | Tillståndet för den hanterade regeln. Standardvärdet är Inaktiverad om det inte anges. | "Inaktiverad" "Aktiverad" |
Principinställningar
Name | Beskrivning | Värde |
---|---|---|
customBlockResponseBody | Om åtgärdstypen är blockerad kan kunden åsidosätta svarstexten. Brödtexten måste anges i base64-kodning. | sträng Begränsningar: Maximal längd = 32768 Mönster = ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$ |
customBlockResponseStatusCode | Om åtgärdstypen är blockerad kan kunden åsidosätta svarsstatuskoden. | int Begränsningar: Minsta värde = 0 |
fileUploadEnforcement | Om tillåt WAF att framtvinga filuppladdningsgränser. | boolesk |
fileUploadLimitInMb | Maximal filuppladdningsstorlek i Mb för WAF. | int Begränsningar: Minsta värde = 0 |
logScrubbing | Rensa känsliga loggfält | PolicySettingsLogScrubbing |
maxRequestBodySizeInKb | Maximal storlek för begärandetext i kB för WAF. | int Begränsningar: Minsta värde = 8 |
mode | Läget för principen. | "Identifiering" "Förebyggande" |
requestBodyCheck | Om WAF ska kunna kontrollera begärandetexten. | boolesk |
requestBodyEnforcement | Om tillåt WAF att framtvinga begränsningar för begärandetext. | boolesk |
requestBodyInspectLimitInKB | Maximal inspektionsgräns i KB för kontroll av begärandetext för WAF. | int |
state | Principens tillstånd. | "Inaktiverad" "Aktiverad" |
PolicySettingsLogScrubbing
Name | Beskrivning | Värde |
---|---|---|
scrubbingRules | De regler som tillämpas på loggarna för rensning. | WebApplicationFirewallScrubbingRules[] |
state | Status för loggrensningskonfigurationen. Standardvärdet är Aktiverat. | "Inaktiverad" "Aktiverad" |
WebApplicationFirewallScrubbingRules
Name | Beskrivning | Värde |
---|---|---|
matchVariable | Variabeln som ska rensas från loggarna. | "RequestArgNames" "RequestCookieNames" "RequestHeaderNames" "RequestIPAddress" "RequestJSONArgNames" "RequestPostArgNames" (krävs) |
väljare | När matchVariable är en samling används operatorn för att ange vilka element i samlingen som regeln gäller för. | sträng |
selectorMatchOperator | När matchVariable är en samling använder du väljaren för att ange vilka element i samlingen som regeln gäller för. | "Lika med" "EqualsAny" (krävs) |
state | Definierar tillståndet för loggrensningsregeln. Standardvärdet är Aktiverat. | "Inaktiverad" "Aktiverad" |
Snabbstartsmallar
Följande snabbstartsmallar distribuerar den här resurstypen.
Mall | Description |
---|---|
Skapa en Azure WAF v2 på Azure Application Gateway |
Den här mallen skapar en Azure Web Application Firewall v2 på Azure Application Gateway med två Windows Server 2016 servrar i serverdelspoolen |
AKS-kluster med en NAT-gateway och en Application Gateway |
Det här exemplet visar hur du distribuerar ett AKS-kluster med NAT Gateway för utgående anslutningar och en Application Gateway för inkommande anslutningar. |
Front Door Standard/Premium med Application Gateway ursprung |
Den här mallen skapar en Front Door Standard/Premium och en Application Gateway-instans och använder en NSG- och WAF-princip för att verifiera att trafiken har kommit via Front Door-ursprunget. |
Front Door med Container Instances och Application Gateway |
Den här mallen skapar en Front Door Standard/Premium med en containergrupp och Application Gateway. |
AKS-kluster med Application Gateway ingresskontrollant |
Det här exemplet visar hur du distribuerar ett AKS-kluster med Application Gateway, Application Gateway ingresskontrollant, Azure Container Registry, Log Analytics och Key Vault |
Application Gateway med WAF och brandväggsprincip |
Den här mallen skapar en Application Gateway med WAF konfigurerad tillsammans med en brandväggsprincip |
Resursdefinition för ARM-mall
Resurstypen ApplicationGatewayWebApplicationFirewallPolicies kan distribueras med åtgärder som mål:
- Resursgrupper – Se distributionskommandon för resursgrupper
En lista över ändrade egenskaper i varje API-version finns i ändringsloggen.
Resursformat
Om du vill skapa en Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies-resurs lägger du till följande JSON i mallen.
{
"type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
"apiVersion": "2023-06-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"properties": {
"customRules": [
{
"action": "string",
"groupByUserSession": [
{
"groupByVariables": [
{
"variableName": "string"
}
]
}
],
"matchConditions": [
{
"matchValues": [ "string" ],
"matchVariables": [
{
"selector": "string",
"variableName": "string"
}
],
"negationConditon": "bool",
"operator": "string",
"transforms": [ "string" ]
}
],
"name": "string",
"priority": "int",
"rateLimitDuration": "string",
"rateLimitThreshold": "int",
"ruleType": "string",
"state": "string"
}
],
"managedRules": {
"exclusions": [
{
"exclusionManagedRuleSets": [
{
"ruleGroups": [
{
"ruleGroupName": "string",
"rules": [
{
"ruleId": "string"
}
]
}
],
"ruleSetType": "string",
"ruleSetVersion": "string"
}
],
"matchVariable": "string",
"selector": "string",
"selectorMatchOperator": "string"
}
],
"managedRuleSets": [
{
"ruleGroupOverrides": [
{
"ruleGroupName": "string",
"rules": [
{
"action": "string",
"ruleId": "string",
"state": "string"
}
]
}
],
"ruleSetType": "string",
"ruleSetVersion": "string"
}
]
},
"policySettings": {
"customBlockResponseBody": "string",
"customBlockResponseStatusCode": "int",
"fileUploadEnforcement": "bool",
"fileUploadLimitInMb": "int",
"logScrubbing": {
"scrubbingRules": [
{
"matchVariable": "string",
"selector": "string",
"selectorMatchOperator": "string",
"state": "string"
}
],
"state": "string"
},
"maxRequestBodySizeInKb": "int",
"mode": "string",
"requestBodyCheck": "bool",
"requestBodyEnforcement": "bool",
"requestBodyInspectLimitInKB": "int",
"state": "string"
}
}
}
Egenskapsvärden
ApplicationGatewayWebApplicationFirewallPolicies
Name | Beskrivning | Värde |
---|---|---|
typ | Resurstypen | "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies" |
apiVersion | Resurs-API-versionen | '2023-06-01' |
name | Resursnamnet | sträng (krävs) |
location | Resursplats. | sträng |
tags | Resurstaggar. | Ordlista med taggnamn och värden. Se Taggar i mallar |
properties | Egenskaper för brandväggsprincipen för webbaserade program. | WebApplicationFirewallPolicyPropertiesFormat |
WebApplicationFirewallPolicyPropertiesFormat
Name | Beskrivning | Värde |
---|---|---|
customRules | De anpassade reglerna i principen. | WebApplicationFirewallCustomRule[] |
managedRules | Beskriver managedRules-strukturen. | ManagedRulesDefinition (krävs) |
policyInställningar | PolicyInställningar för principen. | PolicyInställningar |
WebApplicationFirewallCustomRule
Name | Beskrivning | Värde |
---|---|---|
åtgärd | Typ av åtgärder. | "Tillåt" "Blockera" "JSChallenge" "Logg" (krävs) |
groupByUserSession | Lista över användarsessionsidentifierare gruppera efter satser. | GroupByUserSession[] |
matchConditions | Lista över matchningsvillkor. | MatchCondition[] (krävs) |
name | Namnet på den resurs som är unik i en princip. Det här namnet kan användas för att komma åt resursen. | sträng Begränsningar: Maxlängd = 128 |
prioritet | Regelns prioritet. Regler med ett lägre värde utvärderas före regler med ett högre värde. | int (obligatoriskt) |
rateLimitDuration | Varaktighet för vilken princip för hastighetsbegränsning ska tillämpas. Gäller endast när ruleType är RateLimitRule. | "FiveMins" "OneMin" |
rateLimitThreshold | Tröskelvärde för hastighetsbegränsning som ska tillämpas om ruleType är RateLimitRule. Måste vara större än eller lika med 1 | int |
ruleType | Regeltypen. | "Ogiltigt" "MatchRule" "RateLimitRule" (krävs) |
state | Beskriver om den anpassade regeln är i aktiverat eller inaktiverat tillstånd. Standardvärdet är Aktiverad om det inte anges. | "Inaktiverad" "Aktiverad" |
GroupByUserSession
Name | Beskrivning | Värde |
---|---|---|
groupByVariables | Lista över variabler för gruppera efter-sats. | GroupByVariable[] (krävs) |
GroupByVariable
Name | Beskrivning | Värde |
---|---|---|
variableName | Variabel för användarsessionssatser. | "ClientAddr" "GeoLocation" "Ingen" (obligatoriskt) |
MatchCondition
Name | Beskrivning | Värde |
---|---|---|
matchValues | Matcha värde. | string[] (krävs) |
matchVariables | Lista över matchningsvariabler. | MatchVariable[] (krävs) |
negationConditon | Oavsett om detta är negat villkor eller inte. | boolesk |
operator | Operatorn som ska matchas. | "Alla" "BeginsWith" "Innehåller" "EndsWith" "Lika" "GeoMatch" "GreaterThan" "GreaterThanOrEqual" "IPMatch" "LessThan" "LessThanOrEqual" "Regex" (krävs) |
Förvandlar | Lista över transformeringar. | Strängmatris som innehåller något av: "HtmlEntityDecode" "Gemener" "RemoveNulls" "Trimma" "Versaler" UrlDecode UrlEncode |
MatchVariable
Name | Beskrivning | Värde |
---|---|---|
väljare | Väljaren för matchningsvariabeln. | sträng |
variableName | Matchningsvariabel. | "PostArgs" "QueryString" "RemoteAddr" "RequestBody" "RequestCookies" "RequestHeaders" "RequestMethod" "RequestUri" (krävs) |
ManagedRulesDefinition
Name | Beskrivning | Värde |
---|---|---|
Undantag | Undantag som tillämpas på principen. | OwaspCrsExclusionEntry[] |
managedRuleSets | De hanterade regeluppsättningar som är associerade med principen. | ManagedRuleSet[] (krävs) |
OwaspCrsExclusionEntry
Name | Beskrivning | Värde |
---|---|---|
exclusionManagedRuleSets | De hanterade regeluppsättningar som är associerade med undantaget. | ExclusionManagedRuleSet[] |
matchVariable | Variabeln som ska undantas. | "RequestArgKeys" "RequestArgNames" "RequestArgValues" "RequestCookieKeys" "RequestCookieNames" "RequestCookieValues" "RequestHeaderKeys" "RequestHeaderNames" "RequestHeaderValues" (krävs) |
väljare | När matchVariable är en samling används operatorn för att ange vilka element i samlingen som undantaget gäller för. | sträng (krävs) |
selectorMatchOperator | När matchVariable är en samling använder du väljaren för att ange vilka element i samlingen som undantaget gäller för. | "Innehåller" "EndsWith" "Lika med" "Lika medAny" "StartsWith" (krävs) |
ExclusionManagedRuleSet
Name | Beskrivning | Värde |
---|---|---|
ruleGroups | Definierar de regelgrupper som ska tillämpas på regeluppsättningen. | ExclusionManagedRuleGroup[] |
ruleSetType | Definierar den regeluppsättningstyp som ska användas. | sträng (krävs) |
ruleSetVersion | Definierar den version av regeluppsättningen som ska användas. | sträng (krävs) |
ExclusionManagedRuleGroup
Name | Beskrivning | Värde |
---|---|---|
ruleGroupName | Den hanterade regelgruppen för exkludering. | sträng (krävs) |
regler | Lista över regler som ska undantas. Om ingen anges undantas alla regler i gruppen. | ExclusionManagedRule[] |
ExclusionManagedRule
Name | Beskrivning | Värde |
---|---|---|
ruleId | Identifierare för den hanterade regeln. | sträng (krävs) |
ManagedRuleSet
Name | Beskrivning | Värde |
---|---|---|
ruleGroupOverrides | Definierar regelgruppens åsidosättningar som ska tillämpas på regeluppsättningen. | ManagedRuleGroupOverride[] |
ruleSetType | Definierar den regeluppsättningstyp som ska användas. | sträng (krävs) |
ruleSetVersion | Definierar den version av regeluppsättningen som ska användas. | sträng (krävs) |
ManagedRuleGroupOverride
Name | Beskrivning | Värde |
---|---|---|
ruleGroupName | Den hanterade regelgrupp som ska åsidosättas. | sträng (krävs) |
regler | Lista över regler som ska inaktiveras. Om ingen anges inaktiveras alla regler i gruppen. | ManagedRuleOverride[] |
ManagedRuleOverride
Name | Beskrivning | Värde |
---|---|---|
åtgärd | Beskriver åsidosättningsåtgärden som ska tillämpas när regeln matchar. | "Tillåt" "AnomalyScoring" "Blockera" "JSChallenge" "Logg" |
ruleId | Identifierare för den hanterade regeln. | sträng (krävs) |
state | Tillståndet för den hanterade regeln. Standardvärdet är Inaktiverad om det inte anges. | "Inaktiverad" "Aktiverad" |
Principinställningar
Name | Beskrivning | Värde |
---|---|---|
customBlockResponseBody | Om åtgärdstypen är blockerad kan kunden åsidosätta svarstexten. Brödtexten måste anges i base64-kodning. | sträng Begränsningar: Maximal längd = 32768 Mönster = ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$ |
customBlockResponseStatusCode | Om åtgärdstypen är blockerad kan kunden åsidosätta svarsstatuskoden. | int Begränsningar: Minsta värde = 0 |
fileUploadEnforcement | Om tillåt WAF att framtvinga filuppladdningsgränser. | boolesk |
fileUploadLimitInMb | Maximal filuppladdningsstorlek i Mb för WAF. | int Begränsningar: Minsta värde = 0 |
logScrubbing | Rensa känsliga loggfält | PolicySettingsLogScrubbing |
maxRequestBodySizeInKb | Maximal storlek för begärandetext i kB för WAF. | int Begränsningar: Minsta värde = 8 |
mode | Läget för principen. | "Identifiering" "Förebyggande" |
requestBodyCheck | Om WAF ska kunna kontrollera begärandetexten. | boolesk |
requestBodyEnforcement | Om tillåt WAF att framtvinga begränsningar för begärandetext. | boolesk |
requestBodyInspectLimitInKB | Maximal inspektionsgräns i KB för begärandetextgranskning för WAF. | int |
state | Principens tillstånd. | "Inaktiverad" "Aktiverad" |
PolicySettingsLogScrubbing
Name | Beskrivning | Värde |
---|---|---|
scrubbingRules | De regler som tillämpas på loggarna för rensning. | WebApplicationFirewallScrubbingRules[] |
state | Status för loggrensningskonfigurationen. Standardvärdet är Aktiverat. | "Inaktiverad" "Aktiverad" |
WebApplicationFirewallScrubbingRules
Name | Beskrivning | Värde |
---|---|---|
matchVariable | Variabeln som ska rensas från loggarna. | "RequestArgNames" "RequestCookieNames" "RequestHeaderNames" "RequestIPAddress" "RequestJSONArgNames" "RequestPostArgNames" (krävs) |
väljare | När matchVariable är en samling används operatorn för att ange vilka element i samlingen som regeln gäller för. | sträng |
selectorMatchOperator | När matchVariable är en samling använder du väljaren för att ange vilka element i samlingen som regeln gäller för. | "Lika med" "EqualsAny" (krävs) |
state | Definierar tillståndet för loggrensningsregeln. Standardvärdet är Aktiverat. | "Inaktiverad" "Aktiverad" |
Snabbstartsmallar
Följande snabbstartsmallar distribuerar den här resurstypen.
Mall | Description |
---|---|
Skapa en Azure WAF v2 på Azure Application Gateway |
Den här mallen skapar en Azure Web Application Firewall v2 på Azure Application Gateway med två Windows Server 2016 servrar i serverdelspoolen |
AKS-kluster med en NAT-gateway och en Application Gateway |
Det här exemplet visar hur du distribuerar ett AKS-kluster med NAT Gateway för utgående anslutningar och en Application Gateway för inkommande anslutningar. |
Front Door Standard/Premium med Application Gateway ursprung |
Den här mallen skapar en Front Door Standard/Premium och en Application Gateway-instans och använder en NSG- och WAF-princip för att verifiera att trafiken har kommit via Front Door-ursprunget. |
Front Door med Container Instances och Application Gateway |
Den här mallen skapar en Front Door Standard/Premium med en containergrupp och Application Gateway. |
AKS-kluster med Application Gateway ingresskontrollant |
Det här exemplet visar hur du distribuerar ett AKS-kluster med Application Gateway, Application Gateway ingresskontrollant, Azure Container Registry, Log Analytics och Key Vault |
Application Gateway med WAF och brandväggsprincip |
Den här mallen skapar en Application Gateway med WAF konfigurerat tillsammans med en brandväggsprincip |
Resursdefinition för Terraform (AzAPI-provider)
Resurstypen ApplicationGatewayWebApplicationFirewallPolicies kan distribueras med åtgärder som mål:
- Resursgrupper
En lista över ändrade egenskaper i varje API-version finns i ändringsloggen.
Resursformat
Om du vill skapa en Resurs för Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies lägger du till följande Terraform i mallen.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2023-06-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
body = jsonencode({
properties = {
customRules = [
{
action = "string"
groupByUserSession = [
{
groupByVariables = [
{
variableName = "string"
}
]
}
]
matchConditions = [
{
matchValues = [
"string"
]
matchVariables = [
{
selector = "string"
variableName = "string"
}
]
negationConditon = bool
operator = "string"
transforms = [
"string"
]
}
]
name = "string"
priority = int
rateLimitDuration = "string"
rateLimitThreshold = int
ruleType = "string"
state = "string"
}
]
managedRules = {
exclusions = [
{
exclusionManagedRuleSets = [
{
ruleGroups = [
{
ruleGroupName = "string"
rules = [
{
ruleId = "string"
}
]
}
]
ruleSetType = "string"
ruleSetVersion = "string"
}
]
matchVariable = "string"
selector = "string"
selectorMatchOperator = "string"
}
]
managedRuleSets = [
{
ruleGroupOverrides = [
{
ruleGroupName = "string"
rules = [
{
action = "string"
ruleId = "string"
state = "string"
}
]
}
]
ruleSetType = "string"
ruleSetVersion = "string"
}
]
}
policySettings = {
customBlockResponseBody = "string"
customBlockResponseStatusCode = int
fileUploadEnforcement = bool
fileUploadLimitInMb = int
logScrubbing = {
scrubbingRules = [
{
matchVariable = "string"
selector = "string"
selectorMatchOperator = "string"
state = "string"
}
]
state = "string"
}
maxRequestBodySizeInKb = int
mode = "string"
requestBodyCheck = bool
requestBodyEnforcement = bool
requestBodyInspectLimitInKB = int
state = "string"
}
}
})
}
Egenskapsvärden
ApplicationGatewayWebApplicationFirewallPolicies
Name | Beskrivning | Värde |
---|---|---|
typ | Resurstypen | "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2023-06-01" |
name | Resursnamnet | sträng (krävs) |
location | Resursplats. | sträng |
parent_id | Om du vill distribuera till en resursgrupp använder du ID:t för den resursgruppen. | sträng (krävs) |
tags | Resurstaggar. | Ordlista med taggnamn och värden. |
properties | Egenskaper för brandväggsprincipen för webbaserade program. | WebApplicationFirewallPolicyPropertiesFormat |
WebApplicationFirewallPolicyPropertiesFormat
Name | Beskrivning | Värde |
---|---|---|
customRules | De anpassade reglerna i principen. | WebApplicationFirewallCustomRule[] |
managedRules | Beskriver managedRules-strukturen. | ManagedRulesDefinition (krävs) |
policyInställningar | PolicyInställningar för principen. | PolicyInställningar |
WebApplicationFirewallCustomRule
Name | Beskrivning | Värde |
---|---|---|
åtgärd | Typ av åtgärder. | "Tillåt" "Blockera" "JSChallenge" "Log" (krävs) |
groupByUserSession | Lista över användarsessionsidentifierare gruppera efter satser. | GroupByUserSession[] |
matchConditions | Lista över matchningsvillkor. | MatchCondition[] (krävs) |
name | Namnet på den resurs som är unik i en princip. Det här namnet kan användas för att komma åt resursen. | sträng Begränsningar: Maxlängd = 128 |
prioritet | Regelns prioritet. Regler med ett lägre värde utvärderas före regler med ett högre värde. | int (obligatoriskt) |
rateLimitDuration | Varaktighet för vilken princip för hastighetsbegränsning ska tillämpas. Gäller endast när ruleType är RateLimitRule. | "FiveMins" "OneMin" |
rateLimitThreshold | Tröskelvärde för hastighetsbegränsning som ska tillämpas om ruleType är RateLimitRule. Måste vara större än eller lika med 1 | int |
ruleType | Regeltypen. | "Ogiltigt" "MatchRule" "RateLimitRule" (krävs) |
state | Beskriver om den anpassade regeln är i aktiverat eller inaktiverat tillstånd. Standardvärdet är Aktiverad om det inte anges. | "Inaktiverad" "Aktiverad" |
GroupByUserSession
Name | Beskrivning | Värde |
---|---|---|
groupByVariables | Lista över variabler för gruppera efter-sats. | GroupByVariable[] (krävs) |
GroupByVariable
Name | Beskrivning | Värde |
---|---|---|
variableName | Variabel för användarsessionssatser. | "ClientAddr" "GeoLocation" "Ingen" (obligatoriskt) |
MatchCondition
Name | Beskrivning | Värde |
---|---|---|
matchValues | Matcha värde. | string[] (krävs) |
matchVariables | Lista över matchningsvariabler. | MatchVariable[] (krävs) |
negationConditon | Oavsett om detta är negatevillkor eller inte. | boolesk |
operator | Operatorn som ska matchas. | "Alla" "BeginsWith" "Innehåller" "EndsWith" "Lika" "GeoMatch" "GreaterThan" "GreaterThanOrEqual" "IPMatch" "LessThan" "LessThanOrEqual" "Regex" (krävs) |
Förvandlar | Lista över transformeringar. | Strängmatris som innehåller något av: "HtmlEntityDecode" "Gemener" "RemoveNulls" "Trimma" "Versaler" "UrlDecode" "UrlEncode" |
MatchVariable
Name | Beskrivning | Värde |
---|---|---|
väljare | Väljaren för matchningsvariabeln. | sträng |
variableName | Matcha variabel. | "PostArgs" "QueryString" "RemoteAddr" "RequestBody" "RequestCookies" "RequestHeaders" "RequestMethod" "RequestUri" (krävs) |
ManagedRulesDefinition
Name | Beskrivning | Värde |
---|---|---|
Undantag | Undantag som tillämpas på principen. | OwaspCrsExclusionEntry[] |
managedRuleSets | De hanterade regeluppsättningar som är associerade med principen. | ManagedRuleSet[] (krävs) |
OwaspCrsExclusionEntry
Name | Beskrivning | Värde |
---|---|---|
exclusionManagedRuleSets | De hanterade regeluppsättningar som är associerade med undantaget. | ExclusionManagedRuleSet[] |
matchVariable | Variabeln som ska undantas. | "RequestArgKeys" "RequestArgNames" "RequestArgValues" "RequestCookieKeys" "RequestCookieNames" "RequestCookieValues" "RequestHeaderKeys" "RequestHeaderNames" "RequestHeaderValues" (krävs) |
väljare | När matchVariable är en samling används operatorn för att ange vilka element i samlingen som det här undantaget gäller för. | sträng (krävs) |
selectorMatchOperator | När matchVariable är en samling använder du väljaren för att ange vilka element i samlingen som undantaget gäller för. | "Innehåller" "EndsWith" "Lika med" "Lika medAny" "StartsWith" (krävs) |
ExclusionManagedRuleSet
Name | Beskrivning | Värde |
---|---|---|
ruleGroups | Definierar de regelgrupper som ska tillämpas på regeluppsättningen. | ExclusionManagedRuleGroup[] |
ruleSetType | Definierar vilken regeluppsättningstyp som ska användas. | sträng (krävs) |
ruleSetVersion | Definierar vilken version av regeluppsättningen som ska användas. | sträng (krävs) |
ExclusionManagedRuleGroup
Name | Beskrivning | Värde |
---|---|---|
ruleGroupName | Den hanterade regelgruppen för exkludering. | sträng (krävs) |
regler | Lista över regler som ska undantas. Om ingen anges undantas alla regler i gruppen. | ExclusionManagedRule[] |
ExclusionManagedRule
Name | Beskrivning | Värde |
---|---|---|
ruleId | Identifierare för den hanterade regeln. | sträng (krävs) |
ManagedRuleSet
Name | Beskrivning | Värde |
---|---|---|
ruleGroupOverrides | Definierar regelgruppens åsidosättningar som ska tillämpas på regeluppsättningen. | ManagedRuleGroupOverride[] |
ruleSetType | Definierar den regeluppsättningstyp som ska användas. | sträng (krävs) |
ruleSetVersion | Definierar den version av regeluppsättningen som ska användas. | sträng (krävs) |
ManagedRuleGroupOverride
Name | Beskrivning | Värde |
---|---|---|
ruleGroupName | Den hanterade regelgrupp som ska åsidosättas. | sträng (krävs) |
regler | Lista över regler som ska inaktiveras. Om ingen anges inaktiveras alla regler i gruppen. | ManagedRuleOverride[] |
ManagedRuleOverride
Name | Beskrivning | Värde |
---|---|---|
åtgärd | Beskriver åsidosättningsåtgärden som ska tillämpas när regeln matchar. | "Tillåt" "AnomalyScoring" "Blockera" "JSChallenge" "Logg" |
ruleId | Identifierare för den hanterade regeln. | sträng (krävs) |
state | Tillståndet för den hanterade regeln. Standardvärdet är Inaktiverad om det inte anges. | "Inaktiverad" "Aktiverad" |
Principinställningar
Name | Beskrivning | Värde |
---|---|---|
customBlockResponseBody | Om åtgärdstypen är blockerad kan kunden åsidosätta svarstexten. Brödtexten måste anges i base64-kodning. | sträng Begränsningar: Maximal längd = 32768 Mönster = ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$ |
customBlockResponseStatusCode | Om åtgärdstypen är blockerad kan kunden åsidosätta svarsstatuskoden. | int Begränsningar: Minsta värde = 0 |
fileUploadEnforcement | Om tillåt WAF att framtvinga filuppladdningsgränser. | boolesk |
fileUploadLimitInMb | Maximal filuppladdningsstorlek i Mb för WAF. | int Begränsningar: Minsta värde = 0 |
logScrubbing | Rensa känsliga loggfält | PolicySettingsLogScrubbing |
maxRequestBodySizeInKb | Maximal storlek för begärandetext i kB för WAF. | int Begränsningar: Minsta värde = 8 |
mode | Läget för principen. | "Identifiering" "Förebyggande" |
requestBodyCheck | Om WAF ska kunna kontrollera begärandetexten. | boolesk |
requestBodyEnforcement | Om tillåt WAF att framtvinga begränsningar för begärandetext. | boolesk |
requestBodyInspectLimitInKB | Maximal inspektionsgräns i KB för kontroll av begärandetext för WAF. | int |
state | Principens tillstånd. | "Inaktiverad" "Aktiverad" |
PolicySettingsLogScrubbing
Name | Beskrivning | Värde |
---|---|---|
scrubbingRules | De regler som tillämpas på loggarna för rensning. | WebApplicationFirewallScrubbingRules[] |
state | Status för loggrensningskonfigurationen. Standardvärdet är Aktiverat. | "Inaktiverad" "Aktiverad" |
WebApplicationFirewallScrubbingRules
Name | Beskrivning | Värde |
---|---|---|
matchVariable | Variabeln som ska rensas från loggarna. | "RequestArgNames" "RequestCookieNames" "RequestHeaderNames" "RequestIPAddress" "RequestJSONArgNames" "RequestPostArgNames" (krävs) |
väljare | När matchVariable är en samling används operatorn för att ange vilka element i samlingen som regeln gäller för. | sträng |
selectorMatchOperator | När matchVariable är en samling använder du väljaren för att ange vilka element i samlingen som regeln gäller för. | "Lika med" "EqualsAny" (krävs) |
state | Definierar tillståndet för loggrensningsregeln. Standardvärdet är Aktiverat. | "Inaktiverad" "Aktiverad" |