web-dev-qa-db-ja.com

クライアントとサーバーはWindows Server Web 2008で共通のアルゴリズムを所有していないため、通信できません

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サーバーでサポートされている暗号スイートCipher suites supported by PayFort's API Server (白抜きの緑色は、私たちのサーバーと共通のものです)

サーバーでサポートされている暗号スイートCipher Suites supported by our server

Nartac IIS crypto software も使用しましたが、次の情報はBest PracticesNartac IIS crypto details

問題と関係があるかどうかはわかりませんが、サーバーにインストールされているSSL証明書の詳細は次のとおりです
SSL certificate details

ローカルマシンで完全に実行しているときに、目的のサーバーと通信し、サーバーにデプロイされたアプリケーションから支払いを行うために、私たちが間違っていること、および私たちが何をすべきかを誰かに指摘できますか?.

3
sohaiby

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.aspxenter image description here

3
Mass Nerder