Technische Angaben
Sicherheit - WS-Security X.509 Certificate Token Profile
Diese Security Policy ist nur für den Aufruf des SecurityTokenService (STS) anwendbar. Sie beschreibt, wie eine SOAP-Meldung mit einem X.509-Zertifikat signiert werden muss.

Der wsse:Security-Header umfasst folgende Elemente :
- wsse:BinarySecurityToken mit dem Consumer X.509v3-Zertifikat in Base64-Darstellung;
- wsu:Timestamp mit einer maximalen Gültigkeit von 5 Minuten;
- ds:Signature mit der digitalen Signatur per BST, TMS und soapenv:Body. Jeder Block wird in die vorschriftsmäßige Form gebracht (Exclusive) und gehasht (SHA256). Die Signatur selbst ist vom Typ RSA-SHA256.
Beispiel mit PICT (vereinfacht)
Die zweite Operation von PICT (checkAccessControl) erfordert ein X.509-Zertifikat und eine Signatur. Damit testen Sie die Gültigkeit Ihres Zertifikats und Ihrer Signatur.
<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>