Edit

Share via


Add-AzApplicationGatewaySslCertificate

Adds an SSL certificate to an application gateway.

Syntax

Default (Default)

Add-AzApplicationGatewaySslCertificate
    -ApplicationGateway <PSApplicationGateway>
    -Name <String>
    [-CertificateFile <String>]
    [-Password <SecureString>]
    [-KeyVaultSecretId <String>]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

Description

The Add-AzApplicationGatewaySslCertificate cmdlet adds an SSL certificate to an application gateway.

Examples

Example 1: Add an SSL certificate using pfx to an application gateway.

$AppGW = Get-AzApplicationGateway -Name "ApplicationGateway01" -ResourceGroupName "ResourceGroup01"
$password = ConvertTo-SecureString -String "****" -AsPlainText -Force
$AppGW = Add-AzApplicationGatewaySslCertificate -ApplicationGateway $AppGW -Name "Cert01" -CertificateFile "D:\cert01.pfx" -Password $password

This command gets an application gateway named ApplicationGateway01 and then adds an SSL certificate named Cert01 to it.

Example 2: Add an SSL certificate using KeyVault Secret (version-less secretId) to an application gateway.

$AppGW = Get-AzApplicationGateway -Name "ApplicationGateway01" -ResourceGroupName "ResourceGroup01"
$secret = Get-AzKeyVaultSecret -VaultName "keyvault01" -Name "sslCert01"
$secretId = $secret.Id.Replace($secret.Version, "") # https://<keyvaultname>.vault.azure.net/secrets/
$AppGW = Add-AzApplicationGatewaySslCertificate -ApplicationGateway $AppGW -Name "Cert01" -KeyVaultSecretId $secretId

Get the secret and reference it in the Add-AzApplicationGatewaySslCertificate to add it to the Application Gateway with name Cert01. Note: As version-less secretId is provided here, Application Gateway will sync the certificate in regular intervals with the KeyVault.

Example 3: Add an SSL certificate using KeyVault Secret (versioned secretId) to an application gateway.

$AppGW = Get-AzApplicationGateway -Name "ApplicationGateway01" -ResourceGroupName "ResourceGroup01"
$secret = Get-AzKeyVaultSecret -VaultName "keyvault01" -Name "sslCert01"
$secretId = $secret.Id # https://<keyvaultname>.vault.azure.net/secrets/<hash>
$AppGW = Add-AzApplicationGatewaySslCertificate -ApplicationGateway $AppGW -Name "Cert01" -KeyVaultSecretId $secretId

Get the secret and reference it in the Add-AzApplicationGatewaySslCertificate to add it to the Application Gateway with name Cert01. Note: If it is required that Application Gateway syncs the certificate with the KeyVault, please provide the version-less secretId.

Parameters

-ApplicationGateway

Specifies the name of application gateway to which this cmdlet adds an SSL certificate.

Parameter properties

Type:PSApplicationGateway
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:True
Value from pipeline:True
Value from pipeline by property name:False
Value from remaining arguments:False

-CertificateFile

Specifies the .pfx file of an SSL certificate that this cmdlet adds.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with azure.

Parameter properties

Type:IAzureContextContainer
Default value:None
Supports wildcards:False
DontShow:False
Aliases:AzContext, AzureRmContext, AzureCredential

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-KeyVaultSecretId

SecretId (uri) of the KeyVault Secret. Use this option when a specific version of secret needs to be used.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-Name

Specifies the name of the SSL certificate that this cmdlet adds.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-Password

Specifies the password of the SSL certificate that this cmdlet adds.

Parameter properties

Type:SecureString
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

Inputs

PSApplicationGateway

Outputs

PSApplicationGateway