Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,11 @@ public class AzureApplicationGatewayBackendSettingsBase : NetworkBaseCmdlet
HelpMessage = "Sets host header to be sent to the backend servers.")]
public string HostName { get; set; }

[Parameter(
Mandatory = false,
HelpMessage = "Whether to send Proxy Protocol header to backend servers over TCP or TLS protocols. Default value is false.")]
public bool? EnableL4ClientIpPreservation { get; set; }

public override void ExecuteCmdlet()
{
base.ExecuteCmdlet();
Expand Down Expand Up @@ -123,6 +128,16 @@ public PSApplicationGatewayBackendSettings NewObject()
backendSettings.PickHostNameFromBackendAddress = true;
}

if (this.EnableL4ClientIpPreservation.HasValue)
{
backendSettings.EnableL4ClientIpPreservation = this.EnableL4ClientIpPreservation.Value;
}
else
{
// Default value is false according to the API specification
backendSettings.EnableL4ClientIpPreservation = false;
}

if(this.HostName != null)
{
backendSettings.HostName = this.HostName;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,11 @@ public class AzureApplicationGatewayProbeConfigBase : NetworkBaseCmdlet
[ValidateRange(1, 65535)]
public int Port { get; set; }

[Parameter(
Mandatory = false,
HelpMessage = "Whether to send Proxy Protocol header along with the Health Probe over TCP or TLS protocol. Default value is false.")]
public bool? EnableProbeProxyProtocolHeader { get; set; }

[Parameter(
Mandatory = false,
HelpMessage = "Body that must be contained in the health response. Default value is empty")]
Expand Down Expand Up @@ -107,6 +112,16 @@ public PSApplicationGatewayProbe NewObject()
probe.Port = this.Port;
}

if (this.EnableProbeProxyProtocolHeader.HasValue)
{
probe.EnableProbeProxyProtocolHeader = this.EnableProbeProxyProtocolHeader.Value;
}
else
{
// Default value is false according to the API specification
probe.EnableProbeProxyProtocolHeader = false;
}

probe.Id =
ApplicationGatewayChildResourceHelper.GetResourceNotSetId(
this.NetworkClient.NetworkManagementClient.SubscriptionId,
Expand Down
8 changes: 8 additions & 0 deletions src/Network/Network/ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,14 @@
- Added `-AuthenticationType` and `-CertificateAuthentication` parameters to `New-AzVirtualNetworkGatewayConnection` and `Set-AzVirtualNetworkGatewayConnection`
- Added `-UserAssignedIdentityId` parameter to `Set-AzVirtualNetworkGateway` and `New-AzVirtualNetworkGateway` for managed identity configuration
* Upgraded the api version from 2024-10-01 to 2025-01-01
* Added property 'EnableL4ClientIpPreservation' to Application Gateway Backend Settings, as well as support for them in the following cmdlets:
- `New-AzApplicationGatewayBackendSetting`
- `Add-AzApplicationGatewayBackendSetting`
- `Set-AzApplicationGatewayBackendSetting`
* Added property 'EnableProbeProxyProtocolHeader' to Application Gateway Probes, as well as support for them in the following cmdlets:
- `Set-AzApplicationGatewayProbeConfig`
- `Add-AzApplicationGatewayProbeConfig`
- `New-AzApplicationGatewayProbeConfig`

## Version 7.21.0
- Added deprecation warning for cmdlet `Invoke-AzFirewallPacketCapture`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ public class PSApplicationGatewayBackendSettings : PSChildResource
[Ps1Xml(Target = ViewControl.Table)]
public bool? PickHostNameFromBackendAddress { get; set; }
[Ps1Xml(Target = ViewControl.Table)]
public bool? EnableL4ClientIpPreservation { get; set; }
[Ps1Xml(Target = ViewControl.Table)]
public string ProvisioningState { get; set; }
public string Type { get; set; }

Expand Down
2 changes: 2 additions & 0 deletions src/Network/Network/Models/PSApplicationGatewayProbe.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ public class PSApplicationGatewayProbe : PSChildResource
public int? MinServers { get; set; }
[Ps1Xml(Target = ViewControl.Table)]
public int? Port { get; set; }
[Ps1Xml(Target = ViewControl.Table)]
public bool? EnableProbeProxyProtocolHeader { get; set; }
public PSApplicationGatewayProbeHealthResponseMatch Match { get; set; }
[Ps1Xml(Target = ViewControl.Table)]
public string ProvisioningState { get; set; }
Expand Down
15 changes: 15 additions & 0 deletions src/Network/Network/help/Add-AzApplicationGatewayBackendSetting.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Add-AzApplicationGatewayBackendSetting -ApplicationGateway <PSApplicationGateway
-Protocol <String> [-Timeout <Int32>] [-ProbeId <String>] [-Probe <PSApplicationGatewayProbe>]
[-TrustedRootCertificate <PSApplicationGatewayTrustedRootCertificate[]>] [-PickHostNameFromBackendAddress]
[-HostName <String>] [-DefaultProfile <IAzureContextContainer>]
[-EnableL4ClientIpPreservation <Boolean>]
[<CommonParameters>]
```

Expand Down Expand Up @@ -202,6 +203,20 @@ Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -EnableL4ClientIpPreservation
Whether to send Proxy Protocol header to backend servers over TCP or TLS protocols. Default value is false.

```yaml
Type: System.Boolean
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
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).
Expand Down
16 changes: 16 additions & 0 deletions src/Network/Network/help/Add-AzApplicationGatewayProbeConfig.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Add-AzApplicationGatewayProbeConfig -ApplicationGateway <PSApplicationGateway> -
-Protocol <String> [-HostName <String>] [-Path <String>] -Interval <Int32> -Timeout <Int32>
-UnhealthyThreshold <Int32> [-PickHostNameFromBackendHttpSettings] [-MinServers <Int32>] [-Port <Int32>]
[-Match <PSApplicationGatewayProbeHealthResponseMatch>] [-DefaultProfile <IAzureContextContainer>]
[-EnableProbeProxyProtocolHeader <Boolean>]
[<CommonParameters>]
```

Expand Down Expand Up @@ -177,6 +178,21 @@ Accept pipeline input: False
Accept wildcard characters: False
```

### -EnableProbeProxyProtocolHeader
Whether to send Proxy Protocol header along with the Health Probe over TCP or TLS protocol. Default value is false.

```yaml
Type: System.Boolean
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```

### -Port
Port that is used for probing the backend server

Expand Down
16 changes: 16 additions & 0 deletions src/Network/Network/help/New-AzApplicationGatewayBackendSetting.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ New-AzApplicationGatewayBackendSetting -Name <String> -Port <Int32> -Protocol <S
[-ProbeId <String>] [-Probe <PSApplicationGatewayProbe>]
[-TrustedRootCertificate <PSApplicationGatewayTrustedRootCertificate[]>] [-PickHostNameFromBackendAddress]
[-HostName <String>] [-DefaultProfile <IAzureContextContainer>]
[-EnableL4ClientIpPreservation <Boolean>]
[<CommonParameters>]
```

Expand Down Expand Up @@ -188,6 +189,21 @@ Accept pipeline input: False
Accept wildcard characters: False
```

### -EnableL4ClientIpPreservation
Whether to send Proxy Protocol header to backend servers over TCP or TLS protocols. Default value is false.

```yaml
Type: System.Boolean
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
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).

Expand Down
16 changes: 16 additions & 0 deletions src/Network/Network/help/New-AzApplicationGatewayProbeConfig.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Creates a health probe.
New-AzApplicationGatewayProbeConfig -Name <String> -Protocol <String> [-HostName <String>] [-Path <String>]
-Interval <Int32> -Timeout <Int32> -UnhealthyThreshold <Int32> [-PickHostNameFromBackendHttpSettings]
[-MinServers <Int32>] [-Port <Int32>] [-Match <PSApplicationGatewayProbeHealthResponseMatch>]
[-EnableProbeProxyProtocolHeader <Boolean>]
[-DefaultProfile <IAzureContextContainer>] [<CommonParameters>]
```

Expand Down Expand Up @@ -219,6 +220,21 @@ Accept pipeline input: False
Accept wildcard characters: False
```

### -EnableProbeProxyProtocolHeader
Whether to send Proxy Protocol header along with the Health Probe over TCP or TLS protocol. Default value is false.

```yaml
Type: System.Boolean
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```

### -UnhealthyThreshold
Specifies the probe retry count.
The backend server is marked down after consecutive probe failure count reaches the unhealthy threshold.
Expand Down
15 changes: 15 additions & 0 deletions src/Network/Network/help/Set-AzApplicationGatewayBackendSetting.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Set-AzApplicationGatewayBackendSetting -ApplicationGateway <PSApplicationGateway
-Protocol <String> [-Timeout <Int32>] [-ProbeId <String>] [-Probe <PSApplicationGatewayProbe>]
[-TrustedRootCertificate <PSApplicationGatewayTrustedRootCertificate[]>] [-PickHostNameFromBackendAddress]
[-HostName <String>] [-DefaultProfile <IAzureContextContainer>]
[-EnableL4ClientIpPreservation <Boolean>]
[<CommonParameters>]
```

Expand Down Expand Up @@ -203,6 +204,20 @@ Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -EnableL4ClientIpPreservation
Whether to send Proxy Protocol header to backend servers over TCP or TLS protocols. Default value is false.

```yaml
Type: System.Boolean
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
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).
Expand Down
16 changes: 16 additions & 0 deletions src/Network/Network/help/Set-AzApplicationGatewayProbeConfig.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Set-AzApplicationGatewayProbeConfig -ApplicationGateway <PSApplicationGateway> -
-Protocol <String> [-HostName <String>] [-Path <String>] -Interval <Int32> -Timeout <Int32>
-UnhealthyThreshold <Int32> [-PickHostNameFromBackendHttpSettings] [-MinServers <Int32>] [-Port <Int32>]
[-Match <PSApplicationGatewayProbeHealthResponseMatch>] [-DefaultProfile <IAzureContextContainer>]
[-EnableProbeProxyProtocolHeader <Boolean>]
[<CommonParameters>]
```

Expand Down Expand Up @@ -253,6 +254,21 @@ Accept pipeline input: False
Accept wildcard characters: False
```

### -EnableProbeProxyProtocolHeader
Whether to send Proxy Protocol header along with the Health Probe over TCP or TLS protocol. Default value is false.

```yaml
Type: System.Boolean
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
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).

Expand Down