Мы используем COM-объект (вызываемый из классического веб-приложения ASP) для вызова веб-службы.Недавно веб-сервис отключил TLS1.0.Мы обновили COM-объект до .NET 4.6.2 и добавили следующий код:
ServicePointManager.Expect100Continue = True
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 Or SecurityProtocolType.Tls12
ServicePointManager.ServerCertificateValidationCallback = AddressOf AcceptAllCertifications ' This function returns true
Затем выполняется запрос SOAP с использованием настраиваемого сертификата (выданного компанией веб-сервиса) с использованием X509Certificate2
объект.При запуске в консольном приложении все работает нормально.Однако, когда DLL регистрируется и вызывается из Classic ASP, выдается следующее исключение:
System.Net.WebException: The request was aborted: Could not create SSL/TLS secure channel.
at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
at System.Net.HttpWebRequest.GetRequestStream()
Это все, к сожалению.Вот что мы попробовали:
- Установка
KeepAlive
в True
в запросе - Изменение локальной групповой политики «Разрешить исключения проверки безопасности локальной активации» на Включено
Есть идеи?