@@ -1914,6 +1914,57 @@ function Test-AzureFirewallCRUDEnableFatFlowLogging {
1914
1914
Clean - ResourceGroup $rgname
1915
1915
}
1916
1916
}
1917
+ <#
1918
+ . SYNOPSIS
1919
+ Tests AzureFirewall with Multip IPs on Virtual Hub
1920
+ #>
1921
+ function Test-AzureFirewallVirtualHubPrivateIPAddress {
1922
+ # Setup
1923
+ $rgname = Get-ResourceGroupName
1924
+ $azureFirewallName = Get-ResourceName
1925
+ $location = " eastus2euap"
1926
+ $skuName = " AZFW_Hub"
1927
+ $skuTier = " Standard"
1928
+ $firewallPIPCount = " 2"
1929
+ $virtualWanName = Get-ResourceName
1930
+ $virtualHubName = Get-ResourceName
1931
+
1932
+ try {
1933
+ # Create the resource group and rest
1934
+ $resourceGroup = New-AzResourceGroup - Name $rgname - Location $location - Tags @ { testtag = " testval" }
1935
+ $fwpips = New-AzFirewallHubPublicIpAddress - Count $firewallPIPCount
1936
+ $hubIpAddresses = New-AzFirewallHubIpAddress - PublicIP $fwpips
1937
+
1938
+ # create virtual Hub
1939
+ $Vwan = New-AzVirtualWan - Name $virtualWanName - ResourceGroupName $rgname - Location $location - AllowVnetToVnetTraffic - AllowBranchToBranchTraffic - VirtualWANType " Standard"
1940
+ $Hub = New-AzVirtualHub - Name $virtualHubName - ResourceGroupName $rgname - VirtualWan $Vwan - Location $Location - AddressPrefix " 192.168.1.0/24" - Sku " Standard"
1941
+
1942
+ # Create firewall
1943
+ $vHubId = $Hub.Id
1944
+ $getAzureFirewall = New-AzFirewall - Name $azureFirewallName - ResourceGroupName $rgname - Location $location - SkuName $skuName - SkuTier $skuTier - HubIPAddress $hubIpAddresses - VirtualHubId $vHubId
1945
+
1946
+ # verification
1947
+ Assert-AreEqual $rgName $getAzureFirewall.ResourceGroupName
1948
+ Assert-AreEqual $azureFirewallName $getAzureFirewall.Name
1949
+ Assert-NotNull $getAzureFirewall.Location
1950
+ Assert-AreEqual (Normalize- Location $location ) $getAzureFirewall.Location
1951
+ Assert-NotNull $getAzureFirewall.Sku
1952
+ Assert-AreEqual $skuName $getAzureFirewall.Sku.Name
1953
+ Assert-AreEqual $skuTier $getAzureFirewall.Sku.Tier
1954
+ Assert-NotNull $getAzureFirewall.VirtualHub
1955
+ Assert-NotNull $getAzureFirewall.HubIPAddresses.PrivateIPAddress
1956
+
1957
+ # Test Deallocate
1958
+ $getAzureFirewall.Deallocate ()
1959
+ Set-AzFirewall - AzureFirewall $getAzureFirewall
1960
+ $getAzureFirewall = Get-AzFirewall - name $azureFirewallName - ResourceGroupName $rgname
1961
+ Assert-Null $getAzureFirewall.VirtualHub
1962
+ }
1963
+ finally {
1964
+ # Cleanup
1965
+ Clean - ResourceGroup $rgname
1966
+ }
1967
+ }
1917
1968
1918
1969
<#
1919
1970
. SYNOPSIS
0 commit comments