LoginSignup
0
0

More than 5 years have passed since last update.

【Azure】PowerShellでSSL証明書をApplicationGatewayにアップロードするまで

Last updated at Posted at 2018-02-06

前提

  • 作業PCにPowershellインストール済み
  • 対象AzurePortalにログイン済み
  • SSL証明(pfx)を作成済み

最終的にうまくいったPowershellはこちら(上から順番に実施!)

①PasswordをSystem.Security.SecureString型に変換し変数に入れる

$pass = ConvertTo-SecureString "<任意のパスワード>" -AsPlainText -Force

例)$pass = ConvertTo-SecureString "SSLpassword123!" -AsPlainText -Force

②Application Gateway名をMicrosoft.Azure.Commands.Network.Models.PSApplicationGateway型に変換し変数に入れる

$AppGW = Get-AzureRmApplicationGateway -Name "<アプリケーションゲートウェイ名>" -ResourceGroupName "<アプリケーションゲートウェイのあるリソースグループ名>"

例)$AppGW = Get-AzureRmApplicationGateway -Name "AppGateway" -ResourceGroupName "Azure-Test"

③証明書をアップロードする

$Add-AzureRmApplicationGatewaySslCertificate -ApplicationGateway ②の変数名 -Name "<Portal上で表示されるSSL証明書名>" -Password ①の変数名 -CertificateFile <SSL証明書(拡張子がpfxのもの)のファイルパス(ローカルPC)>

例)$Add-AzureRmApplicationGatewaySslCertificate -ApplicationGateway $AppGW -Name "HWS_Certificate2" -Password $pass -CertificateFile C:\Users\takahashi\Desktop\files\01.SSL\TEST_Certificate.pfx


作業時のエラー

①実行時のエラー("System.String" 型から "System.Security.SecureString" 型に変換できません。)

$Add-AzureRmApplicationGatewaySslCertificate -Name AppGateway -CertificateName TEST_Certificate2 -Password SSLpassword123! -CertificateFile C:\Users\takahashi\Desktop\files\01.SSL\TEST_Certificate.pfx

Add-AzureRmApplicationGatewaySslCertificate : パラメーター 'Password' をバインドできません。"SSLpassword123!" の値を "System.String" 型から"System.Security.SecureString" 型に変換できません。
発生場所 行:1 文字:110
+ ... eway -CertificateName TEST_Certificate -Password SSLpassword123! -Certif ...
+                                                      ~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Add-AzureRmAppl...ySslCertificate]、ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.Azure.Commands.Network.AddAzureApplicationGatewaySslCertificateCommand

解決策

ConvertTo-SecureStringコマンドで平文のパスワードを変換する

②実行時のエラー("System.String" 型から "Microsoft.Azure.Commands.Network.Models.PSApplicationGateway" 型に変換できません。)

$Add-AzureRmApplicationGatewaySslCertificate -ApplicationGateway "AppGateway" -Name "TEST_Certificate" -Password $pass -CertificateFile C:\Users\takahashi\Desktop\files\01.SSL\TEST_Certificate.pfx

Add-AzureRmApplicationGatewaySslCertificate : パラメーター 'ApplicationGateway' をバインドできません。"AppGateway" の 値を "System.String" 型から "Microsoft.Azure.Commands.Network.Models.PSApplicationGateway" 型に変換できません。
発生場所 行:1 文字:65
+ ... ionGatewaySslCertificate -ApplicationGateway "AppGateway" -Name " ...
+                                                  ~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Add-AzureRmAppl...ySslCertificate]、ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.Azure.Commands.Network.AddAzureApplicationGatewaySslCertificateCommand

解決策

ApplicationGateway名をPowershellで取得し変数に格納する

参考URL

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0