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


Практическое руководство. Защита сообщений с помощью надежных сеансов

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

Эта процедура включает выполнение трех основных задач, а именно:

  1. необходимо задать, что клиент и служба обмениваются сообщениями в ходе надежного сеанса;

  2. необходимо обеспечить безопасность на уровне сообщения в ходе надежного сеанса;

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

В первой задаче важно, чтобы элемент конфигурации конечной точки содержал bindingConfiguration атрибут, ссылающийся на конфигурацию привязки (в этом примере). MessageSecurity Затем <элемент конфигурации привязки> ссылается на это имя, чтобы включить надежные сеансы, задав enabled для атрибута <элемента ReliableSession> значение.true Можно потребовать гарантии упорядоченной доставки сообщений в ходе надежного сеанса, присвоив атрибуту ordered значение true.

Исходная копия примера, на котором основана эта процедура конфигурации, см. в разделе "Надежный сеанс WS".

Основные элементы второй задачи выполняются путем задания mode атрибута <элемента безопасности>, содержащегося в< элементе привязки> клиента и службы.Message

Основные элементы третьей задачи выполняются путем задания clientCredentialType атрибута <элемента сообщения>, содержащегося в< элементе безопасности> клиента и службы.Certificate

Примечание.

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

Настройка службы с помощью WSHttpBinding для использования надежного сеанса

Эта процедура описана в разделе "Практическое руководство. Обмен сообщениями в надежном сеансе".

Настройка клиента с помощью WSHttpBinding для использования надежного сеанса

Эта процедура описана в разделе "Практическое руководство. Обмен сообщениями в надежном сеансе".

Настройка режима и ClientCredentialType в конфигурации

  1. Добавьте соответствующий элемент привязки в <элемент bindings> файла конфигурации. В следующем примере добавляется <элемент wsHttpBinding> .

  2. Добавьте элемент привязки <>и задайте его name атрибут соответствующим значением. В примере используется имя MessageSecurity.

  3. <Добавьте элемент безопасности> и задайте для атрибута mode значение Message.

  4. В элементе безопасности> добавьте <элемент сообщения> и задайте для атрибута CertificateclientCredentialType значение .<

<wsHttpBinding>
  <binding name="MessageSecurity">
    <security mode="Message">
      <message clientCredentialType="Certificate" />
    </security>
  </binding>
</wsHttpBinding>