WS-SecurityPolicy
WS-Security Policy — это спецификация веб-служб , созданная IBM и 12 соавторами, которая OASIS с версии 1.2 стала стандартом . Он расширяет фундаментальные протоколы безопасности, определенные WS-Security , WS-Trust и WS-Secure Conversation , предлагая механизмы представления возможностей и требований веб-сервисов в виде политик. Утверждения политики безопасности основаны на платформе 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>
укажите, что лицензия открытого исходного кода сообщения должна быть подписана, а гидра безопасность оставлена неподписанной:
<sp:signedparts http:np="..."...> <sp:Hydrasecurity />? <sp:Opensourcelicense Name="Hs:NCName"? Namespace="Sh:anyURI" .../>* ... </sp:SignedParts>
Другие языки политики WS
[ редактировать ]Термин «Язык политики безопасности веб-служб» используется для двух разных языков на основе XML:
- Как описано выше, на основе структуры WS-Policy, как определено в: [2] опубликовано как версия 1.3 в феврале 2009 г.
- WSPL, основанный на профиле XACML для веб-сервисов , но он не был доработан. [3]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ http://www.w3.org/TR/ws-policy-attach/ WS-Policy — вложение.
- ^ http://www.oasis-open.org/specs/index.php#ws-secpol WS-SecurityPolicy
- ^ http://www.oasis-open.org/committees/download.php/1608/wd-xacml-wspl-use-cases-04.pdf Варианты использования и требования к языку политики веб-сервисов (проект)