Обычно это означает поправку в операторе Response.Redirect() вашего кода. Поскольку вся шифровка и расшифровка происходит непосредственно перед отправкой сообщения (или немедленно после его получения), вашему приложению не приходится беспокоиться о ручной дешифрации данных, манипулировании байтовыми массивами, использовании правильной кодировки символов и тому подобном.

На стороне сервера вы также можете инициировать соединения SSL таким образом, чтобы было невозможно взаимодействовать с Web-службой без шифрования коммуникаций. Просто щелкните правой кнопкой на Web-сайте в IIS Manager и выберите в контекстном меню команду Properties (Свойства). Перейдите на вкладку Directory Security (Безопасность каталога). В разделе Secure Communication (Безопасные подключения) щелкните на кнопке Edit (Изменить), которая будет доступна только после инсталляции сертификата. Затем установите флажок Require Secure Channel (SSL) (Требуется защищенный канал), как показано на рис. 19.8.

Рис. 19.8. Инициализация SSL-доступа

Имейте в виду, что есть серьезные причины не включать SSL-соединение для всего виртуального каталога. Например, вы можете пожелать защитить некоторые вызовы методов в Web-службе, но не защищать остальные, которые возвращают не столь важную информацию. Это позволит вам повысить производительность и снизить нагрузку на сервер. При необходимости вы можете проверять безопасное соединение в своем коде и затем бросать исключение или перенаправлять запрос пользователя, в случае отсутствия SSL.

Рассмотрим пример, проверяющий, передается ли текущий запрос по безопасному соединению, используя свойство HttpRequest.IsSecureConnection:

if (Request.IsSecureConnection)
{
   // (Здесь — код приложения.)
}
else

предыдущая    следующая страница    вначало главы    оглавление

818

Hosted by uCoz