Расширенная защита
Расширенная защита — это механизм привязки внешнего безопасного канала, например SSL к протоколам проверки подлинности внутреннего канала, таким как Kerberos-APREQ и проверка подлинности заголовка HTTP.
Концепция расширенной защиты определена в RFC2743.
Расширенная защита, если она доступна, настраивается автоматически на клиенте, но может потребоваться настройка на сервере для сценариев, отличных от по умолчанию.
Поддерживаемые конфигурации
Расширенная защита поддерживается при использовании WS_HTTP_CHANNEL_BINDING с привязками безопасности с помощью протоколов встроенной проверки подлинности Windows, таких как WS_HTTP_HEADER_AUTH_SECURITY_BINDING и WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING. Он настраивается с помощью следующих свойств безопасности:
- WS_SECURITY_PROPERTY_EXTENDED_PROTECTION_POLICY
- WS_SECURITY_PROPERTY_EXTENDED_PROTECTION_SCENARIO
- WS_SECURITY_PROPERTY_SERVICE_IDENTITIES
Возможны следующие конфигурации, связанные с расширенной защитой:
Клиент
- WS_SSL_TRANSPORT_SECURITY_BINDING используется с WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING или WS_HTTP_HEADER_AUTH_SECURITY_BINDING. В этой конфигурации привязка проверки подлинности привязана к SSL-соединению с помощью расширенного маркера защиты, который автоматически извлекается из SSL-подключения.
- Протокол SSL не используется и WS_HTTP_HEADER_AUTH_SECURITY_BINDING задано. Привязка проверки подлинности привязана через имя субъекта-службы сервера, которое автоматически определяется из WS_ENDPOINT_ADDRESS.
Сервер
- WS_SSL_TRANSPORT_SECURITY_BINDING используется с WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING или WS_HTTP_HEADER_AUTH_SECURITY_BINDING. В этой конфигурации привязка проверки подлинности привязана к SSL-подключению с помощью расширенного маркера защиты, извлекаемого из SSL-подключения и проверенного автоматически.
- Протокол SSL не используется и WS_HTTP_HEADER_AUTH_SECURITY_BINDING задано. Привязка проверки подлинности привязана через имя субъекта-службы сервера, которое должно быть предоставлено через WS_SECURITY_PROPERTY_SERVICE_IDENTITIES. При получении сообщения имя субъекта-службы извлекается и проверяется точное совпадение с указанными именами служб. Не предоставляя имена субъектов-служб, эквивалентно настройке WS_EXTENDED_PROTECTION_POLICY_NEVER.
- Протокол SSL не используется, WS_EXTENDED_PROTECTION_SCENARIO_BOUND_SERVER указано и WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING используется. В этой конфигурации WS_SECURITY_PROPERTY_SERVICE_IDENTITIES не должно быть задано. Проверка имени участника-службы не выполняется за пределами того, что выполняется в рамках протокола Kerberos.
- WS_EXTENDED_PROTECTION_SCENARIO_TERMINATED_SSL указан и используется WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING или WS_HTTP_HEADER_AUTH_SECURITY_BINDING. WS_SECURITY_PROPERTY_SERVICE_IDENTITIES необходимо задать.
Поддерживаемые платформы
Расширенная защита поддерживается на платформах с поддержкой в операционной системе. Windows 7 и Windows Server 2008 R2 обеспечивают встроенную поддержку. Для других платформ может потребоваться обновление.
Если операционная система сервера не предоставляет такой поддержки, любая расширенная защита, отправляемая клиентом, игнорируется. В результате клиенты, использующие расширенную защиту, могут взаимодействовать с таким сервером, но преимущество безопасности теряется. На клиенте WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING в сочетании с WS_SSL_TRANSPORT_SECURITY_BINDING поддерживает только расширенную защиту в Vista и более поздних версиях.
ПРИМЕЧАНИЕ. Расширенная защита недоступна, не предотвращает использование какой-либо конкретной конфигурации.
Совместимость
Настроенный по умолчанию сервер может взаимодействовать с клиентами SOAP независимо от того, используют ли они расширенную защиту или нет. Одним из исключений являются клиенты Windows XP и Windows Server 2003 WWSAPI, которые были обновлены для поддержки расширенной защиты и использования как WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING, так и WS_SSL_TRANSPORT_SECURITY_BINDING. Для поддержки таких клиентов WS_EXTENDED_PROTECTION_POLICY_NEVER необходимо указать сервером. Серверы, настроенные с WS_EXTENDED_PROTECTION_POLICY_ALWAYS , отклоняют обмен данными от клиентов, которые не используют расширенную защиту. На клиенте WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING в сочетании с WS_SSL_TRANSPORT_SECURITY_BINDING сообщение отправляется с помощью кодирования передачи с блоками HTTP в Vista и более поздних версиях. Это может привести к проблемам с взаимодействием с серверами, которые не поддерживают блокированные передачи.
Следующие перечисления и константы являются частью расширенной защиты:
Следующие куски являются частью расширенной защиты: