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


Надежный защищенный профиль

В этом образце показано использование возможностей WCF вместе с надежным защищенным профилем (RSP). В этом образце показана реализация канала Make Connection, который в сочетании с надежным обменом сообщениями и дополнительным защищенным каналом позволяет создать надежную защищенную привязку на основе спецификации RSP.

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

<диск_установки>:\WF_WCF_Samples

Если этот каталог не существует, перейдите на страницу Образцы Windows Communication Foundation (WCF) и Windows Workflow Foundation (WF) для .NET Framework 4, чтобы загрузить все образцы Windows Communication Foundation (WCF) и WF. Этот образец расположен в следующем каталоге.

<диск_установки>:\WF_WCF_Samples\WCF\Extensibility\Channels\ReliableSecureProfile

Обсуждение

В этом образце показан сценарий с надежным двусторонним асинхронным обменом сообщениями. Служба имеет дуплексный контракт, а в клиенте реализован дуплексный контракт обратного вызова. Клиент создает запрос к службе, а ответ ожидается по отдельному соединению. Сообщение запроса отправляется надежным образом. Клиент не открывает со своей стороны конечную точку прослушивания. Поэтому он отправляет службе запросы «Make Connection», чтобы служба отправляла ответ по обратному каналу для таких запросов. В этом образце показано, как организовать защищенную надежную дуплексную связь по HTTP без предоставления конечной точки прослушивания на клиенте (и без создания исключения брандмауэра).

Настройка, построение и выполнение образца

  1. Откройте решение ReliableSecureProfile.

  2. Щелкните правой кнопкой мыши проект Service в окне Обозреватель решений, выберите в контекстном меню команду Отладка, а затем Запустить новый экземпляр. Запустится узел службы.

  3. Щелкните правой кнопкой мыши проект Client в окне Обозреватель решений, выберите в контекстном меню команду Отладка, а затем Запустить новый экземпляр. Запустится клиент.

  4. Введите в окне консоли клиента любую строку и нажмите клавишу ВВОД. Введенная строка отправится в службу, которая вычислит для нее хэш.

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

  6. Наблюдение за HTTP-трафиком (в любом из средств оперативного наблюдения за сетью, например сетевом мониторе, Fiddler и т. п.) показывает, что последовательность связи устанавливается между клиентом и службой согласно надежному защищенному профилю, а клиент отправляет службе запросы «Make Connection». Когда служба готова к отправке обработанного ответа, она использует для отправки результатов обратный канал последнего запроса «Make Connection».

  7. Нажмите в окне консоли службы клавишу ВВОД, чтобы закрыть службу. Нажмите клавишу ВВОД в окне консоли клиента, чтобы закрыть клиент.