Technische informatie
Veiligheid - WS-Security X.509 Certificate Token Profile
Deze security policy is enkel van toepassing voor het oproepen van de SecurityTokenService (STS). Ze beschrijft hoe een SOAP-bericht met een X.509-certificaat moet ondertekend worden.

De wsse:Security header bevat volgende onderdelen:
- wsse:BinarySecurityToken met het consumer X.509v3-certificaat in base64-notatie;
- wsu:Timestamp met maximale geldigheid van 5 minuten;
- ds:Signature met digitale handtekening over BST, TMS en soapenv:Body. Elk blok wordt gecanonicaliseerd (Exclusive) en gehasht (SHA256). De handtekening zelf is van het type RSA-SHA256.
Voorbeeld met PICT (vereenvoudigd)
De tweede operatie van PICT (checkAccessControl) vereist een X.509 certificaat en handtekening. U test hiermee de geldigheid van uw certificaat en handtekening.
<soapenv:Envelope>
<soapenv:Header>
<wsse:Security>
<wsse:BinarySecurityToken EncodingType="#Base64Binary"
ValueType="#X509v3" wsu:Id="CertId">MIIMZjCCA4...==</wsse:BinarySecurityToken>
<wsu:Timestamp wsu:Id="Timestamp">
<wsu:Created>2011-07-06T14:55:06Z</wsu:Created>
<wsu:Expires>2011-07-06T14:56:06Z</wsu:Expires>
</wsu:Timestamp>
<ds:Signature>
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="xml-exc-c14n#"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
<ds:Reference URI="#CertId">
<ds:Transforms>
<ds:Transform Algorithm="xml-exc-c14n#"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>l0k0hbnk8578dYAc2POMcBLbTkY=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#Timestamp">
<ds:Transforms>
<ds:Transform Algorithm="xml-exc-c14n#"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>cUI6sRLLErYal1w1wLFxSCwjoCI=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#id">
<ds:Transforms>
<ds:Transform Algorithm="xml-exc-c14n#"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>bY22PjS0HPcmEHrslVdx3uDnnpU=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>uYUcEhYJ8y...==</ds:SignatureValue>
<ds:KeyInfo Id="KeyId-5F1BFEB349E14F0ADF130996410619213">
<wsse:SecurityTokenReference>
<wsse:Reference URI="#CertId" ValueType="#X509v3"/>
</wsse:SecurityTokenReference>
</ds:KeyInfo>
</ds:Signature>
</wsse:Security>
</soapenv:Header>
<soapenv:Body wsu:Id="id">
<pict:CheckAccessControlRequest>
<type:Message>Hello World</type:Message>
<type:Timestamp>2010-02-24T05:32:13</type:Timestamp>
</pict:CheckAccessControlRequest>
</soapenv:Body> </soapenv:Envelope>