Delen via


Een WAF-beleid configureren met behulp van Azure PowerShell

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

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

Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.

Vereisten

Voordat u begint met het instellen van een frequentielimietbeleid, 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 ziet u hoe u een aangepaste regel met twee overeenkomstvoorwaarden configureert met behulp van New-AzFrontDoorWafMatchConditionObject. Aanvragen zijn afkomstig van een opgegeven site zoals gedefinieerd door referrer en de queryreeks bevat passwordgeen .

$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 die aanvragen blokkeert 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 vorige 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 Door front-endhost van Azure Front Door en werk azure Front Door-eigenschappen bij. Haal eerst het Azure Front Door-object op met behulp van Get-AzFrontDoor. Stel vervolgens de front-endeigenschap WebApplicationFirewallPolicyLink in op de $myWAFPolicy$ resourceId eigenschap die u in de vorige stap hebt gemaakt met behulp van Set-AzFrontDoor.

Notitie

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

In het volgende voorbeeld wordt de naam myResourceGroupFD1 van de resourcegroep gebruikt met de aanname dat u het Azure Front Door-profiel hebt gemaakt met behulp van instructies in quickstart: Een Azure Front Door maken. Vervang in het volgende voorbeeld ook door $frontDoorName 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]

Notitie

U hoeft de WebApplicationFirewallPolicyLink eigenschap slechts eenmaal in te stellen om een beveiligingsbeleid te koppelen aan een Front Door-front-end van Azure. Volgende beleidsupdates worden automatisch toegepast op de front-end.

Volgende stappen