Использование адаптера отправки BizTalk WCF-WSHttp для использования веб-службы с WS-Security через HTTP

Сторонний поставщик предоставил веб-сервис, который нам нужно использовать.

Это веб-служба SOAP, которая также ожидает WS-Addressing и элементы WS-Security в заголовке.

Я считаю, что эту веб-службу можно использовать с помощью WCF-WSHttp в BizTalk 2009. Однако я новичок как в WCF, так и в WS-Security, поэтому я немного борюсь.

Я попытался настроить адаптер отправки со следующими настройками:

  • Режим безопасности: Транспорт
  • Тип учетных данных транспортного клиента: Сертификат
  • Отпечаток сертификата клиента: [выбрано]

Первая проблема, с которой я столкнулся, заключается в том, что при использовании этой конфигурации безопасности BizTalk вынуждает меня указывать конечную точку HTTPS, но сторонняя веб-служба работает через HTTP.

Это ошибка, которую выдает BizTalk, если я пытаюсь указать конечную точку HTTP:

введите описание изображения здесь

Это ограничение BizTalk или фундаментальная проблема, связанная с тем, как поставщик раскрывает свою веб-службу?

Кроме того, если кто-нибудь может указать мне на какие-либо полезные рекомендации по использованию адаптеров WCF с WS-Security, это было бы действительно полезно, поскольку я изо всех сил пытался их найти.


person Sir Crispalot    schedule 24.04.2012    source источник


Ответы (3)


Чтобы BizTalk принял привязку, настройте его с адресом https: // ..., а затем измените адрес в файле привязки и повторно импортируйте привязку.

Если BizTalk позволяет это (т. Е. Это только ограничение диалога WCF), тогда вы сможете фактически использовать службу и протестировать ее.

person tom redfern    schedule 24.04.2012
comment
Хитрая идея ... попробуй сейчас - person Sir Crispalot; 24.04.2012
comment
Это позволило мне импортировать измененные привязки, но при тестировании сообщение было приостановлено с тем же сообщением об ошибке: System.ArgumentException: The provided URI scheme 'http' is invalid; expected 'https'. Таким образом, BizTalk не позволит этого. Однако верен ли это сценарий? Может мне стоит изменить свой вопрос. - person Sir Crispalot; 24.04.2012
comment
Я не знаю наверняка, если честно, но мне кажется логичным, что вы не можете использовать безопасный сертификат через небезопасный http. Может быть, вам стоит связаться с издателем сервиса и спросить его. - person tom redfern; 24.04.2012
comment
Я принял ваш ответ, поскольку вы помогли мне установить, что BizTalk просто не позволит этого. - person Sir Crispalot; 25.04.2012

Режим безопасности: требуется транспортный протокол https. Это концепция WCf и не будет работать ни с какими другими настройками.

person Abdul    schedule 28.06.2013

Если вы столкнулись с этой проблемой, убедитесь, что раскрывающийся список «Режим безопасности» на вкладке «Безопасность» установлен правильно.

введите описание изображения здесь

person Rob Bowman    schedule 02.06.2016
comment
Это решило мою проблему в BizTalk 2013 с портом отправки WCF-BasicHttp! Для режима безопасности «Нет» требуется схема http, а для транспорта - https. - person Kristoffer; 16.01.2017
comment
Отлично, нажмите стрелку вверх! - person Rob Bowman; 16.01.2017
comment
Я сделал! Несправедливо, что правильный ответ (по крайней мере, для меня) был -1. - person Kristoffer; 18.01.2017