基于 SSL 且具有密码摘要 (HashPassword) 和时间戳记的 UsernameToken
此策略要求您使用 HTTPS 来保护消息,并将 UsernameToken 用于进行认证。使用 created 时间戳记和 nonce 对 UsernameToken 密码进行了散列。还有消息时间戳记。
以下策略显示了基于 SSL 且具有密码摘要 (HashPassword) 和时间戳记的 UsernameToken:
<wsp:Policy wsu:Id="UserNameTokenPasswordHashOverSSL">
<wsp:ExactlyOne>
<wsp:All>
<sp:TransportBinding>
<wsp:Policy>
<sp:TransportToken>
<wsp:Policy>
<sp:HttpsToken>
<wsp:Policy />
</sp:HttpsToken>
</wsp:Policy>
</sp:TransportToken>
<sp:Layout>
<wsp:Policy>
<sp:Lax />
</wsp:Policy>
</sp:Layout>
<sp:IncludeTimestamp />
<sp:AlgorithmSuite>
<wsp:Policy>
<sp:Basic128 />
</wsp:Policy>
</sp:AlgorithmSuite>
</wsp:Policy>
</sp:TransportBinding>
<sp:SupportingTokens>
<wsp:Policy>
<sp:UsernameToken
sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
<wsp:Policy>
<sp:WssUsernameToken10 />
<sp:HashPassword/>
</wsp:Policy>
</sp:UsernameToken>
</wsp:Policy>
</sp:SupportingTokens>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
此示例中使用的名称空间为:
- 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"
要在 Liberty 服务器中验证 UsernameToken,您必须通过设置 ws-security.callback-handler 属性在提供者端提供密码回调处理程序类。回调处理程序中的密码必须与 PasswordDigest 中使用的密码相匹配。该密码还必须与 Liberty 中的用户注册表中的密码相匹配。