WS-SecurityPolicy - WS-SecurityPolicy

WS-SecurityPolicy это веб-сервисы спецификация, созданная IBM и 12 соавторов, ставших ОАЗИС стандарт, начиная с версии 1.2. Он расширяет основные протоколы безопасности, указанные в WS-Безопасность, WS-Trust и WS-SecureConversation предлагая механизмы для представления возможностей и требований веб-служб в виде политик. Утверждения политики безопасности основаны на Фреймворк WS-Policy.

Утверждения политики могут использоваться для требования более общих атрибутов безопасности, таких как безопасность транспортного уровня. <TransportBinding>, безопасность на уровне сообщений <AsymmetricBinding> или отметки времени, и определенные атрибуты, такие как типы токенов.

Большинство утверждений политики можно найти в следующих категориях:

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

Политики могут использоваться для управления инструментами разработки для генерации кода с определенными возможностями или могут использоваться во время выполнения для согласования аспектов безопасности связи веб-служб. Политики могут быть прикреплены к WSDL такие элементы, как служба, порт, операция и сообщение, как определено во вложении политики WS.[1]

Образцы политик

Пространства имен, используемые следующими XML-сниппетами:

<p:Policy    xmlns:p="http://www.w3.org/ns/ws-policy"   xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200802">   ...</p:Policy>

Включите отметку времени:

<sp:IncludeTimestamp />

Используйте безопасность на транспортном уровне (https) или на уровне сообщений (XML Dsig / XML Enc):

<ExactlyOne>  <sp:TransportBinding>...</sp:TransportBinding>  <sp:AsymmetricBinding>...</sp:AsymmetricBinding ></ExactlyOne>

Чтобы определить утверждение SAML как маркер безопасности:

<sp:IssuedToken>  <sp:RequestSecurityTokenTemplate>    <wst:TokenType>...#SAMLV2.0</wst:TokenType>  </sp:RequestSecurityTokenTemplate></sp:IssuedToken>

Утверждение выданного токена поставщиками со ссылкой на STS и требуемый формат токена:

<sp:IssuedToken>  <sp:Issuer>    <wsa:EndpointReference>      <wsa:Address>http://sampleorg.com/sts</wsa:Address>     </wsa:EndpointReference>  </sp:Issuer>  <sp:RequestSecurityTokenTemplate>    <wst:TokenType>       http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID    </wst:TokenType>        ...  </sp:RequestSecurityTokenTemplate>  ...</sp:IssuedToken>

Укажите, что заголовок и тело сообщения должны быть подписаны, а вложения не должны быть подписаны:

<sp:SignedParts xmlns:sp="..." ... >  <sp:Body />?  <sp:Header Name="Dx:NCName"? Namespace="Xd:anyURI" ... />*...</sp:SignedParts>

Сообщите, что лицензия с открытым исходным кодом сообщения должна быть подписана, а безопасность Hydra не подписана:

<sp:signedparts http:np="..."...><sp:Hydrasecurity />?<sp:Opensourcelicense Name="Hs:NCName"? Namespace="Sh:anyURI" .../>*...</sp:SignedParts>

Другие языки политик WS

Период, термин Язык политики безопасности веб-служб используется для двух разных языков на основе XML:

  1. Как описано выше, на основе структуры WS-Policy, определенной в,[2] опубликовано как версия 1.3 в феврале 2009 г.
  2. WSPL на основе XACML-профиль для Web-сервисов, но это не было завершено.[3]

Смотрите также

Рекомендации

  1. ^ http://www.w3.org/TR/ws-policy-attach/ WS-Policy - Приложение
  2. ^ http://www.oasis-open.org/specs/index.php#ws-secpol WS-SecurityPolicy
  3. ^ http://www.oasis-open.org/committees/download.php/1608/wd-xacml-wspl-use-cases-04.pdf Примеры использования и требования языка политик веб-сервисов (черновик)

внешняя ссылка