Я работаю над приложением ASP.Net WebForms. Мы используем PayFort Start API для процесса оплаты. Приложение работает нормально на нашем локальном компьютере (Windows 10), но при попытке произвести оплату с помощью их API на нашем сервере развертывания (Windows Server Web 2008) оно показывает следующую ошибку.
Клиент и сервер не могут общаться, потому что у них нет общего алгоритма.
Документация на их веб-странице (PayFort Start и SSL / TLS) заявляет, что они используют Tls1.2 для связи. Их API уже содержит код для использования Tls1.2 в качестве протокола безопасности.
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
Мы создали приложение на .Net framework 4.5 с тех пор, как Tls1.2
поддерживается только .Net 4.5 или новее. Излишне упоминать, что на нашем сервере установлен .Net Framework 4.5.
Мы также добавили значения реестра для Tls1.1 и Tls1.2 в реестр Windows.
Используя Инструмент SSL Labs, мы также подтвердили, что существует по крайней мере два набора Cipher, поддерживаемых обоими серверами (нашим сервером и сервером API PayFort) (https://api.start.payfort.com)
Наборы шифров, поддерживаемые сервером API PayFort (Зеленым обведены те, которые являются общими для нашего сервера)
Наборы шифров, поддерживаемые нашим сервером
Я также использовал Программное обеспечение Nartac IIS для шифрования и он показывает следующую информацию как Best Practices
Я не уверен, связано ли это с проблемой или нет, но вот детали сертификата SSL, установленного на нашем сервере.
Может ли кто-нибудь указать, что мы делаем неправильно и что мы должны делать, чтобы связаться с желаемым сервером и произвести оплату из приложения, развернутого на нашем сервере, поскольку мы отлично делаем это на нашей локальной машине.
Вы используете Windows 2008 без R2? TLS 1.2 не поддерживается в Windows 2008. Вам необходимо выполнить обновление до Windows 2008 R2 или более поздней версии, если вам нужна поддержка TLS 1.2.
Вы можете просмотреть поддержку TLS для разных версий Windows здесь: http://blogs.msdn.com/b/kaushal/archive/2011/10/02/support-for-ssl-tls-protocols-on-windows.aspx