Skip to content

Commit 5b7c7fc

Browse files
authored
Merge pull request Azure#2967 from allanbomsft/feature/allanbo/appgwwaf
Added support for Application Gateway Web Application Firewall
2 parents 376bbcd + e82ed8a commit 5b7c7fc

20 files changed

+4744
-1628
lines changed

src/ResourceManager/Compute/Commands.Compute.Test/Commands.Compute.Test.csproj

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,8 @@
6767
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Compute.13.0.4-prerelease\lib\net45\Microsoft.Azure.Management.Compute.dll</HintPath>
6868
<Private>True</Private>
6969
</Reference>
70-
71-
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
72-
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.0-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
70+
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
71+
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.1-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
7372
<Private>True</Private>
7473
</Reference>
7574
<Reference Include="Microsoft.Azure.Management.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">

src/ResourceManager/Compute/Commands.Compute.Test/packages.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<package id="Microsoft.Azure.Graph.RBAC" version="3.2.0-preview" targetFramework="net45" />
88
<package id="Microsoft.Azure.Management.Authorization" version="1.0.0" targetFramework="net45" />
99
<package id="Microsoft.Azure.Management.Compute" version="13.0.4-prerelease" targetFramework="net45" />
10-
<package id="Microsoft.Azure.Management.Network" version="7.1.0-preview" targetFramework="net45" />
10+
<package id="Microsoft.Azure.Management.Network" version="7.1.1-preview" targetFramework="net45" />
1111
<package id="Microsoft.Azure.Management.Storage" version="4.1.0-preview" targetFramework="net45" />
1212
<package id="Microsoft.Azure.Test.Framework" version="1.0.6052.28118-prerelease" targetFramework="net45" />
1313
<package id="Microsoft.Azure.Test.HttpRecorder" version="1.6.7-preview" targetFramework="net45" />

src/ResourceManager/Compute/Commands.Compute/Commands.Compute.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@
8080
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Compute.13.0.4-prerelease\lib\net45\Microsoft.Azure.Management.Compute.dll</HintPath>
8181
<Private>True</Private>
8282
</Reference>
83-
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
84-
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.0-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
83+
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
84+
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.1-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
8585
<Private>True</Private>
8686
</Reference>
8787
<Reference Include="Microsoft.Azure.Management.Storage">

src/ResourceManager/Compute/Commands.Compute/packages.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<package id="Microsoft.Azure.KeyVault.Core" version="1.0.0" targetFramework="net45" />
1010
<package id="Microsoft.Azure.Management.Authorization" version="1.0.0" targetFramework="net45" />
1111
<package id="Microsoft.Azure.Management.Compute" version="13.0.4-prerelease" targetFramework="net45" />
12-
<package id="Microsoft.Azure.Management.Network" version="7.1.0-preview" targetFramework="net45" />
12+
<package id="Microsoft.Azure.Management.Network" version="7.1.1-preview" targetFramework="net45" />
1313
<package id="Microsoft.Azure.Management.Storage" version="4.1.0-preview" targetFramework="net45" />
1414
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" />
1515
<package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net45" />

src/ResourceManager/Network/Commands.Network.Test/Commands.Network.Test.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,8 @@
6363
<Reference Include="Microsoft.Azure.Management.Authorization">
6464
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Authorization.2.0.0\lib\net40\Microsoft.Azure.Management.Authorization.dll</HintPath>
6565
</Reference>
66-
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
67-
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.0-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
66+
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
67+
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.1-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
6868
<Private>True</Private>
6969
</Reference>
7070
<Reference Include="Microsoft.Azure.Insights">

src/ResourceManager/Network/Commands.Network.Test/ScenarioTests/ApplicationGatewayTests.ps1

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,14 @@ function Test-ApplicationGatewayCRUD
9797
$rule01 = New-AzureRmApplicationGatewayRequestRoutingRule -Name $rule01Name -RuleType basic -BackendHttpSettings $poolSetting01 -HttpListener $listener01 -BackendAddressPool $pool
9898
$rule02 = New-AzureRmApplicationGatewayRequestRoutingRule -Name $rule02Name -RuleType basic -BackendHttpSettings $poolSetting02 -HttpListener $listener02 -BackendAddressPool $pool
9999

100-
$sku = New-AzureRmApplicationGatewaySku -Name Standard_Small -Tier Standard -Capacity 2
101-
100+
$sku = New-AzureRmApplicationGatewaySku -Name WAF_Medium -Tier WAF -Capacity 2
101+
102102
$sslPolicy = New-AzureRmApplicationGatewaySslPolicy -DisabledSslProtocols TLSv1_0, TLSv1_1
103103

104+
$firewallConfig = New-AzureRmApplicationGatewayWebApplicationFirewallConfiguration -Enabled $true -FirewallMode Prevention
105+
104106
# Create Application Gateway
105-
$appgw = New-AzureRmApplicationGateway -Name $appgwName -ResourceGroupName $rgname -Location $location -BackendAddressPools $pool, $nicPool -BackendHttpSettingsCollection $poolSetting01, $poolSetting02 -FrontendIpConfigurations $fipconfig01, $fipconfig02  -GatewayIpConfigurations $gipconfig -FrontendPorts $fp01, $fp02 -HttpListeners $listener01, $listener02 -RequestRoutingRules $rule01, $rule02 -Sku $sku -SslPolicy $sslPolicy -AuthenticationCertificates $authcert01
107+
$appgw = New-AzureRmApplicationGateway -Name $appgwName -ResourceGroupName $rgname -Location $location -BackendAddressPools $pool, $nicPool -BackendHttpSettingsCollection $poolSetting01, $poolSetting02 -FrontendIpConfigurations $fipconfig01, $fipconfig02  -GatewayIpConfigurations $gipconfig -FrontendPorts $fp01, $fp02 -HttpListeners $listener01, $listener02 -RequestRoutingRules $rule01, $rule02 -Sku $sku -SslPolicy $sslPolicy -AuthenticationCertificates $authcert01 -WebApplicationFirewallConfiguration $firewallConfig
106108

107109
# Get Application Gateway
108110
$getgw =  Get-AzureRmApplicationGateway -Name $appgwName -ResourceGroupName $rgname
@@ -157,6 +159,11 @@ function Test-ApplicationGatewayCRUD
157159
# Modify existing application gateway with new configuration
158160
Set-AzureRmApplicationGateway -ApplicationGateway $getgw
159161

162+
# Modify WAF config and verify that it can be retrieved
163+
$getgw = Set-AzureRmApplicationGatewayWebApplicationFirewallConfiguration -ApplicationGateway $getgw -Enabled $true -FirewallMode Detection
164+
Set-AzureRmApplicationGateway -ApplicationGateway $getgw
165+
$firewallConfig2 = Get-AzureRmApplicationGatewayWebApplicationFirewallConfiguration -ApplicationGateway $getgw
166+
160167
# Remove probe, request timeout, multi-site and URL routing from exiting gateway
161168
# Probe, request timeout, multi-site, URL routing are optional
162169
$getgw = Get-AzureRmApplicationGateway -Name $appgwName -ResourceGroupName $rgname

src/ResourceManager/Network/Commands.Network.Test/SessionRecords/Commands.Network.Test.ScenarioTests.ApplicationGatewayTests/TestApplicationGatewayCRUD.json

Lines changed: 4145 additions & 1610 deletions
Large diffs are not rendered by default.

src/ResourceManager/Network/Commands.Network.Test/packages.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<package id="Microsoft.Azure.Gallery" version="2.6.2-preview" targetFramework="net45" />
77
<package id="Microsoft.Azure.Graph.RBAC" version="3.2.0-preview" targetFramework="net45" />
88
<package id="Microsoft.Azure.Management.Authorization" version="1.0.0" targetFramework="net45" />
9-
<package id="Microsoft.Azure.Management.Network" version="7.1.0-preview" targetFramework="net45" />
9+
<package id="Microsoft.Azure.Management.Network" version="7.1.1-preview" targetFramework="net45" />
1010
<package id="Microsoft.Azure.Insights" version="0.13.1-preview" targetFramework="net45" />
1111
<package id="Microsoft.Azure.Management.Redis" version="3.1.1-preview" targetFramework="net45" />
1212
<package id="Microsoft.Azure.Management.Resources" version="2.20.0-preview" targetFramework="net45" />
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// ----------------------------------------------------------------------------------
2+
//
3+
// Copyright Microsoft Corporation
4+
// Licensed under the Apache License, Version 2.0 (the "License");
5+
// you may not use this file except in compliance with the License.
6+
// You may obtain a copy of the License at
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
// ----------------------------------------------------------------------------------
14+
15+
using System.Management.Automation;
16+
17+
namespace Microsoft.Azure.Commands.Network
18+
{
19+
public class AzureApplicationGatewayWebApplicationFirewallConfigurationBase : NetworkBaseCmdlet
20+
{
21+
[Parameter(
22+
Mandatory = true,
23+
HelpMessage = "Whether web application firewall functionality is enabled")]
24+
[ValidateNotNullOrEmpty]
25+
public bool Enabled { get; set; }
26+
27+
[Parameter(
28+
Mandatory = true,
29+
HelpMessage = "Web application firewall mode")]
30+
[ValidateSet("Detection", "Prevention", IgnoreCase = true)]
31+
[ValidateNotNullOrEmpty]
32+
public string FirewallMode { get; set; }
33+
34+
public override void ExecuteCmdlet()
35+
{
36+
base.ExecuteCmdlet();
37+
}
38+
}
39+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
// ----------------------------------------------------------------------------------
2+
//
3+
// Copyright Microsoft Corporation
4+
// Licensed under the Apache License, Version 2.0 (the "License");
5+
// you may not use this file except in compliance with the License.
6+
// You may obtain a copy of the License at
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
// ----------------------------------------------------------------------------------
14+
15+
using Microsoft.Azure.Commands.Network.Models;
16+
using System.Management.Automation;
17+
18+
namespace Microsoft.Azure.Commands.Network
19+
{
20+
[Cmdlet(VerbsCommon.Get, "AzureRmApplicationGatewayWebApplicationFirewallConfiguration"),
21+
OutputType(typeof(PSApplicationGatewayWebApplicationFirewallConfiguration))]
22+
public class GetAzureApplicationGatewayWebApplicationFirewallConfigurationCommand : NetworkBaseCmdlet
23+
{
24+
[Parameter(
25+
Mandatory = true,
26+
ValueFromPipeline = true,
27+
HelpMessage = "The application gateway")]
28+
public PSApplicationGateway ApplicationGateway { get; set; }
29+
30+
public override void ExecuteCmdlet()
31+
{
32+
base.ExecuteCmdlet();
33+
WriteObject(this.ApplicationGateway.WebApplicationFirewallConfiguration, true);
34+
}
35+
}
36+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
// ----------------------------------------------------------------------------------
2+
//
3+
// Copyright Microsoft Corporation
4+
// Licensed under the Apache License, Version 2.0 (the "License");
5+
// you may not use this file except in compliance with the License.
6+
// You may obtain a copy of the License at
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
// ----------------------------------------------------------------------------------
14+
15+
using Microsoft.Azure.Commands.Network.Models;
16+
using System.Management.Automation;
17+
18+
namespace Microsoft.Azure.Commands.Network
19+
{
20+
[Cmdlet(VerbsCommon.New, "AzureRmApplicationGatewayWebApplicationFirewallConfiguration", SupportsShouldProcess = true),
21+
OutputType(typeof(PSApplicationGatewayWebApplicationFirewallConfiguration))]
22+
public class NewAzureApplicationGatewayWebApplicationFirewallConfigurationCommand : AzureApplicationGatewayWebApplicationFirewallConfigurationBase
23+
{
24+
public override void ExecuteCmdlet()
25+
{
26+
if (ShouldProcess("AzureApplicationGatewayWebApplicationFirewallConfiguration", Microsoft.Azure.Commands.Network.Properties.Resources.CreatingResourceMessage))
27+
{
28+
base.ExecuteCmdlet();
29+
30+
PSApplicationGatewayWebApplicationFirewallConfiguration firewallConfiguration = new PSApplicationGatewayWebApplicationFirewallConfiguration()
31+
{
32+
Enabled = this.Enabled,
33+
FirewallMode = this.FirewallMode,
34+
};
35+
36+
WriteObject(firewallConfiguration);
37+
}
38+
}
39+
}
40+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
// ----------------------------------------------------------------------------------
2+
//
3+
// Copyright Microsoft Corporation
4+
// Licensed under the Apache License, Version 2.0 (the "License");
5+
// you may not use this file except in compliance with the License.
6+
// You may obtain a copy of the License at
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
// ----------------------------------------------------------------------------------
14+
15+
using Microsoft.Azure.Commands.Network.Models;
16+
using System.Management.Automation;
17+
18+
namespace Microsoft.Azure.Commands.Network
19+
{
20+
[Cmdlet(VerbsCommon.Set, "AzureRmApplicationGatewayWebApplicationFirewallConfiguration", SupportsShouldProcess = true),
21+
OutputType(typeof(PSApplicationGateway))]
22+
public class SetAzureApplicationGatewayWebApplicationFirewallConfigurationCommand : AzureApplicationGatewayWebApplicationFirewallConfigurationBase
23+
{
24+
[Parameter(
25+
Mandatory = true,
26+
ValueFromPipeline = true,
27+
HelpMessage = "The application gateway")]
28+
public PSApplicationGateway ApplicationGateway { get; set; }
29+
public override void ExecuteCmdlet()
30+
{
31+
if (ShouldProcess("AzureApplicationGatewayWebApplicationFirewallConfiguration", Microsoft.Azure.Commands.Network.Properties.Resources.OverwritingResourceMessage))
32+
{
33+
base.ExecuteCmdlet();
34+
35+
this.ApplicationGateway.WebApplicationFirewallConfiguration.Enabled = this.Enabled;
36+
this.ApplicationGateway.WebApplicationFirewallConfiguration.FirewallMode = this.FirewallMode;
37+
38+
WriteObject(this.ApplicationGateway);
39+
}
40+
}
41+
}
42+
}

src/ResourceManager/Network/Commands.Network/ApplicationGateway/NewAzureApplicationGatewayCommand.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,12 @@ public class NewAzureApplicationGatewayCommand : ApplicationGatewayBaseCmdlet
129129
HelpMessage = "The list of request routing rule")]
130130
public List<PSApplicationGatewayRequestRoutingRule> RequestRoutingRules { get; set; }
131131

132+
[Parameter(
133+
Mandatory = false,
134+
ValueFromPipelineByPropertyName = true,
135+
HelpMessage = "Firewall configuration")]
136+
public virtual PSApplicationGatewayWebApplicationFirewallConfiguration WebApplicationFirewallConfiguration { get; set; }
137+
132138
[Parameter(
133139
Mandatory = false,
134140
ValueFromPipelineByPropertyName = true,
@@ -228,6 +234,11 @@ private PSApplicationGateway CreateApplicationGateway()
228234
applicationGateway.RequestRoutingRules = this.RequestRoutingRules;
229235
}
230236

237+
if (this.WebApplicationFirewallConfiguration != null)
238+
{
239+
applicationGateway.WebApplicationFirewallConfiguration = this.WebApplicationFirewallConfiguration;
240+
}
241+
231242
// Normalize the IDs
232243
ApplicationGatewayChildResourceHelper.NormalizeChildResourcesId(applicationGateway);
233244

src/ResourceManager/Network/Commands.Network/ApplicationGateway/Sku/AzureApplicationGatewaySkuBase.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,14 @@ public class AzureApplicationGatewaySkuBase : NetworkBaseCmdlet
2121
[Parameter(
2222
Mandatory = true,
2323
HelpMessage = "The name of the SKU")]
24-
[ValidateSet("Standard_Small", "Standard_Medium", "Standard_Large", IgnoreCase = true)]
24+
[ValidateSet("Standard_Small", "Standard_Medium", "Standard_Large", "WAF_Medium", "WAF_Large", IgnoreCase = true)]
2525
[ValidateNotNullOrEmpty]
2626
public string Name { get; set; }
2727

2828
[Parameter(
2929
Mandatory = true,
3030
HelpMessage = "Application gateway tier")]
31-
[ValidateSet("Standard", IgnoreCase = true)]
31+
[ValidateSet("Standard", "WAF", IgnoreCase = true)]
3232
[ValidateNotNullOrEmpty]
3333
public string Tier { get; set; }
3434

src/ResourceManager/Network/Commands.Network/Commands.Network.csproj

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@
7373
<SpecificVersion>False</SpecificVersion>
7474
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Authorization.2.0.0\lib\net40\Microsoft.Azure.Management.Authorization.dll</HintPath>
7575
</Reference>
76-
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
77-
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.0-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
76+
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
77+
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.1-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
7878
<Private>True</Private>
7979
</Reference>
8080
<Reference Include="Microsoft.Data.Edm">
@@ -181,6 +181,10 @@
181181
<Compile Include="ApplicationGateway\BackendHttpSettings\NewAzureApplicationGatewayBackendHttpSettingsCommand.cs" />
182182
<Compile Include="ApplicationGateway\BackendHttpSettings\RemoveAzureApplicationGatewayBackendHttpSettingsCommand.cs" />
183183
<Compile Include="ApplicationGateway\BackendHttpSettings\SetAzureApplicationGatewayBackendHttpSettingsCommand.cs" />
184+
<Compile Include="ApplicationGateway\FirewallConfiguration\AzureApplicationGatewayWebApplicationFirewallConfigurationBase.cs" />
185+
<Compile Include="ApplicationGateway\FirewallConfiguration\GetAzureApplicationGatewayWebApplicationFirewallConfigurationCommand.cs" />
186+
<Compile Include="ApplicationGateway\FirewallConfiguration\NewAzureApplicationGatewayWebApplicationFirewallConfigurationCommand.cs" />
187+
<Compile Include="ApplicationGateway\FirewallConfiguration\SetAzureApplicationGatewayWebApplicationFirewallConfigurationCommand.cs" />
184188
<Compile Include="ApplicationGateway\FrontendIPConfiguration\AddAzureApplicationGatewayFrontendIPConfigCommand.cs" />
185189
<Compile Include="ApplicationGateway\FrontendIPConfiguration\AzureApplicationGatewayFrontendIPConfigBase.cs" />
186190
<Compile Include="ApplicationGateway\FrontendIPConfiguration\GetAzureApplicationGatewayFrontendIPConfigCommand.cs" />
@@ -278,6 +282,7 @@
278282
<Compile Include="ExpressRouteCircuit\ExpressRouteCircuitBaseCmdlet.cs" />
279283
<Compile Include="Models\PSIPAddressAvailabilityResult.cs" />
280284
<Compile Include="Models\PSApplicationGatewayAuthenticationCertificate.cs" />
285+
<Compile Include="Models\PSApplicationGatewayWebApplicationFirewallConfiguration.cs" />
281286
<Compile Include="Models\PSApplicationGatewaySslPolicy.cs" />
282287
<Compile Include="Models\PSBgpSettings.cs" />
283288
<Compile Include="Models\PSApplicationGateway.cs" />

0 commit comments

Comments
 (0)