WAF Policy should be in Prevention mode
High
Azure
General
applicationgatewaywebapplicationfirewallpolicies-w-2
Applies to
Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies
What CGPulse checks
A resource passes this rule when mode must equal Prevention. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Switch WAF to Prevention mode to actively block threats after verifying no false positives. In Azure Portal: WAF policy > switch Mode to Prevention. See: https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/ag-overview#waf-modes
Careful: Prevention mode will actively block requests matching WAF rules. Verify no false positives in Detection mode first
CLI
az network application-gateway waf-policy update --ids "{id}" --set policySettings.mode=PreventionTerraform
resource "azurerm_web_application_firewall_policy" "{name}" {
name = "{name}"
resource_group_name = "{rg}"
location = var.location
# WARNING: Prevention mode blocks matching requests. Test in Detection mode first
policy_settings {
enabled = true
mode = "Prevention"
}
managed_rules {
managed_rule_set {
type = "OWASP"
version = "3.2"
}
}
}
Compliance frameworks
Is your environment compliant with this rule?
CGPulse checks it — and 621 others — against your Azure and AWS accounts with read-only access.
Related Azure rules
- Action Group should be enabled
- Activity Log Alert should be enabled
- AKS cluster logs should be sent to Log Analytics
- AKS cluster must enable RBAC
- AKS cluster must enable RBAC
- AKS cluster should be a private cluster
- AKS cluster should disable local accounts
- AKS cluster should enable Azure RBAC for Kubernetes