Я пытаюсь отправить HttpWebRequest на защищенный веб-сайт, используя сертификат клиента через веб-приложение ASP.NET. Приложение размещено на IIS под Windows Server 2016.
Всякий раз, когда я пытаюсь отправить запрос, я получаю следующее исключение:
System.Net.WebException: The request was aborted: Could not create SSL/TLS secure channel.
Сложность в том, что он работает на моем компьютере с Windows 7. Мне удалось на 100% смоделировать производственную среду, и я получил ожидаемый ответ.
Вот код, который я использую для отправки запроса:
ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.ClientCertificates.Add(this.Certificate);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
var stream = response.GetResponseStream();
using (StreamReader reader = new StreamReader(stream))
{
string responseData = reader.ReadToEnd();
return responseData;
}