Мне дали https: URL-адрес и имя пользователя/пароль. . Когда я загружаю URL-адрес в браузер, мне предлагается ввести имя пользователя и пароль, а затем я вижу .wsdl. .wsdl указывает внутренний URL-адрес, к которому у меня нет доступа, но я полагаю, что это реальный сайт.
Когда я создаю ссылку на службу в VS2013, используя прокси-сервер URL, мне три раза предлагается ввести имя пользователя и пароль, затем я получаю правильный клиент, настройки в app.config и т. д.
Сгенерированные привязки в приложении .config предназначены для базовой привязки HttpBinding с режимом безопасности Transport и адресом конечной точки, указывающим на этот недоступный внутренний URL-адрес.
Итак, из сгенерированных привязок я:
- Замените недоступный внутренний URL-адрес прокси-адреса, который мне предоставили.
- Измените безопасность режим «TransportWithMessageCredentials»
Код: Выделить всё
- Замените ClientCredentials именем пользователя и паролем:
используя (var client = new MyCustomersServiceClient() )
{
var loginCredentials = new ClientCredentials();
loginCredentials.UserName.UserName = "ausername";
loginCredentials.UserName.Password = "apassword";
Код: Выделить всё
var defaultCredentials = client.Endpoint.Behaviors.Find(); client.Endpoint.Behaviors.Remove(defaultCredentials); client.Endpoint.Behaviors.Add(loginCredentials); var myData = new MyData { }; var result = client.receiveData(myData);
Не удалось установить безопасный канал для SSL/TLS с полномочиями «xxxxxx.com».
Просматривая информацию, большая часть того, что я нахожу, указывает на проблемы с SSL-сертификатами, но я не уверен, что имеет смысл. Если бы это было так, я бы ожидал увидеть проблемы при просмотре .wsdl через браузер. И я подумал, что, удалив учетные данные клиента по умолчанию, я обойду проверку сертификата. И я вижу несколько сообщений о более неясных проблемах, которые приводят к такому же сообщению об ошибке.
Я включил ведение журнала сообщений SOAP, но это не дало мне никакой информации. . Он показывает неудавшееся исходящее сообщение, но бесполезно.
Итак, я смотрел трафик в Fiddler. Я вижу два сообщения: HTTP-сообщение для «Tunnel to» с результатом 200 и HTTPS-сообщение для URL-адреса прокси с результатом 401.
На этом этапе я вижу два варианта:
- Мне нужно установить сертификат SSL, как указано в сообщении об ошибке, или
- проблема просто в том, что я не предоставляю сервису имя пользователя и пароль в понятном ему виде, и он отклоняет мою попытку подключения.
Итак, наконец, вопросы:
- Ввел ли я себя в заблуждение и мне действительно нужно возиться с SSL-сертификатами?
- Если нет, что делать Я использую WCF для передачи имени пользователя и пароля веб-службе HTTPS, размещенной MuleSoft
ESB? (Mule EE Core Extensions/3.5.1, если это поможет).
Подробнее здесь: https://stackoverflow.com/questions/261 ... -xxxxx-com
Мобильная версия