0

クライアント証明書を使用して Web サービスにメッセージを送信する Azure 関数 (.NET 4.7.2) を 1 年間実行しています。この証明書は更新する必要がありますが、メッセージの送信時にこの例外が発生していることを確認しました。

System.Security.Cryptography.CryptographicException: Invalid provider type specified.

Azure で秘密キーの読み取りに問題があり、問題はローカル マシンからのエクスポートにあるようです。この問題は元の CSR に起因する可能性がありますか? 以前の証明書は、有効である限り問題なく機能します。ローカル マシンから新しい証明書を使用してメッセージを送信できることに注意してください。私が試したこと。

  • MMC 設定のすべての組み合わせを使用して .pfx ファイルをエクスポートする
  • https://stackoverflow.com/a/34103154/6033193の回答を使用して、証明書キーを RSA 形式に変換し、新しい結果の .pfx をアップロードします
  • CertUtil.exe -store -user my新しい証明書と古い証明書を比較するために使用します。どちらも Provider Microsoft Enhanced Cryptographic Provider v1.0を持ち、ハッシュと名前を除けば同じように見えます。
  • セットアップから Azure Key Vault を削除し、pfx をアプリ サービスに直接アップロードする
  • ローカル フォルダーから .pfx を読み取り、次のように使用しますnew X509Certificate2(certByes, "password", X509KeyStorageFlags.PersistKeySet);。これは機能するため、.pfx ファイルを Azure portal にアップロードするときに問題が発生しているようです。

他に試すことができることはありますか?

4

1 に答える 1