Ошибка WCF: «несоответствие привязки безопасности между клиентом и сервером» - PullRequest
0 голосов
/ 04 марта 2020

Итак, у меня есть два проекта, вызывающих одну и ту же стороннюю службу SOAP. Оба проекта (проект A и проект B) имеют одинаковую конфигурацию и оба работают. NET 4.7.2. Проект B работает отлично, но проект A выдает следующее исключение:

Произошла ошибка при выполнении HTTP-запроса к https://XXXXXXXXXX. Это может быть связано с тем, что сертификат сервера не настроен должным образом с HTTP.SYS в случае HTTPS. Это также может быть вызвано несоответствием привязки безопасности между клиентом и сервером.

Я установил протокол безопасности в проекте A для соответствия проекту B (Ssl3 && Tls). Я также попытался использовать HTTP вместо HTTPS.

Проект A - Проект Web Api. NET 4.7.2

Проект B - Консольное приложение. NET 4.7.2

Любые предложения будут оценены.

1 Ответ

1 голос
/ 06 марта 2020

Добавление настроек прокси-сервера (не было известно, что он у нас был) решило мою проблему.

См. Пример кода ниже:

private string SendDataExample()
{
    using (var client = new ServiceClient())
    {
        SetProxy(client.Endpoint.Binding as BasicHttpBinding);
    }   
}           

private void SetProxy(BasicHttpBinding binding)
{
    binding.ProxyAddress = new Uri($"http://localHost:8080");
    binding.BypassProxyOnLocal = false;
    binding.UseDefaultWebProxy = false;
    binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.Ntlm;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...