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/07/04 12:06:21 UTC
svn commit: r1499711 -
/webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/securityToken/X509SecurityTokenImpl.java
Author: coheigea
Date: Thu Jul 4 10:06:21 2013
New Revision: 1499711
URL: http://svn.apache.org/r1499711
Log:
Return the correct TokenType for a v1 X.509 Certificate
Modified:
webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/securityToken/X509SecurityTokenImpl.java
Modified: webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/securityToken/X509SecurityTokenImpl.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/securityToken/X509SecurityTokenImpl.java?rev=1499711&r1=1499710&r2=1499711&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/securityToken/X509SecurityTokenImpl.java (original)
+++ webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/securityToken/X509SecurityTokenImpl.java Thu Jul 4 10:06:21 2013
@@ -28,6 +28,7 @@ import org.apache.wss4j.stax.securityTok
import org.apache.wss4j.stax.securityToken.X509SecurityToken;
import org.apache.xml.security.exceptions.XMLSecurityException;
import org.apache.xml.security.stax.ext.XMLSecurityConstants;
+import org.apache.xml.security.stax.securityToken.SecurityTokenConstants.TokenType;
import javax.security.auth.Subject;
import javax.security.auth.callback.CallbackHandler;
@@ -134,4 +135,25 @@ public abstract class X509SecurityTokenI
}
return this.principal;
}
+
+ @Override
+ public TokenType getTokenType() {
+ TokenType storedTokenType = super.getTokenType();
+ // Just check to see whether the cert version is "1"
+ if (WSSecurityTokenConstants.X509V3Token.equals(storedTokenType)) {
+ X509Certificate[] certs;
+ try {
+ certs = super.getX509Certificates();
+ if (certs != null && certs.length > 0 && certs[0].getVersion() == 1) {
+ return WSSecurityTokenConstants.X509V1Token;
+ }
+ } catch (XMLSecurityException e) {
+ return storedTokenType;
+ }
+ }
+
+ return storedTokenType;
+
+
+ }
}