由于WS策略,SAMLToken(已签名)请求失败

时间:2013-04-03 10:29:14

标签: cxf ws-security saml-2.0

我正在使用UsernameToken或SAMLToken(签名)实现备用身份验证。我在wsdl中配置了以下策略:

        <wsp:Policy wsu:Id="DoubleItPlaintextPolicy">
            <wsp:ExactlyOne>     
                    <wsp:All>
                            <sp:SupportingTokens xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
                                    <wsp:Policy>
                                            <sp:SamlToken sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
                                                    <wsp:Policy>
                                                            <sp:WssSamlV20Token11/>
                                                    </wsp:Policy>
                                            </sp:SamlToken>
                                    </wsp:Policy>
                            </sp:SupportingTokens>       
                    </wsp:All>
                    <wsp:All>       
                            <sp:SupportingTokens>
                                    <wsp:Policy>
                                            <sp:UsernameToken>
                                                    <wsp:Policy>
                                                            <sp:HashPassword/>
                                                    </wsp:Policy>
                                            </sp:UsernameToken>       
                                    </wsp:Policy>
                            </sp:SupportingTokens>
                    </wsp:All>     
            </wsp:ExactlyOne>
    </wsp:Policy>

另外,我在spring beans文件中配置了后端验证器。我可以使用UsernameToken接收请求。但是,SAMLToken请求失败并出现以下错误:

<faultstring>These policy alternatives can not be satisfied:{http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}SupportingTokens {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}SamlToken {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}UsernameToken</faultstring>

以下是我要处理的示例请求:

http://shortText.com/SNzXMB

有人可以告诉我处理此类请求的正确政策。

1 个答案:

答案 0 :(得分:1)

我使用的CXF-2.4似乎与Policy Alternates存在一些问题。当我升级到CXF-2.7时,上面的policysnippet工作

相关问题