Application Gateway の証明書を更新する
TLS または SSL 暗号化対応にアプリケーション ゲートウェイを構成した場合、いつかは、証明書の更新が必要になります。
証明書が存在する場所は 2 つあります。つまり、Azure Key Vault に保存されている証明書と、Application Gateway にアップロードされた証明書があります。
Azure Key Vault の証明書
Key Vault 証明書を使用するように Application Gateway を構成すると、そのインスタンスによって Key Vault から証明書が取得され、TLS 終端のためにその証明書がローカルにインストールされます。 インスタンスによって 4 時間ごとに Key Vault がポーリングされ、証明書の更新バージョン (存在する場合) が取得されます。 更新された証明書が検出されると、HTTPS リスナーに現在関連付けられている TLS または SSL 証明書が自動的にローテーションされます。
ヒント
Application Gateway への変更により、新しいバージョンの証明書が使用可能かどうかを判断するためキー コンテナーを確認しなければならなくなります。 これには、フロントエンド IP 構成、リスナー、ルール、バックエンド プール、リソース タグなどへの変更が含まれますが、これらに限定されるのではありません。 更新された証明書が見つかった場合は、新しい証明書がすぐに表示されます。
証明書を参照するために、Key Vault 内ではシークレット識別子が Application Gateway によって使用されます。 Azure PowerShell、Azure CLI、または Azure Resource Manager の場合、バージョンを指定しないシークレット識別子を使用することを強く推奨します。 これにより、ご自身のキー コンテナー内で新しいバージョンが利用可能にると、Application Gateway によって証明書が自動的にローテーションされます。 バージョンのないシークレット URI の例は https://myvault.vault.azure.net/secrets/mysecret/
です。
Application Gateway の証明書
Application Gateway は、Azure Key Vault の構成を必要としない、証明書のアップロードをサポートしています。 アップロードされた証明書を更新するには、Azure portal、Azure PowerShell、または Azure CLI で次の手順を実行します。
Azure Portal
ポータルからリスナー証明書を更新するには、アプリケーション ゲートウェイ リスナーに移動します。 更新が必要な証明書のあるリスナーを選択して、[選択した証明書の更新または編集] を選択します。
新しい PFX 証明書をアップロードし、名前を指定し、パスワードを入力してから、[保存] を選択します。
Azure PowerShell
注意
Azure を操作するには、Azure Az PowerShell モジュールを使用することをお勧めします。 作業を開始するには、「Azure PowerShell のインストール」を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。
Azure PowerShell を使用して証明書を更新するには、次のスクリプトを使用します。
$appgw = Get-AzApplicationGateway `
-ResourceGroupName <ResourceGroup> `
-Name <AppGatewayName>
$password = ConvertTo-SecureString `
-String "<password>" `
-Force `
-AsPlainText
set-AzApplicationGatewaySSLCertificate -Name <oldcertname> `
-ApplicationGateway $appgw -CertificateFile <newcertPath> -Password $password
Set-AzApplicationGateway -ApplicationGateway $appgw
Azure CLI
az network application-gateway ssl-cert update \
-n "<CertName>" \
--gateway-name "<AppGatewayName>" \
-g "ResourceGroupName>" \
--cert-file <PathToCerFile> \
--cert-password "<password>"
次のステップ
Azure Application Gateway で TLS オフロードを構成する方法について詳しくは、「TLS オフロードの構成」を参照してください。