Wse 3.0 или wcf и с чего начать

Я создал веб-сервис, в котором есть несколько методов, разработанных с использованием .net 3.5. Клиенты, которые получат доступ к веб-сервису, будут использовать .net 3.0. Меня попросили сделать этот веб-сервис "безопасным" и, посмотрев на сеть, увидели ряд вариантов.

Сначала нужно использовать WCF с .net 3.5 для службы. Если я разработаю сервис с использованием .net 3.5 Будет ли мне также разрабатывать клиент, используя 3.5?

Во-вторых, я мог бы взглянуть на использование WSE 3.0 и реализовать такую ​​защиту. Однако, посмотрев на .net, я прочитал, что есть некоторые проблемы с использованием WSE 3 с visual studio 2008.

Приветствуются любые другие предложения. Я хотел бы обеспечить веб-сервис, следовательно, использование WCF или WSE 3.0.

2 ответа

Структура WCF является частью .NET 3.0, а не .NET 3.5, поэтому вам не нужен .NET 3.5 в клиентах.

Также с WCF вы можете предоставлять услуги, основанные на стандартах веб-сервисов. Эти службы могут использоваться даже со "старыми" клиентами веб-сервисов или другими платформами, такими как Java.

Безопасность сообщений на основе учетных данных WCF выполняет стандарт WS-Security 1.1, который также может использоваться с клиентом WSE.

http://msdn.microsoft.com/en-us/library/ms735093.aspx: WCF поддерживает широкий спектр сценарии взаимодействия. Класс BasicHttpBinding предназначен для базовый профиль безопасности (BSP) и класс WSHttpBinding предназначен для последние стандарты безопасности, такие как WS-Security 1.1 и WS-SecureConversation. Придерживаясь эти стандарты, безопасность WCF может взаимодействовать и интегрироваться с сетью услуги, которые размещаются на систем и платформ, кроме Microsoft Windows.

Я бы определенно пошел на решение WCF, а не на WSE. Я вижу, что WCF является прямым преемником WSE, который еще не поддерживается Microsoft (даже домашняя ссылка WSE нарушена со страницы загрузки WSE 3.0).

Как сказал Алекс, подключение к платформе, отличной от MS, несмотря на стандарты, может быть сложной задачей. В этих сценариях обязательно необходимо доказательство концепции.


Недавно у меня возникли проблемы с подключением WCF-клиента к WS- * службе, обслуживаемой Apache Axis, и мне пришлось вернуться к WSE 3.0, чтобы заставить ее работать. Я не знаю, была ли это ошибка WCF или Axis, но в любом случае это не слишком впечатляюще, что два из самых высокопрофильных WS- * стеков не взаимодействуют должным образом.

Учитывая, что по-прежнему необходимо использовать WSE 3.0, его также постыдно, что MS в значительной степени устарела WSE 3.0:

  • материал веб-страницы, упомянутый Gaspar
  • вам нужно возиться с командной строкой, чтобы использовать WSE 3.0 из VS2008

licensed under cc by-sa 3.0 with attribution.