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


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

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

Обсуждение

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

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

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

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

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

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

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

  6. Мониторинг http-трафика (любым из средств мониторинга сети, таких как Сетевой монитор, Fiddler и т. д.), показывает, что последовательность для обмена данными между клиентом и службой, как указано надежным безопасным профилем, и как клиент опрашивает службу с запросами "Сделать Подключение ion". Когда служба будет готова отправить обработанный ответ, он использует обратный канал последнего запроса "Make Подключение ion" для отправки результатов обратно.

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