You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by co...@apache.org on 2013/08/14 12:00:37 UTC
svn commit: r1513792 -
/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/transform/STRTransformUtil.java
Author: coheigea
Date: Wed Aug 14 10:00:37 2013
New Revision: 1513792
URL: http://svn.apache.org/r1513792
Log:
[WSS-474] - Missing the 'EncodingType' attribute in element built by STRTransformUtil#createBSTX509
- Thanks to Alessio Soldano.
Modified:
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/transform/STRTransformUtil.java
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/transform/STRTransformUtil.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/transform/STRTransformUtil.java?rev=1513792&r1=1513791&r2=1513792&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/transform/STRTransformUtil.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/transform/STRTransformUtil.java Wed Aug 14 10:00:37 2013
@@ -81,7 +81,7 @@ public final class STRTransformUtil {
if (certs == null || certs.length == 0 || certs[0] == null) {
throw new WSSecurityException(WSSecurityException.ErrorCode.FAILED_CHECK);
}
- return createBSTX509(doc, certs[0], secRef.getElement());
+ return createBSTX509(doc, certs[0], secRef.getElement(), secRef.getKeyIdentifierEncodingType());
}
//
// third case: KeyIdentifier. For SKI, lookup in keystore, wrap in
@@ -108,6 +108,12 @@ public final class STRTransformUtil {
public static Element createBSTX509(Document doc, X509Certificate cert, Element secRefE)
throws WSSecurityException {
+ return createBSTX509(doc, cert, secRefE, null);
+ }
+
+ public static Element createBSTX509(Document doc, X509Certificate cert, Element secRefE,
+ String secRefEncType)
+ throws WSSecurityException {
byte data[];
try {
data = cert.getEncoded();
@@ -124,6 +130,9 @@ public final class STRTransformUtil {
WSSecurityUtil.setNamespace(elem, WSConstants.WSSE_NS, prefix);
// elem.setAttributeNS(WSConstants.XMLNS_NS, "xmlns", "");
elem.setAttributeNS(null, "ValueType", X509Security.X509_V3_TYPE);
+ if (secRefEncType != null) {
+ elem.setAttributeNS(null, "EncodingType", secRefEncType);
+ }
Text certText = doc.createTextNode(Base64.encode(data)); // no line wrap
elem.appendChild(certText);
return elem;