Поделиться через


Настройка привязок, предоставляемых системой

Привязки указывают, какой механизм связи использовать при взаимодействии с конечной точкой, а также способ подключения к конечной точке. Привязки состоят из элементов, определяющих способ деления каналов Windows Communication Foundation (WCF) на уровни для предоставления требуемых функций связи. Привязка содержит три типа элементов.

  • Элементы привязки канала протокола, определяющие безопасность, надежность, параметры перемещения контекста или пользовательские протоколы, которые используются с сообщениями, отправляемыми в конечную точку.

  • Элементы привязки канала транспорта, определяющие основной транспортный протокол, используемый при отправке сообщений в конечную точку, например TCP или HTTP.

  • Элементы привязки кодирования сообщений, определяющие сетевое кодирование, которое необходимо использовать для сообщений, отправляемых в конечную точку, например кодирование text/XML, двоичное кодирование или подсистема оптимизации передачи сообщений (MTOM).

В этом разделе представлены все привязки Windows Communication Foundation (WCF), предоставляемые системой. Если ни одна из привязок не отвечает точным требованиям приложения, можно создать привязку с помощью класса CustomBinding. Дополнительные сведения созданию пользовательских привязок см. в разделе Пользовательские привязки.

ms731092.Important(ru-ru,VS.100).gif Примечание
Выберите привязку, в которой включены функции безопасности. По умолчанию функции безопасности всех привязок, за исключением привязки BasicHttpBinding, включены. Если безопасная привязка не выбрана или если безопасность выключена, убедитесь, что обмен данными в сети защищен каким-либо иным образом, например выполняется в безопасном центре обработки данных или в изолированной сети.

ms731092.Important(ru-ru,VS.100).gif Примечание
Не используйте дуплексные контракты с привязками, которые не поддерживают безопасность или в которых выключены функции безопасности, если обмен данными в сети не защищен каким-либо иным образом.

Привязки, предоставляемые системой

Служба WCF предоставляет следующие привязки.

Привязка Элемент конфигурации Описание

BasicHttpBinding

<basicHttpBinding>

Привязка, которая подходит для взаимодействия с веб-службами, совместимыми с WS-Basic Profile, например службами, основанными на веб-службах ASP.NET Web (ASMX). Эта привязка использует HTTP как транспорт и формат text/XML как кодирование сообщений по умолчанию.

WSHttpBinding

<wsHttpBinding>

Безопасная привязка с возможностью взаимодействия, которая подходит для недуплексных контрактов службы.

WS2007HttpBinding

<ws2007HttpBinding>

Безопасная привязка с возможностью взаимодействия, обеспечивающая поддержку правильных версий элементов привязки Security, ReliableSession и TransactionFlow.

WSDualHttpBinding

<wsDualHttpBinding>

Безопасная привязка с возможностью взаимодействия, которая подходит для дуплексных контрактов службы или взаимодействия через посредников SOAP.

WSFederationHttpBinding

<wsFederationHttpBinding>

Безопасная привязка с возможностью взаимодействия, которая поддерживает протокол WS-Federation и позволяет организациям в федерации выполнять эффективную проверку подлинности и авторизацию пользователей.

WS2007FederationHttpBinding

<ws2007FederationHttpBinding>

Безопасная привязка с возможностью взаимодействия, которая наследуется от WS2007HttpBinding и поддерживает федеративную безопасность.

NetTcpBinding

<netTcpBinding>

Безопасная и оптимизированная привязка, которая подходит для обмена данными между приложениями WCF на разных компьютерах.

NetNamedPipeBinding

<netNamedPipeBinding>

Безопасная, надежная и оптимизированная привязка, которая подходит для обмена данными между приложениями WCF на одном компьютере.

NetMsmqBinding

<netMsmqBinding>

Поставленная в очередь привязка, которая подходит для обмена данными между приложениями WCF на разных компьютерах.

NetPeerTcpBinding

<netPeerTcpBinding>

Привязка, которая обеспечивает безопасный обмен данными между несколькими компьютерами.

WebHttpBinding

<webHttpBinding>

Привязка, используемая при настройке конечных точек для веб-служб WCF, предоставляемых через HTTP-запросы, а не через сообщения SOAP.

MsmqIntegrationBinding

<msmqIntegrationBinding>

Привязка, которая подходит для обмена данными между приложением WCF и существующими приложениями очереди сообщений (также называемой MSMQ) на разных компьютерах.

Функции привязок

В таблице ниже перечислены некоторые ключевые функции каждой указанной привязки, предоставленной системой. Привязки перечислены в первом столбце, а информация, касающаяся функций, представлена в таблице. В следующей таблице приводится ключ к используемым аббревиатурам привязок. Чтобы выбрать привязку, определите, какой столбец удовлетворяет всем требуемым функциям, указанным в строке.

Привязка Взаимодействие Режим безопасности (по умолчанию) Сеанс (по умолчанию) Транзакции Дуплексный

BasicHttpBinding

Basic Profile 1.1

(Нет), режим безопасности транспорта, режим безопасности сообщения, смешанный режим

Нет, (нет)

(Нет)

не применяется

WSHttpBinding

WS

Нет, режим безопасности транспорта, (режим безопасности сообщения), смешанный режим

(Нет), сеанс транспорта, надежный сеанс

(Нет), да

не применяется

WS2007HttpBinding

WS-Security, WS-Trust, WS-SecureConversation, WS-SecurityPolicy

Нет, режим безопасности транспорта, (режим безопасности сообщения), смешанный режим

(Нет), сеанс транспорта, надежный сеанс

(Нет), да

не применяется

WSDualHttpBinding

WS

Нет, (режим безопасности сообщения)

(Надежный сеанс)

(Нет), да

Да

WSFederationHttpBinding

WS-Federation

Нет, (режим безопасности сообщения), смешанный режим

(Нет), надежный сеанс

(Нет), да

Нет

WS2007FederationHttpBinding

WS-Federation

Нет, (режим безопасности сообщения), смешанный режим

(Нет), надежный сеанс

(Нет), да

Нет

NetTcpBinding

.NET

Нет, (режим безопасности транспорта), режим безопасности сообщения

смешанный режим

Надежный сеанс, (сеанс транспорта)

(Нет), да

Да

NetNamedPipeBinding

.NET

Нет,

(режим безопасности транспорта)

Нет, (сеанс транспорта)

(Нет), да

Да

NetMsmqBinding

.NET

Нет, режим безопасности сообщения, (режим безопасности транспорта), оба режима

(Нет)

(Нет), да

Нет

NetPeerTcpBinding

Peer

Нет, режим безопасности сообщения, (режим безопасности транспорта), смешанный режим

(Нет)

(Нет)

Да

MsmqIntegrationBinding

MSMQ

Нет, (режим безопасности транспорта)

(Нет)

(Нет), да

не применяется

В таблице ниже приводятся пояснения функций, указанных в предыдущей таблице.

Функция Описание

Тип взаимодействия

Указывает протокол или технологию, взаимодействие с которыми обеспечивает привязка.

Безопасность

Указывает способ защиты канала.

  • Нет. Сообщение SOAP не защищено, и проверка подлинности клиента не выполняется.

  • Режим безопасности транспорта. Требования безопасности выполняются на транспортном уровне.

  • Режим безопасности сообщения. Требования безопасности выполняются на уровне сообщений.

  • Смешанный режим. Этот режим безопасности называется TransportWithMessageCredentials. В этом режиме учетные данные обрабатываются на уровне сообщений, а требования целостности и конфиденциальности выполняются на транспортном уровне.

  • Оба режима. Используется безопасность как на уровне сообщений, так и на транспортном уровне. Эта возможность уникальна для привязки NetMsmqBinding.

Сеанс

Указывает, поддерживает ли привязка контракты сеансов.

Транзакции

Указывает, включены ли транзакции.

Дуплексный

Указывает, поддерживаются ли дуплексные контракты. Обратите внимание, что для этой функции необходима поддержка сеансов в привязке.

Потоковая передача

Указывает, поддерживается ли потоковая передача сообщений.

См. также

Основные понятия

Общие сведения о создании конечных точек
Использование привязок для настройки служб и клиентов

Другие ресурсы

Базовое программирование WCF