WS-SecurityPolicy
WS-Security Policy is a web services specification, created by IBM and 12 co-authors, that has become an OASIS standard as of version 1.2. It extends the fundamental security protocols specified by the WS-Security, WS-Trust and WS-Secure Conversation by offering mechanisms to represent the capabilities and requirements of web services as policies. Security policy assertions are based on the WS-Policy framework.
Policy assertions can be used to require more generic security attributes like transport layer security <TransportBinding>, message level security <AsymmetricBinding> or timestamps, and specific attributes like token types.
Most policy assertion can be found in following categories:
- Protection assertions identify the elements of a message that are required to be signed, encrypted or existent.
- Token assertions specify allowed token formats (SAML, X509, Username etc.).
- Security binding assertions control basic security safeguards like transport and message level security, cryptographic algorithm suite and required timestamps.
- Supporting token assertions add functions like user sign-on using a username token.
Policies can be used to drive development tools to generate code with certain capabilities, or may be used at runtime to negotiate the security aspects of web service communication. Policies may be attached to WSDL elements such as service, port, operation and message, as defined in WS Policy Attachment.[1]
Sample Policies
Namespaces used by the following XML-snippets:
<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>
Include a timestamp:
<sp:IncludeTimestamp />
Use either transport layer security (https) or message level security (XML Dsig/XML Enc):
<ExactlyOne> <sp:TransportBinding>...</sp:TransportBinding> <sp:AsymmetricBinding>...</sp:AsymmetricBinding > </ExactlyOne>
To define a SAML assertion as security token:
<sp:IssuedToken>
<sp:RequestSecurityTokenTemplate>
<wst:TokenType>...#SAMLV2.0</wst:TokenType>
</sp:RequestSecurityTokenTemplate>
</sp:IssuedToken>
Issued token assertion of providers with reference to the STS and required token format:
<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>
Specify that message header and body need to be signed, and attachments are left unsigned:
<sp:SignedParts xmlns:sp="..." ... > <sp:Body />? <sp:Header Name="Dx:NCName"? Namespace="Xd:anyURI" ... />* ... </sp:SignedParts>
specify that message open source license need to be signed, and hydra security are left unsigned:
<sp:signedparts http:np="..."...> <sp:Hydrasecurity />? <sp:Opensourcelicense Name="Hs:NCName"? Namespace="Sh:anyURI" .../>* ... </sp:SignedParts>
Other WS policy languages
The term Web Services Security Policy Language is used for two different XML-based languages:
- As described above, based on the WS-Policy framework, as defined in,[2] published as version 1.3 in Feb. 2009
- WSPL, based on XACML profile for Web-services, but that was not finalized.[3]
See also
References
- ^ http://www.w3.org/TR/ws-policy-attach/ WS-Policy - Attachment
- ^ 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 Web-services policy language use cases and requirements (draft)
External links
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.