ExportしたApp Service 証明書にパスフレーズをつける
管理を手伝っている、友人のサイトでApp Service 証明書を移行する必要があってちょっとハマったので備忘録。
App Service 証明書のExport
CloudShellから以下のコマンドで、Exportできます。
$ az keyvault secret download \ --file appservicecertificate.pfx \ --vault-name <key-valut-name> \ --name <保存先のシークレット名> \ --encoding base64
vault-name
には証明書作成時に設定した、キーコンテナ名を指定します。
name
には証明書が保存されている、シークレットの名前を指定します。
このコマンドでExportした証明書には空のパスフレーズで生成されます。
このあたりの詳細は公式ドキュメントにも解説があります。
証明書のImport
で、この証明書をアップロードしようとするとアップロード画面ではパスフレーズが必須になっています。
pfxファイルにパスワードをつける方法を探すのに少し手間取りましたが、以下で大丈夫でした。
# 一旦pem形式に変換 openssl pkcs12 -in appservicecertificate.pfx -out example.com.pem -nodes # 再度pfx形式に変換、この際にパスフレーズの入力プロンプトが表示されます。 openssl pkcs12 -export -out example.com.pfx -in example.com.pem
ということで無事移行できました。