Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
- più recenti
- 2025-07-01
- 2025-05-01
- 2025-03-01
- 2025-01-01
- 2024-10-01
- 2024-07-01
- 2024-05-01
- 2024-03-01
- 2024-01-01
- 2023-11-01
- 2023-09-01
- 2023-06-01
- 2023-05-01
- 2023-04-01
- 2023-02-01
- 2022-11-01
- 2022-09-01
- 2022-07-01
- 2022-05-01
- 01-01-2022
- 2021-08-01
- 2021-05-01
- 2021-03-01
- 2021-02-01
- 2020-11-01
- 2020-08-01
- 2020-07-01
- 2020-06-01
- 2020-05-01
- 2020-04-01
- 2020-03-01
- 2019-12-01
- 2019-11-01
- 2019-09-01
- 2019-08-01
- 2019-07-01
- 2019-06-01
- 2019-04-01
- 2019-02-01
- 2018-12-01
- 2018-10-01
Definizione di risorsa Bicep
Il tipo di risorsa ApplicationGatewayWebApplicationFirewallPolicies può essere distribuito con operazioni destinate a:
Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.
Esempi di utilizzo
Esempi bicep
Esempio di base di distribuzione dell'istanza dei criteri di Web application firewall di Azure.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource applicationGatewayWebApplicationFirewallPolicy 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2022-07-01' = {
name: resourceName
location: location
properties: {
customRules: []
managedRules: {
exclusions: []
managedRuleSets: [
{
ruleGroupOverrides: []
ruleSetType: 'OWASP'
ruleSetVersion: '3.1'
}
]
}
policySettings: {
fileUploadLimitInMb: 100
maxRequestBodySizeInKb: 128
mode: 'Detection'
requestBodyCheck: true
state: 'Enabled'
}
}
}
Moduli verificati di Azure
Per distribuire questo tipo di risorsa, è possibile usare moduli verificati di Azure.
| Modulo | Descrizione |
|---|---|
| web application firewall (WAF) del gateway applicazione | Modulo di risorse AVM per i criteri web application firewall (WAF) del gateway applicazione |
Esempi di avvio rapido di Azure
I modelli di avvio rapido di Azure seguenti contengono esempi Bicep per la distribuzione di questo tipo di risorsa.
| File bicipite | Descrizione |
|---|---|
| cluster del servizio Azure Kubernetes con un gateway NAT e un gateway applicazione | Questo esempio illustra come distribuire un cluster del servizio Azure Kubernetes con il gateway NAT per le connessioni in uscita e un gateway applicazione per le connessioni in ingresso. |
| cluster del servizio Azure Kubernetes con il controller di ingresso del gateway applicazione | Questo esempio illustra come distribuire un cluster del servizio Azure Kubernetes con il gateway applicazione, il controller di ingresso del gateway applicazione, registro Azure Container, Log Analytics e Key Vault |
| gateway applicazione per di routing basato sul percorso URL | Questo modello crea un gateway applicazione e lo configura per il routing basato sul percorso URL. |
| gateway applicazione con waf e criteri firewall | Questo modello crea un gateway applicazione con WAF configurato insieme a un criterio firewall |
| Creare un WAF di Azure v2 nel gateway applicazione di Azure | Questo modello crea un web application firewall di Azure v2 nel gateway applicazione di Azure con due server Windows Server 2016 nel pool back-end |
| Frontdoor Standard/Premium con origine del gateway applicazione | Questo modello crea un'istanza di Frontdoor Standard/Premium e un'istanza del gateway applicazione e usa un criterio NSG e WAF per verificare che il traffico provenga dall'origine di Frontdoor. |
| Frontdoor con istanze di Contenitore e gateway applicazione | Questo modello crea un frontdoor Standard/Premium con un gruppo di contenitori e un gateway applicazione. |
Formato risorsa
Per creare una risorsa Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, aggiungere il bicep seguente al modello.
resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2025-07-01' = {
location: 'string'
name: 'string'
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: {
exceptions: [
{
exceptionManagedRuleSets: [
{
ruleGroups: [
{
ruleGroupName: 'string'
rules: [
{
ruleId: 'string'
}
]
}
]
ruleSetType: 'string'
ruleSetVersion: 'string'
}
]
matchVariable: 'string'
selector: 'string'
selectorMatchOperator: 'string'
valueMatchOperator: 'string'
values: [
'string'
]
}
]
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'
sensitivity: 'string'
state: 'string'
}
]
}
]
ruleSetType: 'string'
ruleSetVersion: 'string'
}
]
}
policySettings: {
captchaExpirationInMins: int
customBlockResponseBody: 'string'
customBlockResponseStatusCode: int
fileUploadEnforcement: bool
fileUploadLimitInMb: int
jsChallengeCookieExpirationInMins: 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'
}
}
tags: {
{customized property}: 'string'
}
}
Valori delle proprietà
Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies
| Nome | Descrizione | Valore |
|---|---|---|
| ubicazione | Percorso della risorsa. | corda |
| nome | Nome della risorsa | corda Vincoli: Lunghezza massima = 128 (obbligatorio) |
| proprietà | Proprietà dei criteri web application firewall. | WebApplicationFirewallPolicyPropertiesFormat |
| Tag | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
CommonResourceTags
| Nome | Descrizione | Valore |
|---|
ExceptionEntry
| Nome | Descrizione | Valore |
|---|---|---|
| exceptionManagedRuleSets | Set di regole gestite associati all'eccezione. | ExclusionManagedRuleSet[] |
| matchVariable | Variabile in cui viene valutata la condizione di eccezione | 'RemoteAddr' 'Intestazione richiesta' 'RequestURI' (obbligatorio) |
| selettore | Quando la corrispondenzaVariable punta a una coppia chiave-valore ,ad esempio RequestHeader, identifica la chiave. | corda |
| selectorMatchOperator | Quando la corrispondenzaVariable punta a una coppia chiave-valore (ad esempio, RequestHeader), questa funzione viene eseguita sul selettore | 'Contiene' 'Finisce con' 'Uguale' 'Inizia con' |
| valueMatchOperator | Opera sui valori consentiti per matchVariable | 'Contiene' 'Finisce con' 'Uguale' 'IPMatch' 'StartsWith' (obbligatorio) |
| valori | Valori consentiti per matchVariable | stringa[] |
ExclusionManagedRule
| Nome | Descrizione | Valore |
|---|---|---|
| ruleId | Identificatore per la regola gestita. | stringa (obbligatorio) |
Gruppo di regole gestito da esclusione
| Nome | Descrizione | Valore |
|---|---|---|
| NomeGruppoDiRegole | Gruppo di regole gestite per l'esclusione. | stringa (obbligatorio) |
| norme | Elenco di regole che verranno escluse. Se non è specificato alcun valore, tutte le regole del gruppo verranno escluse. | ExclusionManagedRule[] |
Set di regole ExclusionManagedRuleSet
| Nome | Descrizione | Valore |
|---|---|---|
| ruleGroups | Definisce i gruppi di regole da applicare al set di regole. | ExclusionManagedRuleGroup[] |
| ruleSetType | Definisce il tipo di set di regole da usare. | stringa (obbligatorio) |
| ruleSetVersion | Definisce la versione del set di regole da usare. | stringa (obbligatorio) |
GroupByUserSession
| Nome | Descrizione | Valore |
|---|---|---|
| groupByVariables | Elenco di variabili della clausola group by. | GroupByVariable[] (obbligatorio) |
GroupByVariable
| Nome | Descrizione | Valore |
|---|---|---|
| nomevariabile | Variabile della clausola User Session. | 'ClientAddr' 'ClientAddrXFFHeader' 'Geolocalizzazione' 'GeoLocalizzazioneXFFHeader' 'Nessuno' (obbligatorio) |
ManagedRuleGroupOverride
| Nome | Descrizione | Valore |
|---|---|---|
| NomeGruppoDiRegole | Gruppo di regole gestite di cui eseguire l'override. | stringa (obbligatorio) |
| norme | Elenco di regole che verranno disabilitate. Se non è specificato alcun valore, tutte le regole nel gruppo verranno disabilitate. | ManagedRuleOverride[] |
ManagedRuleOverride
| Nome | Descrizione | Valore |
|---|---|---|
| azione | Descrive l'azione di override da applicare quando la regola corrisponde. | 'Consenti' 'Punteggio anomalia' 'Blocca' 'CAPTCHA' 'JSChallenge' 'Registro' |
| ruleId | Identificatore per la regola gestita. | stringa (obbligatorio) |
| sensibilità | Descrive la riservatezza di override da applicare quando la regola corrisponde. | 'Alto' 'Basso' 'Medio' |
| stato | Stato della regola gestita. Il valore predefinito è Disabilitato se non specificato. | 'Disabilitato' 'Abilitato' |
ManagedRulesDefinition
| Nome | Descrizione | Valore |
|---|---|---|
| Eccezioni | Eccezioni applicate ai criteri. | exceptionEntry[] |
| Esclusioni | Esclusioni applicate ai criteri. | OwaspCrsExclusionEntry[] |
| managedRuleSets | Set di regole gestite associati ai criteri. | ManagedRuleSet[] (obbligatorio) |
Set di regole gestito
| Nome | Descrizione | Valore |
|---|---|---|
| ruleGroupOverride | Definisce le sostituzioni del gruppo di regole da applicare al set di regole. | ManagedRuleGroupOverride[] |
| ruleSetType | Definisce il tipo di set di regole da usare. | stringa (obbligatorio) |
| ruleSetVersion | Definisce la versione del set di regole da usare. | stringa (obbligatorio) |
Condizione di corrispondenza
| Nome | Descrizione | Valore |
|---|---|---|
| Valori di corrispondenza | Valore della corrispondenza. | string[] (obbligatorio) |
| matchVariables | Elenco di variabili di corrispondenza. | MatchVariable[] (obbligatorio) |
| negazioneConditon | Indica se si tratta di una condizione negata o meno. | Bool |
| operatore | Operatore di cui trovare la corrispondenza. | 'Qualsiasi' 'Inizia con' 'Contiene' 'Finisce con' 'Uguale' 'Corrispondenza geografica' 'Più grande di' 'Più grande diOUguale' 'IPMatch' 'Meno di' 'MenoThanOrEqual' 'Regex' (obbligatorio) |
| Trasforma | Elenco di trasformazioni. | Matrice di stringhe contenente uno dei seguenti elementi: 'HtmlEntityDecode' 'Minuscolo' 'RimuoviNulls' 'Tagliare' 'Maiuscolo' 'Decodifica URL' 'CodificaUrl' |
Variabile Match
| Nome | Descrizione | Valore |
|---|---|---|
| selettore | Selettore della variabile di corrispondenza. | corda |
| nomevariabile | Corrispondenza variabile. | 'PostArgs' 'QueryString' 'RemoteAddr' 'Corpo della richiesta' 'RequestCookies' 'Intestazioni richiesta' 'Metodo di richiesta' 'RequestUri' (obbligatorio) |
OwaspCrsExclusionEntry
| Nome | Descrizione | Valore |
|---|---|---|
| exclusionManagedRuleSets | Set di regole gestite associati all'esclusione. | ExclusionManagedRuleSet[] |
| matchVariable | Variabile da escludere. | 'RequestArgKeys' 'RequestArgNames' 'RequestArgValues' 'RequestCookieKeys' 'RequestCookieNames' 'RequestCookieValues' 'RequestHeaderKeys' 'RequestHeaderNames' 'RequestHeaderValues' (obbligatorio) |
| selettore | Quando matchVariable è una raccolta, l'operatore utilizzato per specificare gli elementi nella raccolta a cui si applica questa esclusione. | stringa (obbligatorio) |
| selectorMatchOperator | Quando matchVariable è una raccolta, operare sul selettore per specificare gli elementi nella raccolta a cui si applica questa esclusione. | 'Contiene' 'Finisce con' 'Uguale' 'Uguale a Qualsiasi' 'StartsWith' (obbligatorio) |
PolicySettings
| Nome | Descrizione | Valore |
|---|---|---|
| captchaExpirationInMins | Firewall CAPTCHA Cookie del firewall Web in minuti. | Int Vincoli: Valore minimo = 5 Valore massimo = 1440 |
| customBlockResponseBody | Se il tipo di azione è bloccato, il cliente può eseguire l'override del corpo della risposta. Il corpo deve essere specificato nella codifica Base64. | corda Vincoli: Lunghezza massima = 32768 Modello = ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$ |
| customBlockResponseStatusCode | Se il tipo di azione è bloccato, il cliente può eseguire l'override del codice di stato della risposta. | Int Vincoli: Valore minimo = 0 |
| fileUploadEnforcement | Indica se consentire a WAF di applicare i limiti di caricamento dei file. | Bool |
| fileUploadLimitInMb | Dimensioni massime di caricamento file in Mb per WAF. | Int Vincoli: Valore minimo = 0 |
| jsChallengeCookieExpirationInMins | Tempo di scadenza del cookie di verifica javaScript di Web application firewall in minuti. | Int Vincoli: Valore minimo = 5 Valore massimo = 1440 |
| logScrubbing | Per eseguire lo scrubing dei campi di log sensibili | PolicySettingsLogScrubbing |
| maxRequestBodySizeInKb | Dimensioni massime del corpo della richiesta in Kb per WAF. | Int Vincoli: Valore minimo = 8 |
| modo | Modalità dei criteri. | 'Rilevamento' 'Prevenzione' |
| requestBodyCheck | Indica se consentire a WAF di controllare il corpo della richiesta. | Bool |
| requestBodyEnforcement | Indica se consentire a WAF di applicare i limiti del corpo della richiesta. | Bool |
| requestBodyInspectLimitInKB | Limite massimo di ispezione in KB per l'ispezione del corpo della richiesta per WAF. | Int |
| stato | Stato del criterio. | 'Disabilitato' 'Abilitato' |
PolicySettingsLogScrubbing
| Nome | Descrizione | Valore |
|---|---|---|
| scrubbingRegole | Regole applicate ai log per lo scrubbing. | WebApplicationFirewallScrubbingRules[] |
| stato | Stato della configurazione dello scrubbing del log. Il valore predefinito è Enabled. | 'Disabilitato' 'Abilitato' |
WebApplicationFirewallCustomRule
| Nome | Descrizione | Valore |
|---|---|---|
| azione | Tipo di azioni. | 'Consenti' 'Blocca' 'CAPTCHA' 'JSChallenge' 'Log' (obbligatorio) |
| groupByUserSession | Elenco dei gruppi di identificatori di sessione utente per clausole. | GroupByUserSession[] |
| matchConditions | Elenco delle condizioni di corrispondenza. | MatchCondition [] (obbligatorio) |
| nome | Nome della risorsa univoca all'interno di un criterio. Questo nome può essere usato per accedere alla risorsa. | corda Vincoli: Lunghezza massima = 128 |
| priorità | Priorità della regola. Le regole con un valore inferiore verranno valutate prima delle regole con un valore superiore. | int (obbligatorio) |
| rateLimitDuration | Durata in cui verranno applicati i criteri limite di frequenza. Si applica solo quando ruleType è RateLimitRule. | 'Cinque minuti' 'UnoMin' |
| rateLimitThreshold | Soglia limite di frequenza da applicare nel caso in cui ruleType sia RateLimitRule. Deve essere maggiore o uguale a 1 | Int |
| ruleType | Tipo di regola. | 'Non valido' 'Regola di partita' 'RateLimitRule' (obbligatorio) |
| stato | Descrive se la regola personalizzata è in stato abilitato o disabilitato. Il valore predefinito è Abilitato se non specificato. | 'Disabilitato' 'Abilitato' |
WebApplicationFirewallPolicyPropertiesFormat
| Nome | Descrizione | Valore |
|---|---|---|
| customRegole | Regole personalizzate all'interno dei criteri. | WebApplicationFirewallCustomRule[] |
| managedRules | Descrive la struttura managedRules. | ManagedRulesDefinition (obbligatorio) |
| impostazioniDefinizioni | PolicySettings per i criteri. | PolicySettings |
WebApplicationFirewallScrubbingRules
| Nome | Descrizione | Valore |
|---|---|---|
| matchVariable | Variabile da pulire dai log. | 'RequestArgNames' 'RequestCookieNames' 'RequestHeaderNames' 'RequestIPAddress' 'RequestJSONArgNames' 'RequestPostArgNames' (obbligatorio) |
| selettore | Quando matchVariable è una raccolta, l'operatore utilizzato per specificare gli elementi nella raccolta a cui si applica questa regola. | corda |
| selectorMatchOperator | Quando matchVariable è una raccolta, operare sul selettore per specificare gli elementi nella raccolta a cui si applica questa regola. | 'Uguale' 'EqualsAny' (obbligatorio) |
| stato | Definisce lo stato della regola di scrubbing del log. Il valore predefinito è Enabled. | 'Disabilitato' 'Abilitato' |
Definizione di risorsa del modello di Resource Manager
Il tipo di risorsa ApplicationGatewayWebApplicationFirewallPolicies può essere distribuito con operazioni destinate a:
- Gruppi di risorse - Vedi comandi di distribuzione dei gruppi di risorse Per un elenco delle proprietà modificate in ciascuna versione API, vedi registro delle modifiche.
Esempi di utilizzo
Modelli di avvio rapido di Azure
I modelli di avvio rapido di Azure seguenti distribuire questo tipo di risorsa.
| Sagoma | Descrizione |
|---|---|
|
cluster del servizio Azure Kubernetes con un gateway NAT e un gateway applicazione |
Questo esempio illustra come distribuire un cluster del servizio Azure Kubernetes con il gateway NAT per le connessioni in uscita e un gateway applicazione per le connessioni in ingresso. |
|
cluster del servizio Azure Kubernetes con il controller di ingresso del gateway applicazione |
Questo esempio illustra come distribuire un cluster del servizio Azure Kubernetes con il gateway applicazione, il controller di ingresso del gateway applicazione, registro Azure Container, Log Analytics e Key Vault |
|
gateway applicazione per di routing basato sul percorso URL |
Questo modello crea un gateway applicazione e lo configura per il routing basato sul percorso URL. |
|
gateway applicazione con waf e criteri firewall |
Questo modello crea un gateway applicazione con WAF configurato insieme a un criterio firewall |
|
Creare un WAF di Azure v2 nel gateway applicazione di Azure |
Questo modello crea un web application firewall di Azure v2 nel gateway applicazione di Azure con due server Windows Server 2016 nel pool back-end |
|
Frontdoor Standard/Premium con origine del gateway applicazione |
Questo modello crea un'istanza di Frontdoor Standard/Premium e un'istanza del gateway applicazione e usa un criterio NSG e WAF per verificare che il traffico provenga dall'origine di Frontdoor. |
|
Frontdoor con istanze di Contenitore e gateway applicazione |
Questo modello crea un frontdoor Standard/Premium con un gruppo di contenitori e un gateway applicazione. |
Formato risorsa
Per creare una risorsa Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, aggiungere il codice JSON seguente al modello.
{
"type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
"apiVersion": "2025-07-01",
"name": "string",
"location": "string",
"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": {
"exceptions": [
{
"exceptionManagedRuleSets": [
{
"ruleGroups": [
{
"ruleGroupName": "string",
"rules": [
{
"ruleId": "string"
}
]
}
],
"ruleSetType": "string",
"ruleSetVersion": "string"
}
],
"matchVariable": "string",
"selector": "string",
"selectorMatchOperator": "string",
"valueMatchOperator": "string",
"values": [ "string" ]
}
],
"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",
"sensitivity": "string",
"state": "string"
}
]
}
],
"ruleSetType": "string",
"ruleSetVersion": "string"
}
]
},
"policySettings": {
"captchaExpirationInMins": "int",
"customBlockResponseBody": "string",
"customBlockResponseStatusCode": "int",
"fileUploadEnforcement": "bool",
"fileUploadLimitInMb": "int",
"jsChallengeCookieExpirationInMins": "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"
}
},
"tags": {
"{customized property}": "string"
}
}
Valori delle proprietà
Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies
| Nome | Descrizione | Valore |
|---|---|---|
| versione dell'API | Versione dell'API | '2025-07-01' |
| ubicazione | Percorso della risorsa. | corda |
| nome | Nome della risorsa | corda Vincoli: Lunghezza massima = 128 (obbligatorio) |
| proprietà | Proprietà dei criteri web application firewall. | WebApplicationFirewallPolicyPropertiesFormat |
| Tag | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
| digitare | Tipo di risorsa | 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies' |
CommonResourceTags
| Nome | Descrizione | Valore |
|---|
ExceptionEntry
| Nome | Descrizione | Valore |
|---|---|---|
| exceptionManagedRuleSets | Set di regole gestite associati all'eccezione. | ExclusionManagedRuleSet[] |
| matchVariable | Variabile in cui viene valutata la condizione di eccezione | 'RemoteAddr' 'Intestazione richiesta' 'RequestURI' (obbligatorio) |
| selettore | Quando la corrispondenzaVariable punta a una coppia chiave-valore ,ad esempio RequestHeader, identifica la chiave. | corda |
| selectorMatchOperator | Quando la corrispondenzaVariable punta a una coppia chiave-valore (ad esempio, RequestHeader), questa funzione viene eseguita sul selettore | 'Contiene' 'Finisce con' 'Uguale' 'Inizia con' |
| valueMatchOperator | Opera sui valori consentiti per matchVariable | 'Contiene' 'Finisce con' 'Uguale' 'IPMatch' 'StartsWith' (obbligatorio) |
| valori | Valori consentiti per matchVariable | stringa[] |
ExclusionManagedRule
| Nome | Descrizione | Valore |
|---|---|---|
| ruleId | Identificatore per la regola gestita. | stringa (obbligatorio) |
Gruppo di regole gestito da esclusione
| Nome | Descrizione | Valore |
|---|---|---|
| NomeGruppoDiRegole | Gruppo di regole gestite per l'esclusione. | stringa (obbligatorio) |
| norme | Elenco di regole che verranno escluse. Se non è specificato alcun valore, tutte le regole del gruppo verranno escluse. | ExclusionManagedRule[] |
Set di regole ExclusionManagedRuleSet
| Nome | Descrizione | Valore |
|---|---|---|
| ruleGroups | Definisce i gruppi di regole da applicare al set di regole. | ExclusionManagedRuleGroup[] |
| ruleSetType | Definisce il tipo di set di regole da usare. | stringa (obbligatorio) |
| ruleSetVersion | Definisce la versione del set di regole da usare. | stringa (obbligatorio) |
GroupByUserSession
| Nome | Descrizione | Valore |
|---|---|---|
| groupByVariables | Elenco di variabili della clausola group by. | GroupByVariable[] (obbligatorio) |
GroupByVariable
| Nome | Descrizione | Valore |
|---|---|---|
| nomevariabile | Variabile della clausola User Session. | 'ClientAddr' 'ClientAddrXFFHeader' 'Geolocalizzazione' 'GeoLocalizzazioneXFFHeader' 'Nessuno' (obbligatorio) |
ManagedRuleGroupOverride
| Nome | Descrizione | Valore |
|---|---|---|
| NomeGruppoDiRegole | Gruppo di regole gestite di cui eseguire l'override. | stringa (obbligatorio) |
| norme | Elenco di regole che verranno disabilitate. Se non è specificato alcun valore, tutte le regole nel gruppo verranno disabilitate. | ManagedRuleOverride[] |
ManagedRuleOverride
| Nome | Descrizione | Valore |
|---|---|---|
| azione | Descrive l'azione di override da applicare quando la regola corrisponde. | 'Consenti' 'Punteggio anomalia' 'Blocca' 'CAPTCHA' 'JSChallenge' 'Registro' |
| ruleId | Identificatore per la regola gestita. | stringa (obbligatorio) |
| sensibilità | Descrive la riservatezza di override da applicare quando la regola corrisponde. | 'Alto' 'Basso' 'Medio' |
| stato | Stato della regola gestita. Il valore predefinito è Disabilitato se non specificato. | 'Disabilitato' 'Abilitato' |
ManagedRulesDefinition
| Nome | Descrizione | Valore |
|---|---|---|
| Eccezioni | Eccezioni applicate ai criteri. | exceptionEntry[] |
| Esclusioni | Esclusioni applicate ai criteri. | OwaspCrsExclusionEntry[] |
| managedRuleSets | Set di regole gestite associati ai criteri. | ManagedRuleSet[] (obbligatorio) |
Set di regole gestito
| Nome | Descrizione | Valore |
|---|---|---|
| ruleGroupOverride | Definisce le sostituzioni del gruppo di regole da applicare al set di regole. | ManagedRuleGroupOverride[] |
| ruleSetType | Definisce il tipo di set di regole da usare. | stringa (obbligatorio) |
| ruleSetVersion | Definisce la versione del set di regole da usare. | stringa (obbligatorio) |
Condizione di corrispondenza
| Nome | Descrizione | Valore |
|---|---|---|
| Valori di corrispondenza | Valore della corrispondenza. | string[] (obbligatorio) |
| matchVariables | Elenco di variabili di corrispondenza. | MatchVariable[] (obbligatorio) |
| negazioneConditon | Indica se si tratta di una condizione negata o meno. | Bool |
| operatore | Operatore di cui trovare la corrispondenza. | 'Qualsiasi' 'Inizia con' 'Contiene' 'Finisce con' 'Uguale' 'Corrispondenza geografica' 'Più grande di' 'Più grande diOUguale' 'IPMatch' 'Meno di' 'MenoThanOrEqual' 'Regex' (obbligatorio) |
| Trasforma | Elenco di trasformazioni. | Matrice di stringhe contenente uno dei seguenti elementi: 'HtmlEntityDecode' 'Minuscolo' 'RimuoviNulls' 'Tagliare' 'Maiuscolo' 'Decodifica URL' 'CodificaUrl' |
Variabile Match
| Nome | Descrizione | Valore |
|---|---|---|
| selettore | Selettore della variabile di corrispondenza. | corda |
| nomevariabile | Corrispondenza variabile. | 'PostArgs' 'QueryString' 'RemoteAddr' 'Corpo della richiesta' 'RequestCookies' 'Intestazioni richiesta' 'Metodo di richiesta' 'RequestUri' (obbligatorio) |
OwaspCrsExclusionEntry
| Nome | Descrizione | Valore |
|---|---|---|
| exclusionManagedRuleSets | Set di regole gestite associati all'esclusione. | ExclusionManagedRuleSet[] |
| matchVariable | Variabile da escludere. | 'RequestArgKeys' 'RequestArgNames' 'RequestArgValues' 'RequestCookieKeys' 'RequestCookieNames' 'RequestCookieValues' 'RequestHeaderKeys' 'RequestHeaderNames' 'RequestHeaderValues' (obbligatorio) |
| selettore | Quando matchVariable è una raccolta, l'operatore utilizzato per specificare gli elementi nella raccolta a cui si applica questa esclusione. | stringa (obbligatorio) |
| selectorMatchOperator | Quando matchVariable è una raccolta, operare sul selettore per specificare gli elementi nella raccolta a cui si applica questa esclusione. | 'Contiene' 'Finisce con' 'Uguale' 'Uguale a Qualsiasi' 'StartsWith' (obbligatorio) |
PolicySettings
| Nome | Descrizione | Valore |
|---|---|---|
| captchaExpirationInMins | Firewall CAPTCHA Cookie del firewall Web in minuti. | Int Vincoli: Valore minimo = 5 Valore massimo = 1440 |
| customBlockResponseBody | Se il tipo di azione è bloccato, il cliente può eseguire l'override del corpo della risposta. Il corpo deve essere specificato nella codifica Base64. | corda Vincoli: Lunghezza massima = 32768 Modello = ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$ |
| customBlockResponseStatusCode | Se il tipo di azione è bloccato, il cliente può eseguire l'override del codice di stato della risposta. | Int Vincoli: Valore minimo = 0 |
| fileUploadEnforcement | Indica se consentire a WAF di applicare i limiti di caricamento dei file. | Bool |
| fileUploadLimitInMb | Dimensioni massime di caricamento file in Mb per WAF. | Int Vincoli: Valore minimo = 0 |
| jsChallengeCookieExpirationInMins | Tempo di scadenza del cookie di verifica javaScript di Web application firewall in minuti. | Int Vincoli: Valore minimo = 5 Valore massimo = 1440 |
| logScrubbing | Per eseguire lo scrubing dei campi di log sensibili | PolicySettingsLogScrubbing |
| maxRequestBodySizeInKb | Dimensioni massime del corpo della richiesta in Kb per WAF. | Int Vincoli: Valore minimo = 8 |
| modo | Modalità dei criteri. | 'Rilevamento' 'Prevenzione' |
| requestBodyCheck | Indica se consentire a WAF di controllare il corpo della richiesta. | Bool |
| requestBodyEnforcement | Indica se consentire a WAF di applicare i limiti del corpo della richiesta. | Bool |
| requestBodyInspectLimitInKB | Limite massimo di ispezione in KB per l'ispezione del corpo della richiesta per WAF. | Int |
| stato | Stato del criterio. | 'Disabilitato' 'Abilitato' |
PolicySettingsLogScrubbing
| Nome | Descrizione | Valore |
|---|---|---|
| scrubbingRegole | Regole applicate ai log per lo scrubbing. | WebApplicationFirewallScrubbingRules[] |
| stato | Stato della configurazione dello scrubbing del log. Il valore predefinito è Enabled. | 'Disabilitato' 'Abilitato' |
WebApplicationFirewallCustomRule
| Nome | Descrizione | Valore |
|---|---|---|
| azione | Tipo di azioni. | 'Consenti' 'Blocca' 'CAPTCHA' 'JSChallenge' 'Log' (obbligatorio) |
| groupByUserSession | Elenco dei gruppi di identificatori di sessione utente per clausole. | GroupByUserSession[] |
| matchConditions | Elenco delle condizioni di corrispondenza. | MatchCondition [] (obbligatorio) |
| nome | Nome della risorsa univoca all'interno di un criterio. Questo nome può essere usato per accedere alla risorsa. | corda Vincoli: Lunghezza massima = 128 |
| priorità | Priorità della regola. Le regole con un valore inferiore verranno valutate prima delle regole con un valore superiore. | int (obbligatorio) |
| rateLimitDuration | Durata in cui verranno applicati i criteri limite di frequenza. Si applica solo quando ruleType è RateLimitRule. | 'Cinque minuti' 'UnoMin' |
| rateLimitThreshold | Soglia limite di frequenza da applicare nel caso in cui ruleType sia RateLimitRule. Deve essere maggiore o uguale a 1 | Int |
| ruleType | Tipo di regola. | 'Non valido' 'Regola di partita' 'RateLimitRule' (obbligatorio) |
| stato | Descrive se la regola personalizzata è in stato abilitato o disabilitato. Il valore predefinito è Abilitato se non specificato. | 'Disabilitato' 'Abilitato' |
WebApplicationFirewallPolicyPropertiesFormat
| Nome | Descrizione | Valore |
|---|---|---|
| customRegole | Regole personalizzate all'interno dei criteri. | WebApplicationFirewallCustomRule[] |
| managedRules | Descrive la struttura managedRules. | ManagedRulesDefinition (obbligatorio) |
| impostazioniDefinizioni | PolicySettings per i criteri. | PolicySettings |
WebApplicationFirewallScrubbingRules
| Nome | Descrizione | Valore |
|---|---|---|
| matchVariable | Variabile da pulire dai log. | 'RequestArgNames' 'RequestCookieNames' 'RequestHeaderNames' 'RequestIPAddress' 'RequestJSONArgNames' 'RequestPostArgNames' (obbligatorio) |
| selettore | Quando matchVariable è una raccolta, l'operatore utilizzato per specificare gli elementi nella raccolta a cui si applica questa regola. | corda |
| selectorMatchOperator | Quando matchVariable è una raccolta, operare sul selettore per specificare gli elementi nella raccolta a cui si applica questa regola. | 'Uguale' 'EqualsAny' (obbligatorio) |
| stato | Definisce lo stato della regola di scrubbing del log. Il valore predefinito è Enabled. | 'Disabilitato' 'Abilitato' |
Definizione di risorsa Terraform (provider AzAPI)
Il tipo di risorsa ApplicationGatewayWebApplicationFirewallPolicies può essere distribuito con operazioni destinate a:
- Gruppi di risorse Per un elenco delle proprietà modificate in ogni versione dell'API, vedi il registro modifiche.
Esempi di utilizzo
Esempi di Terraform
Esempio di base di distribuzione dell'istanza dei criteri di Web application firewall di Azure.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "ApplicationGatewayWebApplicationFirewallPolicy" {
type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2022-07-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
customRules = [
]
managedRules = {
exclusions = [
]
managedRuleSets = [
{
ruleGroupOverrides = [
]
ruleSetType = "OWASP"
ruleSetVersion = "3.1"
},
]
}
policySettings = {
fileUploadLimitInMb = 100
maxRequestBodySizeInKb = 128
mode = "Detection"
requestBodyCheck = true
state = "Enabled"
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
Moduli verificati di Azure
Per distribuire questo tipo di risorsa, è possibile usare moduli verificati di Azure.
| Modulo | Descrizione |
|---|---|
| web application firewall (WAF) del gateway applicazione | Modulo di risorse AVM per i criteri web application firewall (WAF) del gateway applicazione |
Formato risorsa
Per creare una risorsa Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, aggiungere il codice Terraform seguente al modello.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2025-07-01"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
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 = {
exceptions = [
{
exceptionManagedRuleSets = [
{
ruleGroups = [
{
ruleGroupName = "string"
rules = [
{
ruleId = "string"
}
]
}
]
ruleSetType = "string"
ruleSetVersion = "string"
}
]
matchVariable = "string"
selector = "string"
selectorMatchOperator = "string"
valueMatchOperator = "string"
values = [
"string"
]
}
]
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"
sensitivity = "string"
state = "string"
}
]
}
]
ruleSetType = "string"
ruleSetVersion = "string"
}
]
}
policySettings = {
captchaExpirationInMins = int
customBlockResponseBody = "string"
customBlockResponseStatusCode = int
fileUploadEnforcement = bool
fileUploadLimitInMb = int
jsChallengeCookieExpirationInMins = 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"
}
}
}
}
Valori delle proprietà
Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies
| Nome | Descrizione | Valore |
|---|---|---|
| ubicazione | Percorso della risorsa. | corda |
| nome | Nome della risorsa | corda Vincoli: Lunghezza massima = 128 (obbligatorio) |
| proprietà | Proprietà dei criteri web application firewall. | WebApplicationFirewallPolicyPropertiesFormat |
| Tag | Tag delle risorse | Dizionario di nomi e valori di tag. |
| digitare | Tipo di risorsa | "Microsoft. Rete/ApplicationGatewayWebApplicationFirewallPolicies@2025-07-01" |
CommonResourceTags
| Nome | Descrizione | Valore |
|---|
ExceptionEntry
| Nome | Descrizione | Valore |
|---|---|---|
| exceptionManagedRuleSets | Set di regole gestite associati all'eccezione. | ExclusionManagedRuleSet[] |
| matchVariable | Variabile in cui viene valutata la condizione di eccezione | 'RemoteAddr' 'Intestazione richiesta' 'RequestURI' (obbligatorio) |
| selettore | Quando la corrispondenzaVariable punta a una coppia chiave-valore ,ad esempio RequestHeader, identifica la chiave. | corda |
| selectorMatchOperator | Quando la corrispondenzaVariable punta a una coppia chiave-valore (ad esempio, RequestHeader), questa funzione viene eseguita sul selettore | 'Contiene' 'Finisce con' 'Uguale' 'Inizia con' |
| valueMatchOperator | Opera sui valori consentiti per matchVariable | 'Contiene' 'Finisce con' 'Uguale' 'IPMatch' 'StartsWith' (obbligatorio) |
| valori | Valori consentiti per matchVariable | stringa[] |
ExclusionManagedRule
| Nome | Descrizione | Valore |
|---|---|---|
| ruleId | Identificatore per la regola gestita. | stringa (obbligatorio) |
Gruppo di regole gestito da esclusione
| Nome | Descrizione | Valore |
|---|---|---|
| NomeGruppoDiRegole | Gruppo di regole gestite per l'esclusione. | stringa (obbligatorio) |
| norme | Elenco di regole che verranno escluse. Se non è specificato alcun valore, tutte le regole del gruppo verranno escluse. | ExclusionManagedRule[] |
Set di regole ExclusionManagedRuleSet
| Nome | Descrizione | Valore |
|---|---|---|
| ruleGroups | Definisce i gruppi di regole da applicare al set di regole. | ExclusionManagedRuleGroup[] |
| ruleSetType | Definisce il tipo di set di regole da usare. | stringa (obbligatorio) |
| ruleSetVersion | Definisce la versione del set di regole da usare. | stringa (obbligatorio) |
GroupByUserSession
| Nome | Descrizione | Valore |
|---|---|---|
| groupByVariables | Elenco di variabili della clausola group by. | GroupByVariable[] (obbligatorio) |
GroupByVariable
| Nome | Descrizione | Valore |
|---|---|---|
| nomevariabile | Variabile della clausola User Session. | 'ClientAddr' 'ClientAddrXFFHeader' 'Geolocalizzazione' 'GeoLocalizzazioneXFFHeader' 'Nessuno' (obbligatorio) |
ManagedRuleGroupOverride
| Nome | Descrizione | Valore |
|---|---|---|
| NomeGruppoDiRegole | Gruppo di regole gestite di cui eseguire l'override. | stringa (obbligatorio) |
| norme | Elenco di regole che verranno disabilitate. Se non è specificato alcun valore, tutte le regole nel gruppo verranno disabilitate. | ManagedRuleOverride[] |
ManagedRuleOverride
| Nome | Descrizione | Valore |
|---|---|---|
| azione | Descrive l'azione di override da applicare quando la regola corrisponde. | 'Consenti' 'Punteggio anomalia' 'Blocca' 'CAPTCHA' 'JSChallenge' 'Registro' |
| ruleId | Identificatore per la regola gestita. | stringa (obbligatorio) |
| sensibilità | Descrive la riservatezza di override da applicare quando la regola corrisponde. | 'Alto' 'Basso' 'Medio' |
| stato | Stato della regola gestita. Il valore predefinito è Disabilitato se non specificato. | 'Disabilitato' 'Abilitato' |
ManagedRulesDefinition
| Nome | Descrizione | Valore |
|---|---|---|
| Eccezioni | Eccezioni applicate ai criteri. | exceptionEntry[] |
| Esclusioni | Esclusioni applicate ai criteri. | OwaspCrsExclusionEntry[] |
| managedRuleSets | Set di regole gestite associati ai criteri. | ManagedRuleSet[] (obbligatorio) |
Set di regole gestito
| Nome | Descrizione | Valore |
|---|---|---|
| ruleGroupOverride | Definisce le sostituzioni del gruppo di regole da applicare al set di regole. | ManagedRuleGroupOverride[] |
| ruleSetType | Definisce il tipo di set di regole da usare. | stringa (obbligatorio) |
| ruleSetVersion | Definisce la versione del set di regole da usare. | stringa (obbligatorio) |
Condizione di corrispondenza
| Nome | Descrizione | Valore |
|---|---|---|
| Valori di corrispondenza | Valore della corrispondenza. | string[] (obbligatorio) |
| matchVariables | Elenco di variabili di corrispondenza. | MatchVariable[] (obbligatorio) |
| negazioneConditon | Indica se si tratta di una condizione negata o meno. | Bool |
| operatore | Operatore di cui trovare la corrispondenza. | 'Qualsiasi' 'Inizia con' 'Contiene' 'Finisce con' 'Uguale' 'Corrispondenza geografica' 'Più grande di' 'Più grande diOUguale' 'IPMatch' 'Meno di' 'MenoThanOrEqual' 'Regex' (obbligatorio) |
| Trasforma | Elenco di trasformazioni. | Matrice di stringhe contenente uno dei seguenti elementi: 'HtmlEntityDecode' 'Minuscolo' 'RimuoviNulls' 'Tagliare' 'Maiuscolo' 'Decodifica URL' 'CodificaUrl' |
Variabile Match
| Nome | Descrizione | Valore |
|---|---|---|
| selettore | Selettore della variabile di corrispondenza. | corda |
| nomevariabile | Corrispondenza variabile. | 'PostArgs' 'QueryString' 'RemoteAddr' 'Corpo della richiesta' 'RequestCookies' 'Intestazioni richiesta' 'Metodo di richiesta' 'RequestUri' (obbligatorio) |
OwaspCrsExclusionEntry
| Nome | Descrizione | Valore |
|---|---|---|
| exclusionManagedRuleSets | Set di regole gestite associati all'esclusione. | ExclusionManagedRuleSet[] |
| matchVariable | Variabile da escludere. | 'RequestArgKeys' 'RequestArgNames' 'RequestArgValues' 'RequestCookieKeys' 'RequestCookieNames' 'RequestCookieValues' 'RequestHeaderKeys' 'RequestHeaderNames' 'RequestHeaderValues' (obbligatorio) |
| selettore | Quando matchVariable è una raccolta, l'operatore utilizzato per specificare gli elementi nella raccolta a cui si applica questa esclusione. | stringa (obbligatorio) |
| selectorMatchOperator | Quando matchVariable è una raccolta, operare sul selettore per specificare gli elementi nella raccolta a cui si applica questa esclusione. | 'Contiene' 'Finisce con' 'Uguale' 'Uguale a Qualsiasi' 'StartsWith' (obbligatorio) |
PolicySettings
| Nome | Descrizione | Valore |
|---|---|---|
| captchaExpirationInMins | Firewall CAPTCHA Cookie del firewall Web in minuti. | Int Vincoli: Valore minimo = 5 Valore massimo = 1440 |
| customBlockResponseBody | Se il tipo di azione è bloccato, il cliente può eseguire l'override del corpo della risposta. Il corpo deve essere specificato nella codifica Base64. | corda Vincoli: Lunghezza massima = 32768 Modello = ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$ |
| customBlockResponseStatusCode | Se il tipo di azione è bloccato, il cliente può eseguire l'override del codice di stato della risposta. | Int Vincoli: Valore minimo = 0 |
| fileUploadEnforcement | Indica se consentire a WAF di applicare i limiti di caricamento dei file. | Bool |
| fileUploadLimitInMb | Dimensioni massime di caricamento file in Mb per WAF. | Int Vincoli: Valore minimo = 0 |
| jsChallengeCookieExpirationInMins | Tempo di scadenza del cookie di verifica javaScript di Web application firewall in minuti. | Int Vincoli: Valore minimo = 5 Valore massimo = 1440 |
| logScrubbing | Per eseguire lo scrubing dei campi di log sensibili | PolicySettingsLogScrubbing |
| maxRequestBodySizeInKb | Dimensioni massime del corpo della richiesta in Kb per WAF. | Int Vincoli: Valore minimo = 8 |
| modo | Modalità dei criteri. | 'Rilevamento' 'Prevenzione' |
| requestBodyCheck | Indica se consentire a WAF di controllare il corpo della richiesta. | Bool |
| requestBodyEnforcement | Indica se consentire a WAF di applicare i limiti del corpo della richiesta. | Bool |
| requestBodyInspectLimitInKB | Limite massimo di ispezione in KB per l'ispezione del corpo della richiesta per WAF. | Int |
| stato | Stato del criterio. | 'Disabilitato' 'Abilitato' |
PolicySettingsLogScrubbing
| Nome | Descrizione | Valore |
|---|---|---|
| scrubbingRegole | Regole applicate ai log per lo scrubbing. | WebApplicationFirewallScrubbingRules[] |
| stato | Stato della configurazione dello scrubbing del log. Il valore predefinito è Enabled. | 'Disabilitato' 'Abilitato' |
WebApplicationFirewallCustomRule
| Nome | Descrizione | Valore |
|---|---|---|
| azione | Tipo di azioni. | 'Consenti' 'Blocca' 'CAPTCHA' 'JSChallenge' 'Log' (obbligatorio) |
| groupByUserSession | Elenco dei gruppi di identificatori di sessione utente per clausole. | GroupByUserSession[] |
| matchConditions | Elenco delle condizioni di corrispondenza. | MatchCondition [] (obbligatorio) |
| nome | Nome della risorsa univoca all'interno di un criterio. Questo nome può essere usato per accedere alla risorsa. | corda Vincoli: Lunghezza massima = 128 |
| priorità | Priorità della regola. Le regole con un valore inferiore verranno valutate prima delle regole con un valore superiore. | int (obbligatorio) |
| rateLimitDuration | Durata in cui verranno applicati i criteri limite di frequenza. Si applica solo quando ruleType è RateLimitRule. | 'Cinque minuti' 'UnoMin' |
| rateLimitThreshold | Soglia limite di frequenza da applicare nel caso in cui ruleType sia RateLimitRule. Deve essere maggiore o uguale a 1 | Int |
| ruleType | Tipo di regola. | 'Non valido' 'Regola di partita' 'RateLimitRule' (obbligatorio) |
| stato | Descrive se la regola personalizzata è in stato abilitato o disabilitato. Il valore predefinito è Abilitato se non specificato. | 'Disabilitato' 'Abilitato' |
WebApplicationFirewallPolicyPropertiesFormat
| Nome | Descrizione | Valore |
|---|---|---|
| customRegole | Regole personalizzate all'interno dei criteri. | WebApplicationFirewallCustomRule[] |
| managedRules | Descrive la struttura managedRules. | ManagedRulesDefinition (obbligatorio) |
| impostazioniDefinizioni | PolicySettings per i criteri. | PolicySettings |
WebApplicationFirewallScrubbingRules
| Nome | Descrizione | Valore |
|---|---|---|
| matchVariable | Variabile da pulire dai log. | 'RequestArgNames' 'RequestCookieNames' 'RequestHeaderNames' 'RequestIPAddress' 'RequestJSONArgNames' 'RequestPostArgNames' (obbligatorio) |
| selettore | Quando matchVariable è una raccolta, l'operatore utilizzato per specificare gli elementi nella raccolta a cui si applica questa regola. | corda |
| selectorMatchOperator | Quando matchVariable è una raccolta, operare sul selettore per specificare gli elementi nella raccolta a cui si applica questa regola. | 'Uguale' 'EqualsAny' (obbligatorio) |
| stato | Definisce lo stato della regola di scrubbing del log. Il valore predefinito è Enabled. | 'Disabilitato' 'Abilitato' |