CXF / XML-Signature:如何更改规范化算法?

时间:2014-01-29 15:39:56

标签: cxf ws-security xml-signature canonicalization

我正在编写一个简单的CXF客户端和服务器,其中包含一些WS-Security(XML签名)。到目前为止一切都很好。

...
outProps.put("signatureParts",
             "{Element}{" + WSU_NS + "}Timestamp;"
             + "{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body;"
             + "{}{http://www.w3.org/2005/08/addressing}ReplyTo;");
outProps.put("signatureAlgorithm", "http://www.w3.org/2000/09/xmldsig#rsa-sha1");
...
client.getOutInterceptors().add(new WSS4JOutInterceptor(outProps));

我想改变的是EXCLUSIVE的规范化算法(C14N_EXCL_OMIT_COMMENTS又名" http://www.w3.org/2001/10/xml-exc-c14n#")。

1 个答案:

答案 0 :(得分:0)

默认已经是" http://www.w3.org/2001/10/xml-exc-c14n#"在CXF。

可以通过配置标签" signatureC14nAlgorithm"更改签名c14n算法。 (从WSS4J 1.6.12开始)。

请参阅:http://svn.apache.org/viewvc/webservices/wss4j/branches/1_6_x-fixes/src/main/java/org/apache/ws/security/handler/WSHandlerConstants.java?r1=1507331&r2=1513780