@@ -2027,4 +2027,65 @@ function Test-AzureFirewallPolicyRuleCollectionGroupSizeProperty {
2027
2027
# Cleanup
2028
2028
Clean - ResourceGroup $rgname
2029
2029
}
2030
+ }
2031
+
2032
+ <#
2033
+ . SYNOPSIS
2034
+ Tests function Test-AzureFirewallPolicyIDPSProfiles.
2035
+ #>
2036
+ function Test-AzureFirewallPolicyIDPSProfiles {
2037
+ # Setup
2038
+ $rgname = Get-ResourceGroupName
2039
+ $azureFirewallPolicyName = Get-ResourceName
2040
+ $resourceTypeParent = " Microsoft.Network/FirewallPolicies"
2041
+ $location = " westus2"
2042
+ $tier = " Premium"
2043
+
2044
+ try {
2045
+ # Create the resource group
2046
+ $resourceGroup = New-AzResourceGroup - Name $rgname - Location $location
2047
+
2048
+ # Intrusion Detection Settings
2049
+ $sigOverride = New-AzFirewallPolicyIntrusionDetectionSignatureOverride - Id " 123456798" - Mode " Deny"
2050
+ $intrusionDetection = New-AzFirewallPolicyIntrusionDetection - Mode " Alert" - Profile " Advanced" - SignatureOverride $sigOverride - PrivateRange @ (" 10.0.0.0/8" , " 172.16.0.0/12" )
2051
+
2052
+ # Create AzureFirewallPolicy
2053
+ $azureFirewallPolicy = New-AzFirewallPolicy - Name $azureFirewallPolicyName - ResourceGroupName $rgname - Location $location - SkuTier $tier - IntrusionDetection $intrusionDetection
2054
+
2055
+ # Get AzureFirewallPolicy
2056
+ $getAzureFirewallPolicy = Get-AzFirewallPolicy - Name $azureFirewallPolicyName - ResourceGroupName $rgname
2057
+
2058
+ # verification
2059
+ Assert-AreEqual $rgName $getAzureFirewallPolicy.ResourceGroupName
2060
+ Assert-AreEqual $azureFirewallPolicyName $getAzureFirewallPolicy.Name
2061
+ Assert-NotNull $getAzureFirewallPolicy.Location
2062
+ Assert-AreEqual (Normalize- Location $location ) $getAzureFirewallPolicy.Location
2063
+ Assert-AreEqual $tier $getAzureFirewallPolicy.Sku.Tier
2064
+
2065
+ # IntrusionDetection verification
2066
+ Assert-NotNull $getAzureFirewallPolicy.IntrusionDetection
2067
+ Assert-AreEqual " Alert" $getAzureFirewallPolicy.IntrusionDetection.Mode
2068
+ Assert-NotNull $getAzureFirewallPolicy.IntrusionDetection.Configuration.SignatureOverrides
2069
+ Assert-AreEqual " 123456798" $getAzureFirewallPolicy.IntrusionDetection.Configuration.SignatureOverrides [0 ].Id
2070
+ Assert-AreEqual " Deny" $getAzureFirewallPolicy.IntrusionDetection.Configuration.SignatureOverrides [0 ].Mode
2071
+ Assert-AreEqual " Advanced" $getAzureFirewallPolicy.IntrusionDetection.Profile
2072
+
2073
+ # Set AzureFirewallPolicy with Standard Profile
2074
+ $azureFirewallPolicy.IntrusionDetection.Profile = " Standard"
2075
+ Set-AzFirewallPolicy - InputObject $azureFirewallPolicy
2076
+
2077
+ $getAzureFirewallPolicy = Get-AzFirewallPolicy - Name $azureFirewallPolicyName - ResourceGroupName $rgName
2078
+ Assert-AreEqual " Standard" $getAzureFirewallPolicy.IntrusionDetection.Profile
2079
+
2080
+ # Set AzureFirewallPolicy with Standard Profile
2081
+ $azureFirewallPolicy.IntrusionDetection.Profile = " Basic"
2082
+ Set-AzFirewallPolicy - InputObject $azureFirewallPolicy
2083
+
2084
+ $getAzureFirewallPolicy = Get-AzFirewallPolicy - Name $azureFirewallPolicyName - ResourceGroupName $rgName
2085
+ Assert-AreEqual " Basic" $getAzureFirewallPolicy.IntrusionDetection.Profile
2086
+ }
2087
+ finally {
2088
+ # Cleanup
2089
+ Clean - ResourceGroup $rgname
2090
+ }
2030
2091
}
0 commit comments