Delen via


Een WAF-beleid configureren met behulp van Azure PowerShell

Een WAF-beleid (Web Application Firewall) definieert de inspecties die nodig zijn wanneer een aanvraag binnenkomt bij Azure Front Door.

In dit artikel wordt beschreven hoe u een WAF-beleid configureert dat bestaat uit enkele aangepaste regels en waarvoor de door Azure beheerde standaardregelset is ingeschakeld.

Als je geen Azure-abonnement hebt, maak dan een gratis account aan voordat je begint.

Vereiste voorwaarden

Voordat u begint met het instellen van een beleid voor snelheidslimieten, stelt u uw PowerShell-omgeving in en maakt u een Azure Front Door-profiel.

Uw PowerShell-omgeving instellen

Azure PowerShell voorziet in een set van cmdlets die gebruikmaken van het Azure Resource Manager-model om uw Azure-resources te beheren.

U kunt Azure PowerShell op uw lokale computer installeren en in elke PowerShell-sessie gebruiken. Volg de instructies op de pagina om u aan te melden met uw Azure-referenties. Installeer vervolgens de Az PowerShell-module.

Aanmelden bij Azure

Connect-AzAccount

Voordat u de Azure Front Door-module installeert, moet u ervoor zorgen dat de huidige versie van PowerShellGet is geïnstalleerd. Voer de volgende opdracht uit en open PowerShell opnieuw.

Install-Module PowerShellGet -Force -AllowClobber

De Az.FrontDoor-module installeren

Install-Module -Name Az.FrontDoor

Een Azure Front Door-profiel maken

Maak een Azure Front Door-profiel door de instructies te volgen die worden beschreven in Quickstart: Een Azure Front Door-profiel maken.

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

In het volgende voorbeeld wordt een regel gemaakt voor het blokkeren van aanvragen met een URL die langer is dan 100 tekens met behulp 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

In het volgende voorbeeld wordt een beheerde standaardregelset gemaakt met behulp van Azure PowerShell.

$managedRules =  New-AzFrontDoorWafManagedRuleObject -Type DefaultRuleSet -Version 1.0

Een beveiligingsbeleid configureren

Zoek de naam van de resourcegroep die het Azure Front Door-profiel bevat met behulp van Get-AzResourceGroup. Configureer vervolgens een beveiligingsbeleid met gemaakte regels in de voorgaande stappen met behulp van New-AzFrontDoorWafPolicy in de opgegeven resourcegroep die het Azure Front Door-profiel bevat.

$myWAFPolicy=New-AzFrontDoorWafPolicy -Name $policyName -ResourceGroupName $resourceGroupName -Customrule $AllowFromTrustedSites,$BlockPUT,$URLOver100 -ManagedRule $managedRules -EnabledState Enabled -Mode Prevention

Koppel het beveiligingsbeleidsobject aan een bestaande front-endhost van Azure Front Door en werk de eigenschappen van Azure Front Door bij. Haal eerst het Azure Front Door-object op met behulp van Get-AzFrontDoor. Stel vervolgens de eigenschap front-end WebApplicationFirewallPolicyLink in op de resourceId van de $myWAFPolicy$ die in de vorige stap is gemaakt met behulp van Set-AzFrontDoor.

Opmerking

Voor Azure Front Door Standard en Premium moet u Get-AzFrontDoorCdnProfile gebruiken.

In het volgende voorbeeld wordt de naam myResourceGroupFD1 van de resourcegroep gebruikt in de veronderstelling dat u het Azure Front Door-profiel hebt gemaakt met behulp van de instructies in Quickstart: Een Azure Front Door maken. Vervang in het volgende voorbeeld $frontDoorName door de naam van uw Azure Front Door-profiel.

   $FrontDoorObjectExample = Get-AzFrontDoor `
     -ResourceGroupName myResourceGroupFD1 `
     -Name $frontDoorName
   $FrontDoorObjectExample[0].FrontendEndpoints[0].WebApplicationFirewallPolicyLink = $myWAFPolicy.Id
   Set-AzFrontDoor -InputObject $FrontDoorObjectExample[0]

Opmerking

U hoeft de WebApplicationFirewallPolicyLink eigenschap slechts één keer in te stellen om een beveiligingsbeleid te koppelen aan een Azure Front Door-front-end. Daaropvolgende beleidsupdates worden automatisch toegepast op de front-end.

Volgende stappen