Client-X509-Token als bestätigendes Token und symmetrisches Server-X509-Token für Nachrichtenschutz

Die X509-Zertifikate für Client und Server werden für die gegenseitige Authentifizierung und den Nachrichtenschutz verwendet. Beim Nachrichtenschutz über ein symmetrisches X509-Token wird ein ephemerer Schlüssel zum Signieren und Verschlüsseln der Nachricht erstellt. Der ephemere Schlüssel wird über das öffentliche Zertifikat des Empfängers verschlüsselt. Ein X509-Token mit dem Fingerabdruck des öffentlichen Zertifikats des Clients wird in die Nachricht eingeschlossen. Die Nachrichtensignatur wird mit dem privaten Schlüssel des Clients signiert.

Diese Richtlinienschablone wird am besten verwendet, wenn der Client sich mit einem X509-Clientzertifikat und einem Benutzernamenstoken beim Service authentifizieren muss.

Die folgende Richtlinie zeigt ein Client-X509-Token als bestätigendes Token (EndorsingToken) und ein symmetrisches Server-X509-Token für Nachrichtenschutz:
<wsp:Policy wsu:Id="X509SymmetricAndEndorsing">
  <wsp:ExactlyOne>
    <wsp:All>
      <sp:SymmetricBinding>
        <wsp:Policy>
          <sp:ProtectionToken>
            <wsp:Policy>
              <sp:X509Token
                sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/Never">
                <wsp:Policy>
                  <sp:RequireDerivedKeys />
                  <sp:RequireThumbprintReference />
                  <sp:WssX509V3Token11 />
                </wsp:Policy>
              </sp:X509Token>
            </wsp:Policy>
          </sp:ProtectionToken>
          <sp:AlgorithmSuite>
            <wsp:Policy>
              <sp:Basic128 />
            </wsp:Policy>
          </sp:AlgorithmSuite>
          <sp:Layout>
            <wsp:Policy>
              <sp:Strict />
            </wsp:Policy>
          </sp:Layout>
          <sp:IncludeTimestamp />
          <sp:OnlySignEntireHeadersAndBody />
        </wsp:Policy>
      </sp:SymmetricBinding>
      <sp:EncryptedParts>
        <sp:Body />
      </sp:EncryptedParts>
      <sp:SignedParts>
        <sp:Body />
      </sp:SignedParts>
      <sp:EndorsingSupportingTokens xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
        <wsp:Policy>
          <sp:X509Token
            sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
            <wsp:Policy>
              <sp:RequireThumbprintReference />
              <sp:WssX509V3Token11 />
            </wsp:Policy>
          </sp:X509Token>
        </wsp:Policy>
      </sp:EndorsingSupportingTokens>
      <sp:Wss11>
        <wsp:Policy>
          <sp:MustSupportRefKeyIdentifier />
          <sp:MustSupportRefIssuerSerial />
          <sp:MustSupportRefThumbprint />
          <sp:MustSupportRefEncryptedKey />
          <sp:RequireSignatureConfirmation />
        </wsp:Policy>
      </sp:Wss11>
    </wsp:All>
  </wsp:ExactlyOne>
</wsp:Policy>
In diesem Beispiel werden die folgenden Namespaces verwendet:
  • xmlns:wsp="http://www.w3.org/ns/ws-policy"
  • xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
  • xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702"

Symbol das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 01.12.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwlp_wssec_templates_scenario5
Dateiname: cwlp_wssec_templates_scenario5.html