Azure Web Application Firewall
Azure Web Application Firewall
Azure WAF integrates with Application Gateway and Front Door to provide application-layer protection:
# Configure WAF Policy
$wafPolicy = New-AzApplicationGatewayFirewallPolicy `
-Name "WebServerWAFPolicy" `
-ResourceGroupName "WebServerRG" `
-Location "East US"
# Configure managed rules
$managedRules = New-AzApplicationGatewayFirewallPolicyManagedRuleSet `
-RuleSetType "OWASP" `
-RuleSetVersion "3.2"
$managedRuleGroupOverride = New-AzApplicationGatewayFirewallPolicyManagedRuleGroupOverride `
-RuleGroupName "REQUEST-920-PROTOCOL-ENFORCEMENT" `
-Rule @(
New-AzApplicationGatewayFirewallPolicyManagedRuleOverride `
-RuleId "920300" `
-State "Disabled"
)
$managedRules.RuleGroupOverrides.Add($managedRuleGroupOverride)
$wafPolicy.ManagedRules = $managedRules
# Configure custom rules
$customRule = New-AzApplicationGatewayFirewallCustomRule `
-Name "BlockBadUserAgent" `
-Priority 1 `
-RuleType MatchRule `
-MatchCondition @(
New-AzApplicationGatewayFirewallMatchCondition `
-MatchVariable RequestHeaders `
-Selector "User-Agent" `
-Operator Contains `
-MatchValue @("BadBot", "Scanner")
) `
-Action Block
$wafPolicy.CustomRules.Add($customRule)
Set-AzApplicationGatewayFirewallPolicy -InputObject $wafPolicy