diff --git a/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.cs b/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.cs index 4d4c8b1a3399..0cfc1baa290e 100644 --- a/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.cs +++ b/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.cs @@ -33,5 +33,13 @@ public void TestAzureFirewallPolicyCRUD() { TestRunner.RunTestScript("Test-AzureFirewallPolicyCRUD"); } + + [Fact] + [Trait(Category.AcceptanceType, Category.CheckIn)] + [Trait(Category.Owner, NrpTeamAlias.azurefirewall)] + public void TestAzureFirewallPolicyWithThreatIntelWhitelistCRUD() + { + TestRunner.RunTestScript("Test-AzureFirewallPolicyWithThreatIntelWhitelistCRUD"); + } } } diff --git a/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.ps1 b/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.ps1 index e943e48648dd..4e0996eb43c1 100644 --- a/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.ps1 +++ b/src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.ps1 @@ -236,4 +236,68 @@ function Test-AzureFirewallPolicyCRUD { # Cleanup Clean-ResourceGroup $rgname } +} + + +<# +.SYNOPSIS +Tests AzureFirewallPolicyCRUD with ThreatIntelWhitelist. +#> +function Test-AzureFirewallPolicyWithThreatIntelWhitelistCRUD { + # Setup + $rgname = Get-ResourceGroupName + $azureFirewallPolicyName = Get-ResourceName + $azureFirewallPolicyAsJobName = Get-ResourceName + $resourceTypeParent = "Microsoft.Network/FirewallPolicies" + $location = "eastus2euap" + + $ruleGroupName = Get-ResourceName + $threatIntelWhiteListIp1 = "20.3.4.5" + $threatIntelWhiteListIp2 = "37.1.2.3" + $threatIntelWhiteListIp3 = "208.199.20.37" + $threatIntelWhiteListFqdn1 = "microsoft.com" + + try { + # Create the resource group + $resourceGroup = New-AzResourceGroup -Name $rgname -Location $location -Tags @{ testtag = "testval" } + + $tiWhiteList = New-AzFirewallPolicyThreatIntelWhitelist -IpAddress $threatIntelWhiteListIp1,$threatIntelWhiteListIp2 -FQDN $threatIntelWhiteListFqdn1 + + # Create AzureFirewallPolicy (with no rules, ThreatIntel is in Alert mode by default) + $azureFirewallPolicy = New-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgname -Location $location -ThreatIntelWhitelist $tiWhiteList + + # Get AzureFirewallPolicy + $getAzureFirewallPolicy = Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgname + + #verification + Assert-AreEqual $rgName $getAzureFirewallPolicy.ResourceGroupName + Assert-AreEqual $azureFirewallPolicyName $getAzureFirewallPolicy.Name + Assert-NotNull $getAzureFirewallPolicy.Location + Assert-AreEqual $location $getAzureFirewallPolicy.Location + Assert-AreEqual "Alert" $getAzureFirewallPolicy.ThreatIntelMode + Assert-NotNull $getAzureFirewallPolicy.ThreatIntelWhitelist + Assert-AreEqual $threatIntelWhiteListIp1 $getAzureFirewallPolicy.ThreatIntelWhitelist.IpAddresses[0] + Assert-AreEqual $threatIntelWhiteListIp2 $getAzureFirewallPolicy.ThreatIntelWhitelist.IpAddresses[1] + Assert-AreEqual $threatIntelWhiteListFqdn1 $getAzureFirewallPolicy.ThreatIntelWhitelist.FQDNs[0] + + # # Update ThreatIntel Whitelist + $azureFirewallPolicy.ThreatIntelWhitelist.IpAddresses[0] = $threatIntelWhiteListIp3 + + # Set AzureFirewallPolicy + Set-AzFirewallPolicy -InputObject $azureFirewallPolicy + # Get AzureFirewallPolicy + $getAzureFirewallPolicy = Get-AzFirewallPolicy -Name $azureFirewallPolicyName -ResourceGroupName $rgName + + # #verification + Assert-AreEqual $rgName $getAzureFirewallPolicy.ResourceGroupName + Assert-AreEqual $azureFirewallPolicyName $getAzureFirewallPolicy.Name + Assert-NotNull $getAzureFirewallPolicy.Location + Assert-AreEqual $location $getAzureFirewallPolicy.Location + Assert-NotNull $getAzureFirewallPolicy.ThreatIntelWhitelist + Assert-AreEqual $threatIntelWhiteListIp3 $getAzureFirewallPolicy.ThreatIntelWhitelist.IpAddresses[0] + } + finally { + # Cleanup + Clean-ResourceGroup $rgname + } } \ No newline at end of file diff --git a/src/Network/Network.Test/SessionRecords/Commands.Network.Test.ScenarioTests.AzureFirewallPolicyTests/TestAzureFirewallPolicyWithThreatIntelWhitelistCRUD.json b/src/Network/Network.Test/SessionRecords/Commands.Network.Test.ScenarioTests.AzureFirewallPolicyTests/TestAzureFirewallPolicyWithThreatIntelWhitelistCRUD.json new file mode 100644 index 000000000000..b49225cc309b --- /dev/null +++ b/src/Network/Network.Test/SessionRecords/Commands.Network.Test.ScenarioTests.AzureFirewallPolicyTests/TestAzureFirewallPolicyWithThreatIntelWhitelistCRUD.json @@ -0,0 +1,1341 @@ +{ + "Entries": [ + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourcegroups/ps6840?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlZ3JvdXBzL3BzNjg0MD9hcGktdmVyc2lvbj0yMDE2LTA5LTAx", + "RequestMethod": "PUT", + "RequestBody": "{\r\n \"location\": \"eastus2euap\"\r\n}", + "RequestHeaders": { + "x-ms-client-request-id": [ + "d8f2b046-a091-4df9-b91d-e95a408731e0" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "33" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "x-ms-ratelimit-remaining-subscription-writes": [ + "1199" + ], + "x-ms-request-id": [ + "55a502bc-7cc5-41d3-9f19-0054e877b09a" + ], + "x-ms-correlation-request-id": [ + "55a502bc-7cc5-41d3-9f19-0054e877b09a" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180123Z:55a502bc-7cc5-41d3-9f19-0054e877b09a" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:22 GMT" + ], + "Content-Length": [ + "170" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840\",\r\n \"name\": \"ps6840\",\r\n \"location\": \"eastus2euap\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\r\n }\r\n}", + "StatusCode": 201 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "x-ms-client-request-id": [ + "c1d6073b-213d-4796-851f-437df8a99e19" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "x-ms-failure-cause": [ + "gateway" + ], + "x-ms-request-id": [ + "da1457fa-3430-40e4-a005-780489667e6d" + ], + "x-ms-correlation-request-id": [ + "da1457fa-3430-40e4-a005-780489667e6d" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180123Z:da1457fa-3430-40e4-a005-780489667e6d" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:23 GMT" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "219" + ] + }, + "ResponseBody": "{\r\n \"error\": {\r\n \"code\": \"ResourceNotFound\",\r\n \"message\": \"The Resource 'Microsoft.Network/firewallPolicies/ps4470' under resource group 'ps6840' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix\"\r\n }\r\n}", + "StatusCode": 404 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11997" + ], + "x-ms-request-id": [ + "3262ee7c-557e-48e7-8de8-eaa85c3be413" + ], + "x-ms-correlation-request-id": [ + "3262ee7c-557e-48e7-8de8-eaa85c3be413" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180140Z:3262ee7c-557e-48e7-8de8-eaa85c3be413" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:39 GMT" + ], + "Content-Length": [ + "635" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"20.3.4.5\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"ac363e7b-53ce-460e-b517-6ed984d5ffdc\",\r\n \"location\": \"eastus2euap\"\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "x-ms-client-request-id": [ + "0c94e44f-4c9c-4204-92dc-e993691510d3" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11996" + ], + "x-ms-request-id": [ + "a5b02122-b90d-47a4-80ef-1d8a484625d6" + ], + "x-ms-correlation-request-id": [ + "a5b02122-b90d-47a4-80ef-1d8a484625d6" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180140Z:a5b02122-b90d-47a4-80ef-1d8a484625d6" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:40 GMT" + ], + "Content-Length": [ + "635" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"20.3.4.5\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"ac363e7b-53ce-460e-b517-6ed984d5ffdc\",\r\n \"location\": \"eastus2euap\"\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "x-ms-client-request-id": [ + "55e84ae5-04bf-44c5-a1a6-ad344110ff2a" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11999" + ], + "x-ms-request-id": [ + "2eeeff3f-080a-49b3-a25e-931e81b35b20" + ], + "x-ms-correlation-request-id": [ + "2eeeff3f-080a-49b3-a25e-931e81b35b20" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180141Z:2eeeff3f-080a-49b3-a25e-931e81b35b20" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:40 GMT" + ], + "Content-Length": [ + "635" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"20.3.4.5\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"ac363e7b-53ce-460e-b517-6ed984d5ffdc\",\r\n \"location\": \"eastus2euap\"\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "x-ms-client-request-id": [ + "4bbb3264-5633-4be8-b2e9-dc71fc249a30" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11999" + ], + "x-ms-request-id": [ + "90141751-07eb-4813-914f-a1c60e8e9871" + ], + "x-ms-correlation-request-id": [ + "90141751-07eb-4813-914f-a1c60e8e9871" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180142Z:90141751-07eb-4813-914f-a1c60e8e9871" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:41 GMT" + ], + "Content-Length": [ + "635" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"20.3.4.5\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"ac363e7b-53ce-460e-b517-6ed984d5ffdc\",\r\n \"location\": \"eastus2euap\"\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11997" + ], + "x-ms-request-id": [ + "3b66ff7d-ccea-434d-9a07-1d4168cccb5f" + ], + "x-ms-correlation-request-id": [ + "3b66ff7d-ccea-434d-9a07-1d4168cccb5f" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180154Z:3b66ff7d-ccea-434d-9a07-1d4168cccb5f" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:53 GMT" + ], + "Content-Length": [ + "655" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"208.199.20.37\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"2f77c04b-d49b-4c66-8d3b-3663083b8932\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {}\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "x-ms-client-request-id": [ + "a2bc8c62-a1cd-4357-af43-62788ceb9d0a" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11996" + ], + "x-ms-request-id": [ + "ca2bd7f4-270f-4691-95b6-763561f8c5cc" + ], + "x-ms-correlation-request-id": [ + "ca2bd7f4-270f-4691-95b6-763561f8c5cc" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180154Z:ca2bd7f4-270f-4691-95b6-763561f8c5cc" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:54 GMT" + ], + "Content-Length": [ + "655" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"208.199.20.37\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"2f77c04b-d49b-4c66-8d3b-3663083b8932\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {}\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "x-ms-client-request-id": [ + "cbb73805-dfa7-4737-9d99-ad962a1b90a6" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11999" + ], + "x-ms-request-id": [ + "c8ab1433-c23e-474a-b518-80ca2c4bb2b9" + ], + "x-ms-correlation-request-id": [ + "c8ab1433-c23e-474a-b518-80ca2c4bb2b9" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180155Z:c8ab1433-c23e-474a-b518-80ca2c4bb2b9" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:54 GMT" + ], + "Content-Length": [ + "655" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"208.199.20.37\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Succeeded\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"2f77c04b-d49b-4c66-8d3b-3663083b8932\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {}\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "PUT", + "RequestBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"ipAddresses\": [\r\n \"20.3.4.5\",\r\n \"37.1.2.3\"\r\n ],\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ]\r\n }\r\n },\r\n \"location\": \"eastus2euap\"\r\n}", + "RequestHeaders": { + "x-ms-client-request-id": [ + "4a7decfb-b995-4f27-b933-2481d0c308fc" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "256" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Retry-After": [ + "10" + ], + "x-ms-request-id": [ + "603450d2-b9b9-4584-bd28-d6e1159233ff" + ], + "x-ms-correlation-request-id": [ + "27581148-2aaa-456e-9aff-5b9648d30c11" + ], + "Azure-AsyncOperation": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/providers/Microsoft.Network/locations/eastus2euap/nfvOperations/603450d2-b9b9-4584-bd28-d6e1159233ff?api-version=2020-05-01" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-writes": [ + "1199" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180129Z:27581148-2aaa-456e-9aff-5b9648d30c11" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:29 GMT" + ], + "Content-Length": [ + "634" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"20.3.4.5\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Updating\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"ac363e7b-53ce-460e-b517-6ed984d5ffdc\",\r\n \"location\": \"eastus2euap\"\r\n}", + "StatusCode": 201 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlR3JvdXBzL3BzNjg0MC9wcm92aWRlcnMvTWljcm9zb2Z0Lk5ldHdvcmsvZmlyZXdhbGxQb2xpY2llcy9wczQ0NzA/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "PUT", + "RequestBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"ipAddresses\": [\r\n \"208.199.20.37\",\r\n \"37.1.2.3\"\r\n ],\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ]\r\n }\r\n },\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {}\r\n}", + "RequestHeaders": { + "x-ms-client-request-id": [ + "fcf2da20-611d-457f-a65f-d7d5d043b32f" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "276" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Retry-After": [ + "10" + ], + "x-ms-request-id": [ + "69839e34-eae9-48e8-8c59-9ebd94184f66" + ], + "x-ms-correlation-request-id": [ + "2c4ac787-1498-4d92-b1f6-dbdde2ab7c5e" + ], + "Azure-AsyncOperation": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/providers/Microsoft.Network/locations/eastus2euap/nfvOperations/69839e34-eae9-48e8-8c59-9ebd94184f66?api-version=2020-05-01" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-writes": [ + "1199" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180143Z:2c4ac787-1498-4d92-b1f6-dbdde2ab7c5e" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:43 GMT" + ], + "Content-Length": [ + "654" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"properties\": {\r\n \"threatIntelMode\": \"Alert\",\r\n \"threatIntelWhitelist\": {\r\n \"fqdns\": [\r\n \"microsoft.com\"\r\n ],\r\n \"ipAddresses\": [\r\n \"208.199.20.37\",\r\n \"37.1.2.3\"\r\n ]\r\n },\r\n \"childPolicies\": [],\r\n \"ruleCollectionGroups\": [],\r\n \"firewalls\": [],\r\n \"provisioningState\": \"Updating\"\r\n },\r\n \"id\": \"/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourceGroups/ps6840/providers/Microsoft.Network/firewallPolicies/ps4470\",\r\n \"name\": \"ps4470\",\r\n \"type\": \"Microsoft.Network/FirewallPolicies\",\r\n \"etag\": \"2f77c04b-d49b-4c66-8d3b-3663083b8932\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {}\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/providers/Microsoft.Network/locations/eastus2euap/nfvOperations/603450d2-b9b9-4584-bd28-d6e1159233ff?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9sb2NhdGlvbnMvZWFzdHVzMmV1YXAvbmZ2T3BlcmF0aW9ucy82MDM0NTBkMi1iOWI5LTQ1ODQtYmQyOC1kNmUxMTU5MjMzZmY/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "x-ms-request-id": [ + "87ac1366-8ea4-40fd-8dd3-2398e58b5b2c" + ], + "x-ms-correlation-request-id": [ + "e7c5c5a4-5914-4bf1-a2f2-72254019a2e7" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11998" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180139Z:e7c5c5a4-5914-4bf1-a2f2-72254019a2e7" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:39 GMT" + ], + "Content-Length": [ + "29" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"status\": \"Succeeded\"\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/providers/Microsoft.Network/locations/eastus2euap/nfvOperations/69839e34-eae9-48e8-8c59-9ebd94184f66?api-version=2020-05-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9sb2NhdGlvbnMvZWFzdHVzMmV1YXAvbmZ2T3BlcmF0aW9ucy82OTgzOWUzNC1lYWU5LTQ4ZTgtOGM1OS05ZWJkOTQxODRmNjY/YXBpLXZlcnNpb249MjAyMC0wNS0wMQ==", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Network.NetworkManagementClient/20.0.0.0" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "x-ms-request-id": [ + "29c24340-2f91-4005-8e97-a771360c15b0" + ], + "x-ms-correlation-request-id": [ + "0603974c-10c6-41b4-bd06-a9f90c5fd640" + ], + "Server": [ + "Microsoft-HTTPAPI/2.0" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11998" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180153Z:0603974c-10c6-41b4-bd06-a9f90c5fd640" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:53 GMT" + ], + "Content-Length": [ + "29" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Expires": [ + "-1" + ] + }, + "ResponseBody": "{\r\n \"status\": \"Succeeded\"\r\n}", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/resourcegroups/ps6840?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL3Jlc291cmNlZ3JvdXBzL3BzNjg0MD9hcGktdmVyc2lvbj0yMDE2LTA5LTAx", + "RequestMethod": "DELETE", + "RequestBody": "", + "RequestHeaders": { + "x-ms-client-request-id": [ + "dcf9f452-a70d-4b12-8705-068e2293ece9" + ], + "Accept-Language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Location": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01" + ], + "Retry-After": [ + "15" + ], + "x-ms-ratelimit-remaining-subscription-deletes": [ + "14999" + ], + "x-ms-request-id": [ + "42503118-d52b-46d6-9533-9fb483490e53" + ], + "x-ms-correlation-request-id": [ + "42503118-d52b-46d6-9533-9fb483490e53" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180156Z:42503118-d52b-46d6-9533-9fb483490e53" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:01:56 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 202 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Location": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01" + ], + "Retry-After": [ + "15" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11999" + ], + "x-ms-request-id": [ + "db44ceb0-0d92-4e3a-9585-16e82c5c8e1b" + ], + "x-ms-correlation-request-id": [ + "db44ceb0-0d92-4e3a-9585-16e82c5c8e1b" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180211Z:db44ceb0-0d92-4e3a-9585-16e82c5c8e1b" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:02:11 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 202 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Location": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01" + ], + "Retry-After": [ + "15" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11998" + ], + "x-ms-request-id": [ + "b1831dd0-3197-4dc7-8025-bbc73c1d5c59" + ], + "x-ms-correlation-request-id": [ + "b1831dd0-3197-4dc7-8025-bbc73c1d5c59" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180227Z:b1831dd0-3197-4dc7-8025-bbc73c1d5c59" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:02:26 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 202 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Location": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01" + ], + "Retry-After": [ + "15" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11997" + ], + "x-ms-request-id": [ + "edd4e294-946a-4ae7-93cd-8f08bacb1587" + ], + "x-ms-correlation-request-id": [ + "edd4e294-946a-4ae7-93cd-8f08bacb1587" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180242Z:edd4e294-946a-4ae7-93cd-8f08bacb1587" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:02:42 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 202 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Location": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01" + ], + "Retry-After": [ + "15" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11996" + ], + "x-ms-request-id": [ + "d6c7a909-4ccd-4227-9a79-a44e1de0448f" + ], + "x-ms-correlation-request-id": [ + "d6c7a909-4ccd-4227-9a79-a44e1de0448f" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180257Z:d6c7a909-4ccd-4227-9a79-a44e1de0448f" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:02:57 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 202 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Location": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01" + ], + "Retry-After": [ + "15" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11995" + ], + "x-ms-request-id": [ + "0214ea55-9b27-4112-b12a-875789b67b11" + ], + "x-ms-correlation-request-id": [ + "0214ea55-9b27-4112-b12a-875789b67b11" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180312Z:0214ea55-9b27-4112-b12a-875789b67b11" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:03:12 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 202 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "Location": [ + "https://management.azure.com/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01" + ], + "Retry-After": [ + "15" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11994" + ], + "x-ms-request-id": [ + "a754c61f-9d6c-4fd8-8da2-ce56fbf90072" + ], + "x-ms-correlation-request-id": [ + "a754c61f-9d6c-4fd8-8da2-ce56fbf90072" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180327Z:a754c61f-9d6c-4fd8-8da2-ce56fbf90072" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:03:27 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 202 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11993" + ], + "x-ms-request-id": [ + "9ebc49bf-4d9d-48cb-bd32-7d3f119b5936" + ], + "x-ms-correlation-request-id": [ + "9ebc49bf-4d9d-48cb-bd32-7d3f119b5936" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180342Z:9ebc49bf-4d9d-48cb-bd32-7d3f119b5936" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:03:42 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 200 + }, + { + "RequestUri": "/subscriptions/e7eb2257-46e4-4826-94df-153853fea38f/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QUzY4NDAtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvZTdlYjIyNTctNDZlNC00ODI2LTk0ZGYtMTUzODUzZmVhMzhmL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVXpZNE5EQXRSVUZUVkZWVE1rVlZRVkFpTENKcWIySk1iMk5oZEdsdmJpSTZJbVZoYzNSMWN6SmxkV0Z3SW4wP2FwaS12ZXJzaW9uPTIwMTYtMDktMDE=", + "RequestMethod": "GET", + "RequestBody": "", + "RequestHeaders": { + "User-Agent": [ + "FxVersion/4.6.28207.03", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.18363.", + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.13" + ] + }, + "ResponseHeaders": { + "Cache-Control": [ + "no-cache" + ], + "Pragma": [ + "no-cache" + ], + "x-ms-ratelimit-remaining-subscription-reads": [ + "11992" + ], + "x-ms-request-id": [ + "6448cf73-424a-47c8-8ab4-f3a738e232cf" + ], + "x-ms-correlation-request-id": [ + "6448cf73-424a-47c8-8ab4-f3a738e232cf" + ], + "x-ms-routing-request-id": [ + "WESTUS:20200610T180342Z:6448cf73-424a-47c8-8ab4-f3a738e232cf" + ], + "Strict-Transport-Security": [ + "max-age=31536000; includeSubDomains" + ], + "X-Content-Type-Options": [ + "nosniff" + ], + "Date": [ + "Wed, 10 Jun 2020 18:03:42 GMT" + ], + "Expires": [ + "-1" + ], + "Content-Length": [ + "0" + ] + }, + "ResponseBody": "", + "StatusCode": 200 + } + ], + "Names": { + "Test-AzureFirewallPolicyWithThreatIntelWhitelistCRUD": [ + "ps6840", + "ps4470", + "ps1098", + "ps7407" + ] + }, + "Variables": { + "SubscriptionId": "e7eb2257-46e4-4826-94df-153853fea38f" + } +} \ No newline at end of file diff --git a/src/Network/Network/Az.Network.psd1 b/src/Network/Network/Az.Network.psd1 index e3a748fb9eda..509d166c8843 100644 --- a/src/Network/Network/Az.Network.psd1 +++ b/src/Network/Network/Az.Network.psd1 @@ -469,7 +469,8 @@ CmdletsToExport = 'Add-AzApplicationGatewayAuthenticationCertificate', 'Get-AzFirewallPolicyRuleCollectionGroup', 'Remove-AzFirewallPolicyRuleCollectionGroup', 'New-AzFirewallPolicy', 'Get-AzFirewallPolicy', - 'Set-AzFirewallPolicy', 'Remove-AzFirewallPolicy', + 'Set-AzFirewallPolicy', 'Remove-AzFirewallPolicy', + 'New-AzFirewallPolicyThreatIntelWhitelist', 'New-AzVirtualRouter', 'Remove-AzVirtualRouter', 'Get-AzVirtualRouter', 'Add-AzVirtualRouterPeer', 'Update-AzVirtualRouterPeer', 'Remove-AzVirtualRouterPeer', diff --git a/src/Network/Network/AzureFirewallPolicy/NewAzureFirewallPolicyCommand.cs b/src/Network/Network/AzureFirewallPolicy/NewAzureFirewallPolicyCommand.cs index 5eabbd185d70..ed35eb8e7b5c 100644 --- a/src/Network/Network/AzureFirewallPolicy/NewAzureFirewallPolicyCommand.cs +++ b/src/Network/Network/AzureFirewallPolicy/NewAzureFirewallPolicyCommand.cs @@ -64,6 +64,11 @@ public class NewAzureFirewallPolicyCommand : AzureFirewallPolicyBaseCmdlet IgnoreCase = false)] public string ThreatIntelMode { get; set; } + [Parameter( + Mandatory = false, + HelpMessage = "The whitelist for Threat Intelligence")] + public PSAzureFirewallPolicyThreatIntelWhitelist ThreatIntelWhitelist { get; set; } + [Parameter( Mandatory = false, ValueFromPipelineByPropertyName = true, @@ -110,6 +115,7 @@ private PSAzureFirewallPolicy CreateAzureFirewallPolicy() ResourceGroupName = this.ResourceGroupName, Location = this.Location, ThreatIntelMode = this.ThreatIntelMode ?? MNM.AzureFirewallThreatIntelMode.Alert, + ThreatIntelWhitelist = this.ThreatIntelWhitelist, BasePolicy = BasePolicy != null ? new Microsoft.Azure.Management.Network.Models.SubResource(BasePolicy) : null }; diff --git a/src/Network/Network/AzureFirewallPolicy/SetAzureFirewallPolicyCommand.cs b/src/Network/Network/AzureFirewallPolicy/SetAzureFirewallPolicyCommand.cs index f8ce607ccaf5..5c8f0bbce2ca 100644 --- a/src/Network/Network/AzureFirewallPolicy/SetAzureFirewallPolicyCommand.cs +++ b/src/Network/Network/AzureFirewallPolicy/SetAzureFirewallPolicyCommand.cs @@ -80,6 +80,11 @@ public class SetAzureFirewallPolicyCommand : AzureFirewallPolicyBaseCmdlet IgnoreCase = false)] public string ThreatIntelMode { get; set; } + [Parameter( + Mandatory = false, + HelpMessage = "The whitelist for Threat Intelligence")] + public PSAzureFirewallPolicyThreatIntelWhitelist ThreatIntelWhitelist { get; set; } + [Parameter( Mandatory = false, ValueFromPipelineByPropertyName = true, @@ -126,6 +131,7 @@ public override void Execute() { this.Location = this.IsParameterBound(c => c.Location) ? Location : InputObject.Location; this.ThreatIntelMode = this.IsParameterBound(c => c.ThreatIntelMode) ? ThreatIntelMode : InputObject.ThreatIntelMode; + this.ThreatIntelWhitelist = this.IsParameterBound(c => c.ThreatIntelWhitelist) ? ThreatIntelWhitelist : InputObject.ThreatIntelWhitelist; this.BasePolicy = this.IsParameterBound(c => c.BasePolicy) ? BasePolicy : (InputObject.BasePolicy != null ? InputObject.BasePolicy.Id : null); var firewallPolicy = new PSAzureFirewallPolicy() @@ -134,6 +140,7 @@ public override void Execute() ResourceGroupName = this.ResourceGroupName, Location = this.Location, ThreatIntelMode = this.ThreatIntelMode ?? MNM.AzureFirewallThreatIntelMode.Alert, + ThreatIntelWhitelist = this.ThreatIntelWhitelist, BasePolicy = this.BasePolicy != null ? new Microsoft.Azure.Management.Network.Models.SubResource(this.BasePolicy) : null }; @@ -152,6 +159,7 @@ public override void Execute() ResourceGroupName = this.ResourceGroupName, Location = this.Location, ThreatIntelMode = this.ThreatIntelMode ?? MNM.AzureFirewallThreatIntelMode.Alert, + ThreatIntelWhitelist = this.ThreatIntelWhitelist, BasePolicy = BasePolicy != null ? new Microsoft.Azure.Management.Network.Models.SubResource(BasePolicy) : null }; diff --git a/src/Network/Network/AzureFirewallPolicy/ThreatIntelWhitelist/NewAzureFirewallThreatIntelWhitelistCommand.cs b/src/Network/Network/AzureFirewallPolicy/ThreatIntelWhitelist/NewAzureFirewallThreatIntelWhitelistCommand.cs new file mode 100644 index 000000000000..f66b2437cc82 --- /dev/null +++ b/src/Network/Network/AzureFirewallPolicy/ThreatIntelWhitelist/NewAzureFirewallThreatIntelWhitelistCommand.cs @@ -0,0 +1,51 @@ +// ---------------------------------------------------------------------------------- +// +// Copyright Microsoft Corporation +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// http://www.apache.org/licenses/LICENSE-2.0 +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// ---------------------------------------------------------------------------------- + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Management.Automation; +using Microsoft.Azure.Commands.Network.Models; + +namespace Microsoft.Azure.Commands.Network +{ + [Cmdlet(VerbsCommon.New, ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "FirewallPolicyThreatIntelWhitelist"), OutputType(typeof(PSAzureFirewallPolicyThreatIntelWhitelist))] + [Alias("New-AzFirewallThreatIntelWhitelistObject")] + public class NewAzureFirewallPolicyThreatIntelWhitelistCommand : NetworkBaseCmdlet + { + [Parameter( + Mandatory = false, + HelpMessage = "The FQDNs of the Threat Intel Whitelist")] + [ValidateNotNull] + public string[] FQDN { get; set; } + + [Parameter( + Mandatory = false, + HelpMessage = "The IP Addresses of the Threat Intel Whitelist")] + [ValidateNotNull] + public string[] IpAddress { get; set; } + + public override void Execute() + { + base.Execute(); + + var threatIntelWhitelist = new PSAzureFirewallPolicyThreatIntelWhitelist + { + FQDNs = this.FQDN?.Select(str => str.Trim()).ToArray(), + IpAddresses = this.IpAddress?.Select(str => str.Trim()).ToArray(), + }; + WriteObject(threatIntelWhitelist); + } + } +} diff --git a/src/Network/Network/ChangeLog.md b/src/Network/Network/ChangeLog.md index d7fa5c066d2b..d8548aecbfd1 100644 --- a/src/Network/Network/ChangeLog.md +++ b/src/Network/Network/ChangeLog.md @@ -35,6 +35,9 @@ - Remove-AzSecurityPartnerProvider - Get-AzSecurityPartnerProvider - Set-AzSecurityPartnerProvider +* Added new cmdlets for Azure FirewallPolicy + - New cmdlets added: + - New-AzFirewallPolicyThreatIntelWhitelist * Added `RequiredZoneNames` on `PSPrivateLinkResource` and `GroupId` on `PSPrivateEndpointConnection` * Fixed incorrect type of SuccessThresholdRoundTripTimeMs parameter for New-AzNetworkWatcherConnectionMonitorTestConfigurationObject * Updated VirtualWan cmdlets to set default value of AllowVnetToVnetTraffic argument to True. diff --git a/src/Network/Network/Models/AzureFirewallPolicy/PSAzureFirewallPolicy.cs b/src/Network/Network/Models/AzureFirewallPolicy/PSAzureFirewallPolicy.cs index 4e3eaae493ff..bd0c11570dd1 100644 --- a/src/Network/Network/Models/AzureFirewallPolicy/PSAzureFirewallPolicy.cs +++ b/src/Network/Network/Models/AzureFirewallPolicy/PSAzureFirewallPolicy.cs @@ -24,6 +24,8 @@ public class PSAzureFirewallPolicy : PSTopLevelResource { public string ThreatIntelMode { get; set; } + public PSAzureFirewallPolicyThreatIntelWhitelist ThreatIntelWhitelist { get; set; } + public Microsoft.Azure.Management.Network.Models.SubResource BasePolicy { get; set; } public string ProvisioningState { get; set; } diff --git a/src/Network/Network/Models/AzureFirewallPolicy/PSAzureFirewallPolicyThreatIntelWhitelist.cs b/src/Network/Network/Models/AzureFirewallPolicy/PSAzureFirewallPolicyThreatIntelWhitelist.cs new file mode 100644 index 000000000000..7900bf0465e5 --- /dev/null +++ b/src/Network/Network/Models/AzureFirewallPolicy/PSAzureFirewallPolicyThreatIntelWhitelist.cs @@ -0,0 +1,81 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +namespace Microsoft.Azure.Commands.Network.Models +{ + using System; + using System.Management.Automation; + using System.Net; + using System.Text.RegularExpressions; + + public class PSAzureFirewallPolicyThreatIntelWhitelist + { + private string[] fqdns; + + private string[] ipAddresses; + + public string[] FQDNs + { + get { return this.fqdns; } + set + { + ValidateFqdns(value); + fqdns = value; + } + } + + public string[] IpAddresses + { + get { return this.ipAddresses; } + set + { + ValidateIpAddresses(value); + ipAddresses = value; + } + } + + private const string SecureGatewayThreatIntelFqdnRegex = "^\\*?([a-zA-Z0-9\\-\\.]?[a-zA-Z0-9])*$"; + + private void ValidateFqdns(string[] fqdns) + { + if (fqdns == null) + return; + + var matchingRegEx = new Regex(SecureGatewayThreatIntelFqdnRegex); + foreach (var fqdn in fqdns) + { + if (!matchingRegEx.IsMatch(fqdn)) + { + throw new PSArgumentException(String.Format("\'{0}\' is not a valid threat intel whitelist FQDN", fqdn)); + } + } + } + + private void ValidateIpAddresses(string[] ipAddresses) + { + if (ipAddresses == null) + return; + + foreach (var ip in ipAddresses) + { + IPAddress ipVal; + if (!IPAddress.TryParse(ip, out ipVal) || ipVal.AddressFamily != System.Net.Sockets.AddressFamily.InterNetwork) + { + throw new PSArgumentException(String.Format("\'{0}\' is not a valid threat intel whitelist Ip Address", ip)); + } + } + } + } +} diff --git a/src/Network/Network/help/Az.Network.md b/src/Network/Network/help/Az.Network.md index 0677476bc95a..5cf910efe2da 100644 --- a/src/Network/Network/help/Az.Network.md +++ b/src/Network/Network/help/Az.Network.md @@ -803,6 +803,9 @@ Create a new Azure Firewall Policy NAT Rule ### [New-AzFirewallPolicyRuleCollectionGroup](New-AzFirewallPolicyRuleCollectionGroup.md) Create a new Azure Firewall Policy Rule Collection Group +### [New-AzFirewallPolicyThreatIntelWhitelist](New-AzFirewallPolicyThreatIntelWhitelist.md) +Create a new threat intelligence whitelist for Azure Firewall Policy + ### [New-AzFirewallThreatIntelWhitelist](New-AzFirewallThreatIntelWhitelist.md) Create a new threat intelligence whitelist for Azure Firewall diff --git a/src/Network/Network/help/New-AzFirewallPolicy.md b/src/Network/Network/help/New-AzFirewallPolicy.md index 180c48de8a92..f94f4dfa2a29 100644 --- a/src/Network/Network/help/New-AzFirewallPolicy.md +++ b/src/Network/Network/help/New-AzFirewallPolicy.md @@ -14,8 +14,8 @@ Creates a new Azure Firewall Policy ``` New-AzFirewallPolicy -Name -ResourceGroupName -Location [-ThreatIntelMode ] - [-BasePolicy ] [-Tag ] [-Force] [-AsJob] [-DefaultProfile ] - [-WhatIf] [-Confirm] [] + [-ThreatIntelWhitelist ] [-BasePolicy ] [-Tag ] + [-Force] [-AsJob] [-DefaultProfile ] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -37,13 +37,21 @@ PS C:\> New-AzFirewallPolicy -Name fp1 -ResourceGroupName TestRg -ThreatIntelMod This example creates an azure firewall policy with a threat intel mode +### 3. Create an empty policy with ThreatIntel Whitelist +```powershell +PS C:\> $threatIntelWhitelist = New-AzFirewallPolicyThreatIntelWhitelist -IpAddress 23.46.72.91,192.79.236.79 -FQDN microsoft.com +PS C:\> New-AzFirewallPolicy -Name fp1 -ResourceGroupName TestRg -ThreatIntelWhitelist $threatIntelWhitelist +``` + +This example creates an azure firewall policy with a threat intel whitelist + ## PARAMETERS ### -AsJob Run cmdlet in the background ```yaml -Type: System.Management.Automation.SwitchParameter +Type: SwitchParameter Parameter Sets: (All) Aliases: @@ -58,7 +66,7 @@ Accept wildcard characters: False The operation mode for Threat Intelligence. ```yaml -Type: System.String +Type: String Parameter Sets: (All) Aliases: @@ -73,7 +81,7 @@ Accept wildcard characters: False The credentials, account, tenant, and subscription used for communication with Azure. ```yaml -Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer +Type: IAzureContextContainer Parameter Sets: (All) Aliases: AzContext, AzureRmContext, AzureCredential @@ -88,7 +96,7 @@ Accept wildcard characters: False Do not ask for confirmation if you want to overwrite a resource ```yaml -Type: System.Management.Automation.SwitchParameter +Type: SwitchParameter Parameter Sets: (All) Aliases: @@ -103,7 +111,7 @@ Accept wildcard characters: False location. ```yaml -Type: System.String +Type: String Parameter Sets: (All) Aliases: @@ -118,7 +126,7 @@ Accept wildcard characters: False The resource name. ```yaml -Type: System.String +Type: String Parameter Sets: (All) Aliases: ResourceName @@ -133,7 +141,7 @@ Accept wildcard characters: False The resource group name. ```yaml -Type: System.String +Type: String Parameter Sets: (All) Aliases: @@ -148,7 +156,7 @@ Accept wildcard characters: False A hashtable which represents resource tags. ```yaml -Type: System.Collections.Hashtable +Type: Hashtable Parameter Sets: (All) Aliases: @@ -163,7 +171,7 @@ Accept wildcard characters: False The operation mode for Threat Intelligence. ```yaml -Type: System.String +Type: String Parameter Sets: (All) Aliases: Accepted values: Alert, Deny, Off @@ -175,11 +183,26 @@ Accept pipeline input: True (ByPropertyName) Accept wildcard characters: False ``` +### -ThreatIntelWhitelist +The whitelist for Threat Intelligence + +```yaml +Type: PSAzureFirewallPolicyThreatIntelWhitelist +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -Confirm Prompts you for confirmation before running the cmdlet. ```yaml -Type: System.Management.Automation.SwitchParameter +Type: SwitchParameter Parameter Sets: (All) Aliases: cf @@ -195,7 +218,7 @@ Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml -Type: System.Management.Automation.SwitchParameter +Type: SwitchParameter Parameter Sets: (All) Aliases: wi diff --git a/src/Network/Network/help/New-AzFirewallPolicyThreatIntelWhitelist.md b/src/Network/Network/help/New-AzFirewallPolicyThreatIntelWhitelist.md new file mode 100644 index 000000000000..9301c99d3bde --- /dev/null +++ b/src/Network/Network/help/New-AzFirewallPolicyThreatIntelWhitelist.md @@ -0,0 +1,92 @@ +--- +external help file: Microsoft.Azure.PowerShell.Cmdlets.Network.dll-Help.xml +Module Name: Az.Network +online version: https://docs.microsoft.com/en-us/powershell/module/az.network/new-azfirewallpolicythreatintelwhitelist +schema: 2.0.0 +--- + +# New-AzFirewallPolicyThreatIntelWhitelist + +## SYNOPSIS +Create a new threat intelligence whitelist for Azure Firewall Policy + +## SYNTAX + +``` +New-AzFirewallPolicyThreatIntelWhitelist [-FQDN ] [-IpAddress ] + [-DefaultProfile ] [] +``` + +## DESCRIPTION +The **New-AzFirewallPolicyThreatIntelWhitelist** cmdlet creates a threat intel whitelist object, which can be used when creating or setting an Azure Firewall Policy. + +## EXAMPLES + +### Example 1 +```powershell +PS C:\> New-AzFirewallPolicyThreatIntelWhitelist -IpAddress 23.46.72.91,192.79.236.79 -FQDN microsoft.com +``` + +This example creates a threat intel whitelist containing a FQDN whitelist of one entry and an Ip address whitelist of two entries + +## PARAMETERS + +### -DefaultProfile +The credentials, account, tenant, and subscription used for communication with Azure. + +```yaml +Type: IAzureContextContainer +Parameter Sets: (All) +Aliases: AzContext, AzureRmContext, AzureCredential + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -FQDN +The FQDNs of the Threat Intel Whitelist + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IpAddress +The IP Addresses of the Threat Intel Whitelist + +```yaml +Type: String[] +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### None + +## OUTPUTS + +### Microsoft.Azure.Commands.Network.Models.PSAzureFirewallPolicyThreatIntelWhitelist + +## NOTES + +## RELATED LINKS diff --git a/src/Network/Network/help/Set-AzFirewallPolicy.md b/src/Network/Network/help/Set-AzFirewallPolicy.md index d029bc426c07..db97abcc5f2d 100644 --- a/src/Network/Network/help/Set-AzFirewallPolicy.md +++ b/src/Network/Network/help/Set-AzFirewallPolicy.md @@ -15,22 +15,23 @@ Saves a modified azure firewall policy ### SetByNameParameterSet (Default) ``` Set-AzFirewallPolicy -Name -ResourceGroupName [-AsJob] [-ThreatIntelMode ] - [-BasePolicy ] -Location [-Tag ] [-DefaultProfile ] - [-WhatIf] [-Confirm] [] + [-ThreatIntelWhitelist ] [-BasePolicy ] -Location + [-Tag ] [-DefaultProfile ] [-WhatIf] [-Confirm] [] ``` ### SetByInputObjectParameterSet ``` Set-AzFirewallPolicy [-Name ] -InputObject [-AsJob] [-ThreatIntelMode ] - [-BasePolicy ] [-Location ] [-Tag ] [-DefaultProfile ] - [-WhatIf] [-Confirm] [] + [-ThreatIntelWhitelist ] [-BasePolicy ] + [-Location ] [-Tag ] [-DefaultProfile ] [-WhatIf] [-Confirm] + [] ``` ### SetByResourceIdParameterSet ``` -Set-AzFirewallPolicy [-AsJob] -ResourceId [-ThreatIntelMode ] [-BasePolicy ] - -Location [-Tag ] [-DefaultProfile ] [-WhatIf] [-Confirm] - [] +Set-AzFirewallPolicy [-AsJob] -ResourceId [-ThreatIntelMode ] + [-ThreatIntelWhitelist ] [-BasePolicy ] -Location + [-Tag ] [-DefaultProfile ] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -52,13 +53,21 @@ PS C:\> Set-AzFirewallPolicy -Name firewallPolicy1 -ResourceGroupName TestRg -Lo This example sets the firewall policy with the new threat intel mode +### Example 3 +```powershell +PS C:\> $threatIntelWhitelist = New-AzFirewallPolicyThreatIntelWhitelist -IpAddress 23.46.72.91,192.79.236.79 -FQDN microsoft.com +PS C:\> Set-AzFirewallPolicy -Name firewallPolicy1 -ResourceGroupName TestRg -Location westcentralus -ThreatIntelWhitelist $threatIntelWhitelist +``` + +This example sets the firewall policy with the new threat intel whitelist + ## PARAMETERS ### -AsJob Run cmdlet in the background ```yaml -Type: System.Management.Automation.SwitchParameter +Type: SwitchParameter Parameter Sets: (All) Aliases: @@ -73,7 +82,7 @@ Accept wildcard characters: False The base policy to inherit from ```yaml -Type: System.String +Type: String Parameter Sets: (All) Aliases: @@ -88,7 +97,7 @@ Accept wildcard characters: False The credentials, account, tenant, and subscription used for communication with Azure. ```yaml -Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer +Type: IAzureContextContainer Parameter Sets: (All) Aliases: AzContext, AzureRmContext, AzureCredential @@ -103,7 +112,7 @@ Accept wildcard characters: False The AzureFirewall Policy ```yaml -Type: Microsoft.Azure.Commands.Network.Models.PSAzureFirewallPolicy +Type: PSAzureFirewallPolicy Parameter Sets: SetByInputObjectParameterSet Aliases: @@ -118,7 +127,7 @@ Accept wildcard characters: False location. ```yaml -Type: System.String +Type: String Parameter Sets: SetByNameParameterSet Aliases: @@ -130,7 +139,7 @@ Accept wildcard characters: False ``` ```yaml -Type: System.String +Type: String Parameter Sets: SetByInputObjectParameterSet Aliases: @@ -142,7 +151,7 @@ Accept wildcard characters: False ``` ```yaml -Type: System.String +Type: String Parameter Sets: SetByResourceIdParameterSet Aliases: @@ -157,7 +166,7 @@ Accept wildcard characters: False The resource name. ```yaml -Type: System.String +Type: String Parameter Sets: SetByNameParameterSet Aliases: ResourceName @@ -169,7 +178,7 @@ Accept wildcard characters: False ``` ```yaml -Type: System.String +Type: String Parameter Sets: SetByInputObjectParameterSet Aliases: ResourceName @@ -184,7 +193,7 @@ Accept wildcard characters: False The resource group name. ```yaml -Type: System.String +Type: String Parameter Sets: SetByNameParameterSet Aliases: @@ -199,7 +208,7 @@ Accept wildcard characters: False The resource Id. ```yaml -Type: System.String +Type: String Parameter Sets: SetByResourceIdParameterSet Aliases: @@ -214,7 +223,7 @@ Accept wildcard characters: False A hashtable which represents resource tags. ```yaml -Type: System.Collections.Hashtable +Type: Hashtable Parameter Sets: (All) Aliases: @@ -229,7 +238,7 @@ Accept wildcard characters: False The operation mode for Threat Intelligence. ```yaml -Type: System.String +Type: String Parameter Sets: (All) Aliases: Accepted values: Alert, Deny, Off @@ -241,11 +250,26 @@ Accept pipeline input: True (ByPropertyName) Accept wildcard characters: False ``` +### -ThreatIntelWhitelist +The whitelist for Threat Intelligence + +```yaml +Type: PSAzureFirewallPolicyThreatIntelWhitelist +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -Confirm Prompts you for confirmation before running the cmdlet. ```yaml -Type: System.Management.Automation.SwitchParameter +Type: SwitchParameter Parameter Sets: (All) Aliases: cf @@ -261,7 +285,7 @@ Shows what would happen if the cmdlet runs. The cmdlet is not run. ```yaml -Type: System.Management.Automation.SwitchParameter +Type: SwitchParameter Parameter Sets: (All) Aliases: wi diff --git a/tools/StaticAnalysis/Exceptions/Az.Network/SignatureIssues.csv b/tools/StaticAnalysis/Exceptions/Az.Network/SignatureIssues.csv index 341e69aded64..778df2e8e04d 100644 --- a/tools/StaticAnalysis/Exceptions/Az.Network/SignatureIssues.csv +++ b/tools/StaticAnalysis/Exceptions/Az.Network/SignatureIssues.csv @@ -340,5 +340,6 @@ "Microsoft.Azure.PowerShell.Cmdlets.Network.dll","Microsoft.Azure.Commands.Network.NetworkWatcher.NewNetworkWatcherConnectionMonitorProtocolConfigurationObject","New-AzNetworkWatcherConnectionMonitorProtocolConfigurationObject","1","8510","Cmdlet 'New-AzNetworkWatcherConnectionMonitorProtocolConfigurationObject' has multiple parameter sets, but no defined default parameter set.","Define a default parameter set in the cmdlet attribute." "Microsoft.Azure.PowerShell.Cmdlets.Network.dll","Microsoft.Azure.Commands.Network.NewAzRadiusServerCommand","New-AzRadiusServer","1","8100","New-AzRadiusServer Does not support ShouldProcess but the cmdlet verb New indicates that it should.","Determine if the cmdlet should implement ShouldProcess and if so determine if it should implement Force / ShouldContinue" "Microsoft.Azure.PowerShell.Cmdlets.Network.dll","Microsoft.Azure.Commands.Network.NewAzurePrivateDnsZoneConfigCommand","New-AzPrivateDnsZoneConfig","1","8100","New-AzPrivateDnsZoneConfig Does not support ShouldProcess but the cmdlet verb New indicates that it should.","Determine if the cmdlet should implement ShouldProcess and if so determine if it should implement Force / ShouldContinue" +"Microsoft.Azure.PowerShell.Cmdlets.Network.dll","Microsoft.Azure.Commands.Network.NewAzureFirewallPolicyThreatIntelWhitelistCommand","New-AzFirewallPolicyThreatIntelWhitelist","1","8100","New-AzFirewallPolicyThreatIntelWhitelist Does not support ShouldProcess but the cmdlet verb New indicates that it should.","Determine if the cmdlet should implement ShouldProcess and if so determine if it should implement Force / ShouldContinue" "Microsoft.Azure.PowerShell.Cmdlets.Network.dll","Microsoft.Azure.Commands.Network.NewAzureFirewallPolicyNatRuleCollectionCommand","New-AzFirewallPolicyNatRuleCollection","1","8100","New-AzFirewallPolicyNatRuleCollection Does not support ShouldProcess but the cmdlet verb New indicates that it should.","Determine if the cmdlet should implement ShouldProcess and if so determine if it should implement Force / ShouldContinue" -"Microsoft.Azure.PowerShell.Cmdlets.Network.dll","Microsoft.Azure.Commands.Network.NewAzFirewallPolicyNatRuleCommand","New-AzFirewallPolicyNatRule","1","8100","New-AzFirewallPolicyNatRule Does not support ShouldProcess but the cmdlet verb New indicates that it should.","Determine if the cmdlet should implement ShouldProcess and if so determine if it should implement Force / ShouldContinue" \ No newline at end of file +"Microsoft.Azure.PowerShell.Cmdlets.Network.dll","Microsoft.Azure.Commands.Network.NewAzFirewallPolicyNatRuleCommand","New-AzFirewallPolicyNatRule","1","8100","New-AzFirewallPolicyNatRule Does not support ShouldProcess but the cmdlet verb New indicates that it should.","Determine if the cmdlet should implement ShouldProcess and if so determine if it should implement Force / ShouldContinue"