ASP.Net WebFormsアプリケーションに取り組んでいます。支払いプロセスには PayFortのStart API を使用しています。アプリケーションはローカルマシン(Windows 10)で正常に動作していますが、展開サーバー(Windows Server Web 2008)でAPIを使用して支払いを行おうとすると、次のエラーが表示されます。
クライアントとサーバーは共通のアルゴリズムを持たないため、通信できません。
彼らのウェブページ( PayFort StartおよびSSL/TLS )のドキュメントには、通信にTls1.2を使用することが記載されています。彼らのAPIには、セキュリティプロトコルとしてTls1.2を使用するためのコードがすでに含まれています
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
Tls1.2
は.Net 4.5以降でのみサポートされているため、.Net Framework 4.5でアプリケーションを構築しています。言うまでもなく、サーバーには.Net Framework 4.5がインストールされています。
WindowsレジストリにTls1.1およびTls1.2のレジストリ値も追加しました
SSL Labsツール を使用して、両方のサーバー(サーバーとPayFortのAPIサーバー)でサポートされる少なくとも2つの暗号スイートがあることも確認しました( https:/ /api.start.payfort.com )
PayFortのAPIサーバーでサポートされている暗号スイート (白抜きの緑色は、私たちのサーバーと共通のものです)
サーバーでサポートされている暗号スイート
Nartac IIS crypto software も使用しましたが、次の情報はBest Practices
問題と関係があるかどうかはわかりませんが、サーバーにインストールされているSSL証明書の詳細は次のとおりです
ローカルマシンで完全に実行しているときに、目的のサーバーと通信し、サーバーにデプロイされたアプリケーションから支払いを行うために、私たちが間違っていること、および私たちが何をすべきかを誰かに指摘できますか?.
Windows 2008非R2を使用していますか? TLS 1.2はWindows 2008ではサポートされていません。TLS1.2のサポートが必要な場合は、Windows 2008 R2以降にアップグレードする必要があります
さまざまなバージョンのWindowsのTLSサポートをここで確認できます: http://blogs.msdn.com/b/kaushal/archive/2011/10/02/support-for-ssl-tls-protocols-on- windows.aspx