Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Web Application Firewall biedt gecentraliseerde beveiliging van uw webtoepassingen tegen veelvoorkomende aanvallen en beveiligingsproblemen. Alle Functionaliteit van Azure Web Application Firewall bestaat binnen een beleid, waarnaar kan worden verwezen via listener- of padgebaseerde routeringsregels binnen de YAML-configuratie van de Gateway-API.
Implementatie van Application Gateway for Containers
Beveiligingsbeleid
Application Gateway for Containers introduceert een nieuwe resource, genaamd SecurityPolicy, in Azure Resource Manager. De SecurityPolicy resource geeft toegang tot de Azure Web Application Firewall-beleid waarnaar de ALB-controller kan verwijzen.
Aangepaste Kubernetes-resource
Application Gateway for Containers introduceert een nieuwe aangepaste resource met de naam WebApplicationFirewallPolicy. De aangepaste resource is verantwoordelijk voor het definiëren van welk Azure Web Application Firewall-beleid moet worden gebruikt voor welk bereik.
De WebApplicationFirewallPolicy-resource kan zich richten op de volgende Kubernetes-resources:
GatewayHTTPRoute
De Resource WebApplicationFirewallPolicy kan ook verwijzen naar de volgende secties op naam voor verdere granulariteit:
-
Gateway:Listener
Voorbeeld van implementaties
Een beleid instellen op een gatewayresource
Hier volgt een voorbeeld van een YAML-configuratie die is gericht op een gatewayresource, die van toepassing is op alle listeners op een bepaalde front-endresource van Application Gateway voor Containers.
apiVersion: alb.networking.azure.io/v1
kind: WebApplicationFirewallPolicy
metadata:
name: sample-waf-policy
namespace: test-infra
spec:
targetRef:
group: gateway.networking.k8s.io
kind: Gateway
name: contoso-waf-route
namespace: test-infra
webApplicationFirewall:
id: /subscriptions/.../Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/waf-policy-0
Bereikbeleid voor een specifieke listener van een gatewayresource
Binnen een Gateway resource zijn er mogelijk verschillende hostnamen gedefinieerd door verschillende listeners (bijvoorbeeld contoso.com en fabrikam.com). Als contoso.com een hostnaam van listenerA is en fabrikam.com een hostnaam van listenerB is, kunt u de sectionNames eigenschap definiëren om de juiste listener te selecteren (bijvoorbeeld listenerA voor contoso.com).
apiVersion: alb.networking.azure.io/v1
kind: WebApplicationFirewallPolicy
metadata:
name: sample-waf-policy
namespace: test-infra
spec:
targetRef:
group: gateway.networking.k8s.io
kind: Gateway
name: contoso-waf-route
namespace: test-infra
sectionNames: ["contoso-listener"]
webApplicationFirewall:
id: /subscriptions/.../Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/waf-policy-0
Bereikbeleid voor alle routes en paden
In dit voorbeeld ziet u hoe u zich richt op een gedefinieerde HTTPRoute-resource om het beleid toe te passen op eventuele routeringsregels en paden binnen een bepaalde HTTPRoute-resource.
apiVersion: alb.networking.azure.io/v1
kind: WebApplicationFirewallPolicy
metadata:
name: sample-waf-policy
namespace: test-infra
spec:
targetRef:
group: gateway.networking.k8s.io
kind: HTTPRoute
name: contoso-pathA
namespace: test-infra
webApplicationFirewall:
id: /subscriptions/.../Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/waf-policy-0
Bereikbeleid voor een bepaald pad
Als u verschillende WAF-beleidsregels wilt gebruiken voor verschillende paden van hetzelfde Gateway of gateway -> Listener sectionName, kunt u twee HTTPRoute-resources definiëren, elk met een uniek pad, dat elk verwijst naar het toepasselijke WAF-beleid.
apiVersion: alb.networking.azure.io/v1
kind: WebApplicationFirewallPolicy
metadata:
name: sample-waf-policy-A
namespace: test-infra
spec:
targetRef:
group: gateway.networking.k8s.io
kind: HTTPRoute
name: contoso-pathA
namespace: test-infra
webApplicationFirewall:
id: /subscriptions/.../Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/waf-policy-0
---
apiVersion: alb.networking.azure.io/v1
kind: WebApplicationFirewallPolicy
metadata:
name: sample-waf-policy-B
namespace: test-infra
spec:
targetRef:
group: gateway.networking.k8s.io
kind: HTTPRoute
name: contoso-pathB
namespace: test-infra
webApplicationFirewall:
id: /subscriptions/.../Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/waf-policy-1
Beperkingen
De volgende functionaliteit wordt niet ondersteund in een Azure Web Application Firewall-beleid dat is gekoppeld aan Application Gateway for Containers:
- Beleid voor meerdere regio's, meerdere abonnementen: uw WAF-beleid moet zich in hetzelfde abonnement en dezelfde regio bevinden als uw Application Gateway for Containers-resource.
- Beheerde CRS-regels (Core Rule Set): Een Application Gateway for Containers WAF ondersteunt alleen door DRS beheerde regelsets (Default Rule Set).
- Verouderde Bot Manager-regelset: Bot Manager-regelset 0.1 wordt niet ondersteund, maar Bot Manager-regelsetversies 1.0 en 1.1 worden ondersteund.
- Acties voor JavaScript-uitdagingen op Bot Manager-regels: u kunt de actie voor een Bot Manager-regel niet instellen op een JavaScript-uitdaging.
- Captcha-uitdaging acties op Bot Manager-regels: u kunt de actie van een Bot Manager-regel niet instellen op Captcha-uitdaging.
- Microsoft Security Copilot: Security Copilot wordt niet ondersteund in Application Gateway for Containers WAF.
- Aangepast blokantwoord: het instellen van een aangepast blokantwoord in uw WAF-beleid wordt niet ondersteund in Application Gateway for Containers WAF.
- X-Forwarded-For Header (XFF):Application Gateway for Containers WAF biedt geen ondersteuning voor de XFF-variabele in aangepaste regels.
- HTTP DDoS-regelset: deze beheerde regelset wordt niet ondersteund in Application Gateway for Containers.
Pricing
Zie Prijzen voor Application Gateway for Containers voor meer informatie over prijzen.