使用するサード パーティ アプリケーションがクライアント証明書を渡すことを要求することで保護されている Web サービスがあります。本番環境の提供 Web サービスとクライアントにも証明書をインストールしました。このプロセスは現在、同様のセットアップを使用する他のクライアントで正常に機能しています。現在のバージョンは .NET 3.5 で記述されており、私の開発マシンでは cassini (およびスタンドアロンで実行) で完全に動作しますが、同じコードと証明書のセットアップを使用した運用マシンでは動作しません。プロバイダーの Web サービスがクライアントにインストールされた証明書をブラウザー経由で受け入れることを確認しましたが、証明書をプログラムで Web サービス呼び出しに追加すると、403 が表示され、アクセスが拒否されます。保護された Web サービスにリクエストを送信する前に、呼び出しに追加された証明書のフィンガープリントを出力します。そして、それは実際に添付された正しい証明書です。私の考えでは、どこかで、証明書の秘密鍵部分にアクセスできません。
何か案は?
注: 関連する ~/crypto ディレクトリへの IIS プロセス アクセスを許可しました。
これは C# と .NET 3.5 です。