我想使用WS-SecurityPolicy规范为Web服务编写可选策略,例如,如果客户端具有可以签署Soap Header的证书,但如果不是,则可以始终使用Web服务签名。
任何想法?
THX
答案 0 :(得分:1)
为此目的制定了政策选择。您可以在策略中指定两个不同的备选方案,然后客户端可以选择要使用的策略。这是一个例子:
<wsp:Policy ...>
<wsp:ExactlyOne>
<wsp:All>
<!-- SecurityPolicy assertions for signing go here, e.g.: -->
<sp:SignedParts ...>
<sp:Header ... />
</sp:SignedParts>
</wsp:All>
<wsp:All>
<!-- Policy alternatives may also be empty -->
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
客户端可以选择由<wsp:All />
封装的两个备选方案中的一个。所以在这种情况下它可以对标题进行签名,但它不必。有关详细信息,请参阅the WS-Policy Specification on Policy Alternatives。