3 votes

Le client et le serveur ne peuvent pas communiquer, car ils ne possèdent pas un algorithme commun sur Windows Server Web 2008

Je travaille sur une application ASP.Net WebForms. Nous utilisons l'API Start de PayFort pour le processus de paiement. L'application fonctionne correctement sur notre machine locale (Windows 10) mais affiche l'erreur suivante lorsque nous essayons d'effectuer un paiement en utilisant leur API sur notre serveur de déploiement (Windows Server Web 2008).

Le client et le serveur ne peuvent pas communiquer, car ils ne possèdent pas un algorithme commun.

La documentation sur leur page web (PayFort Start et SSL/TLS) indique qu'ils utilisent Tls1.2 pour la communication. Leur API contient déjà le code pour utiliser Tls1.2 en tant que protocole de sécurité

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

Nous avons construit l'application sur le framework .Net 4.5 puisque Tls1.2 est pris en charge par .Net 4.5 ou ultérieur. Il va sans dire que notre serveur dispose de .Net Framework 4.5 installé dessus.

Nous avons également ajouté les valeurs du registre pour Tls1.1 et Tls1.2 dans le registre windows

En utilisant l'outil SSL Labs, nous avons également confirmé qu'il y a au moins deux suites de chiffrement prises en charge par les deux serveurs (notre serveur et le serveur API de PayFort) (https://api.start.payfort.com)

Suites de chiffrement prises en charge par le serveur API de PayFort Suites de chiffrement prises en charge par le serveur API de PayFort (Les contours verts sont ceux qui sont communs avec notre serveur)

Suites de chiffrement prises en charge par notre serveur Suites de chiffrement prises en charge par notre serveur

J'ai également utilisé le logiciel Nartac IIS crypto et il affiche les informations suivantes en tant que Meilleures Pratiques Détails de Nartac IIS crypto

Je ne suis pas sûr si cela a un rapport avec le problème ou non, mais voici les détails du certificat SSL installé sur notre serveur
Détails du certificat SSL

Est-ce que quelqu'un pourrait indiquer ce que nous faisons de travers et ce que nous devrions faire pour communiquer avec le serveur souhaité et effectuer un paiement à partir de l'application déployée sur notre serveur comme nous le faisons parfaitement sur notre machine locale.

3voto

Mass Nerder Points 977

Utilisez-vous Windows 2008 non R2 ? TLS 1.2 n'est pas pris en charge sur Windows 2008. Vous devez mettre à niveau vers Windows 2008 R2 ou supérieur si vous avez besoin de la prise en charge de TLS 1.2

Vous pouvez consulter la prise en charge de TLS pour différentes versions de Windows ici: http://blogs.msdn.com/b/kaushal/archive/2011/10/02/support-for-ssl-tls-protocols-on-windows.aspx entrez une description d'image ici

0 votes

C'est exactement ce que le problème est. Nous avons tout essayé pour communiquer en utilisant Tls1.2 sur Windows Server 2008 standard mais sans succès (évidemment). Finalement, nous avons installé Windows Server 2012 et maintenant tout fonctionne bien!

0 votes

Ancien fil de discussion, mais SP2 pour serveur 2008 semble permettre tls 1.1 & 1.2

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X