使用签署令牌来保护 Web Service

签署令牌用来对 SOAP 消息签名进行签名。签署令牌通常用来对整个 <Signature> 元素进行签名,还可以选择用来对其他消息部件进行签名。如果使用了传输安全性,那么必须使用签署令牌来对 SOAP 安全性头中的时间戳记进行签名。

签署支持令牌断言

签署令牌是 WS-Security 中的 SupportingTokens,并且可以对其签名和加密。有四种类型的签署令牌:
  • EndorsingSupportingTokens - 不需要对令牌进行签名或加密。
  • SignedEndorsingSupportingTokens - 必须对令牌签名。
  • EndorsingEncryptedSupportingTokens - 必须对令牌加密。
  • SignedEndorsingEncryptedSupportingTokens - 必须对令牌签名。

X509Token 作为签署令牌

可以将 X509Token 配置为签署令牌。将 X509Token 配置为签署令牌类似于将 X509Token 配置为 AssymmetricBinding 中的 InitiatorToken。要将 X509Token 配置为签署令牌,您需要一个策略,该策略具有先前描述的其中一个签署令牌断言中包含的 X509Token,以及 server.xml 文件中的 <SignatureProperties> 元素。

以下示例显示了 X509 签署支持令牌的策略片段:
<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:WssX509V3Token10/>
      </wsp:Policy>
    </sp:X509Token>
  </wsp:Policy>
</sp:EndorsingSupportingTokens>

将 X509Token 配置为签署令牌之后,您必须在 server.xml 文件中定义 <signatureProperties> 元素以标识密钥库和签名密钥。<signatureProperties> 元素的配置与消息签名的 X509Token 的配置相同。有关更多信息,请参阅使用 X.509 令牌来保护 Web Service

将 UsernameToken 作为签署令牌

作为 endorsingToken 的 UsernameToken 的配置类似于具有 PasswordDigest 的 UsernameToken 的配置(只不过策略中没有 HashPassword)。要将 UsernameToken 配置为签署令牌,您需要一个策略,该策略具有“签署支持令牌断言”一节中描述的其中一个签署令牌断言中包含的 UsernameToken。

以下示例显示了 UsernameToken 已签名和已加密的签署支持令牌的策略片段。使用了密钥派生:
<sp:SignedEndorsingEncryptedSupportingTokens>
  <wsp:Policy>
    <sp:UsernameToken
      sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
      <wsp:Policy>
        <sp:WssUsernameToken10 />
        <sp:RequireDerivedKeys />
      </wsp:Policy>
    </sp:UsernameToken>
  </wsp:Policy>
</sp:SignedEndorsingEncryptedSupportingTokens>

在此样本策略片段中,使用此消息的其余内容对 UsernameToken 进行签名和加密。然后,使用从 UsernameToken 中的密码派生的密钥对消息签名进行签名。

由于 UsernameToken 签署令牌使用派生密钥,因此您必须为提供程序应用程序实现并配置密码 CallbackHandler。有关更多信息,请参阅使用 UsernameToken 来认证 Web Service 客户机


用于指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwlp_wssec_endorse_tokens
文件名:cwlp_wssec_endorse_tokens.html