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.
Een WAF-beleid (Web Application Firewall) definieert de inspecties die nodig zijn wanneer een aanvraag binnenkomt bij Azure Front Door.
Dit artikel laat zien hoe je een WAF-beleid configureert voor Azure Front Door Standard of Premium dat bestaat uit enkele aangepaste regels en de door Azure beheerde Default Rule Set is ingeschakeld. Aangepaste regels gelden voor zowel de Standard- als Premium-niveaus. Beheerde regelsets, zoals de Default Rule Set, vereisen de Premium-laag.
Aangepaste regels en de Standaard Regelset zijn optioneel; voeg een of beide toe om aan je behoeften te voldoen. Je stelt de WAF-beleidsmodus (Detectie of Preventie) in wanneer je het beleid in een latere stap aanmaakt.
Vereiste voorwaarden
Een Azure-account met een actief abonnement. Gratis een account maken
Een Azure Front Door Standard- of Premium-profiel. Als je er een moet aanmaken, raadpleeg dan Snelstart: een Azure Front Door Standard/Premium-profiel maken met PowerShell. De voorbeelden in dit artikel gebruiken een Premium-profiel omdat beheerde regelsets de Premium-laag vereisen.
Azure Cloud Shell of Azure PowerShell.
Met de stappen in dit artikel worden de Azure PowerShell-cmdlets interactief uitgevoerd in Azure Cloud Shell. Als u de cmdlets in de Cloud Shell wilt uitvoeren, selecteert u Open Cloud Shell in de rechterbovenhoek van een codeblok. Selecteer Kopiëren om de code te kopiëren en plak deze in Cloud Shell om deze uit te voeren. U kunt de Cloud Shell ook uitvoeren vanuit de Azure-portal.
U kunt Azure PowerShell ook lokaal installeren om de cmdlets uit te voeren. Als u PowerShell lokaal uitvoert, meldt u zich aan bij Azure met behulp van de cmdlet Connect-AzAccount .
De
Az.CdnenAz.FrontDoorPowerShell-modules. Gebruik deAz.Cdnmodule om te werken met Azure Front Door Standard en Premium resources, en deAz.FrontDoormodule om met WAF-resources te werken. Installeer beide modules door de volgende commando's uit te voeren:Install-Module -Name Az.Cdn Install-Module -Name Az.FrontDoor
Aangepaste regel op basis van HTTP-parameters
In het volgende voorbeeld wordt beschreven hoe u een aangepaste regel met twee overeenkomstvoorwaarden kunt configureren met behulp van New-AzFrontDoorWafMatchConditionObject. Aanvragen zijn afkomstig van een opgegeven site zoals gedefinieerd door de verwijzer, en de queryreeks bevat geen password.
$referer = New-AzFrontDoorWafMatchConditionObject -MatchVariable RequestHeader -OperatorProperty Equal -Selector "Referer" -MatchValue "www.mytrustedsites.com/referpage.html"
$password = New-AzFrontDoorWafMatchConditionObject -MatchVariable QueryString -OperatorProperty Contains -MatchValue "password"
$AllowFromTrustedSites = New-AzFrontDoorWafCustomRuleObject -Name "AllowFromTrustedSites" -RuleType MatchRule -MatchCondition $referer,$password -Action Allow -Priority 1
Aangepaste regel op basis van een HTTP-aanvraagmethode
Maak een regel die een PUT-methode blokkeert met behulp van New-AzFrontDoorWafCustomRuleObject.
$put = New-AzFrontDoorWafMatchConditionObject -MatchVariable RequestMethod -OperatorProperty Equal -MatchValue PUT
$BlockPUT = New-AzFrontDoorWafCustomRuleObject -Name "BlockPUT" -RuleType MatchRule -MatchCondition $put -Action Block -Priority 2
Een aangepaste regel maken op basis van groottebeperking
Het volgende voorbeeld maakt een regel die verzoeken blokkeert met een URL langer dan 100 tekens door gebruik te maken van Azure PowerShell.
$url = New-AzFrontDoorWafMatchConditionObject -MatchVariable RequestUri -OperatorProperty GreaterThanOrEqual -MatchValue 100
$URLOver100 = New-AzFrontDoorWafCustomRuleObject -Name "URLOver100" -RuleType MatchRule -MatchCondition $url -Action Block -Priority 3
Een beheerde standaardregelset toevoegen
Beheerde regelsets zijn beschikbaar op Azure Front Door Premium. Het volgende voorbeeld creëert een beheerd Default Rule Set-object met behulp van Azure PowerShell.
$managedRules = New-AzFrontDoorWafManagedRuleObject -Type Microsoft_DefaultRuleSet -Version 2.2
Opmerking
Beheerde regelsets vereisen Azure Front Door Premium. Azure Front Door Standard ondersteunt alleen aangepaste regels. Dit voorbeeld gebruikt Microsoft_DefaultRuleSet versie 2.2. Voor alle beschikbare versies, zie Web Application Firewall DRS regelgroepen en regels.
Een WAF-beleid maken
Maak een WAF-beleid aan dat de aangepaste regels en de beheerde Default Rule Set uit de vorige stappen bevat met behulp van New-AzFrontDoorWafPolicy. Stel -Sku in op Premium_AzureFrontDoor om beheerde regels op te nemen, of op Standard_AzureFrontDoor voor alleen aangepaste regels.
$myWAFPolicy = New-AzFrontDoorWafPolicy -Name $policyName -ResourceGroupName $resourceGroupName -Sku Premium_AzureFrontDoor -CustomRule $AllowFromTrustedSites,$BlockPUT,$URLOver100 -ManagedRule $managedRules -EnabledState Enabled -Mode Prevention
Koppel het WAF-beleid aan je eindpunt
Voor Azure Front Door Standard en Premium koppel je een WAF-beleid aan je endpoint door een beveiligingsbeleid aan te maken op het Azure Front Door-profiel. Een beveiligingsbeleid koppelt je WAF-beleid aan de domeinen die je wilt dat de WAF beschermt.
Haal je endpoint op door Get-AzFrontDoorCdnEndpoint te gebruiken en vervang de resourcegroep-, profiel- en endpointnamen door je eigen naam. Gebruik vervolgens New-AzFrontDoorCdnSecurityPolicy om de standaard hostnaam van het endpoint te koppelen aan je WAF-beleid.
$frontDoorEndpoint = Get-AzFrontDoorCdnEndpoint -ResourceGroupName $resourceGroupName -ProfileName $frontDoorProfileName -EndpointName $frontDoorEndpointName
$securityPolicyAssociation = New-AzFrontDoorCdnSecurityPolicyWebApplicationFirewallAssociationObject `
-PatternsToMatch @("/*") `
-Domain @(@{"Id"=$($frontDoorEndpoint.Id)})
$securityPolicyParameters = New-AzFrontDoorCdnSecurityPolicyWebApplicationFirewallParametersObject `
-Association $securityPolicyAssociation `
-WafPolicyId $myWAFPolicy.Id
New-AzFrontDoorCdnSecurityPolicy `
-Name 'MySecurityPolicy' `
-ProfileName $frontDoorProfileName `
-ResourceGroupName $resourceGroupName `
-Parameter $securityPolicyParameters
Opmerking
Een beveiligingsbeleid geldt voor de domeinen in de associatie ervan. Om meer domeinen te beschermen, voeg je ze toe aan de associatie of maak je extra beveiligingsbeleid.