Author: coheigea
Date: Fri Jun 7 12:43:19 2013
New Revision: 1490615
URL: http://svn.apache.org/r1490615
Log:
Fixed some bugs in the Kerberos out processor
Modified:
webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/processor/output/KerberosSecurityTokenOutputProcessor.java
Modified:
webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/processor/output/KerberosSecurityTokenOutputProcessor.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/processor/output/KerberosSecurityTokenOutputProcessor.java?rev=1490615&r1=1490614&r2=1490615&view=diff
==============================================================================
---
webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/processor/output/KerberosSecurityTokenOutputProcessor.java
(original)
+++
webservices/wss4j/trunk/ws-security-stax/src/main/java/org/apache/wss4j/stax/impl/processor/output/KerberosSecurityTokenOutputProcessor.java
Fri Jun 7 12:43:19 2013
@@ -48,8 +48,6 @@ public class KerberosSecurityTokenOutput
@Override
public void processEvent(XMLSecEvent xmlSecEvent, OutputProcessorChain
outputProcessorChain) throws XMLStreamException, XMLSecurityException {
try {
- final String bstId = IDGenerator.generateID(null);
-
XMLSecurityConstants.Action action = getAction();
String tokenId =
@@ -61,6 +59,7 @@ public class KerberosSecurityTokenOutput
kerberosToken =
(KerberosClientSecurityToken)securityTokenProvider.getSecurityToken();
}
if (kerberosToken == null) {
+ final String bstId = IDGenerator.generateID(null);
final KerberosClientSecurityToken kerberosClientSecurityToken =
new KerberosClientSecurityToken(
((WSSSecurityProperties)
getSecurityProperties()).getCallbackHandler(),
@@ -83,6 +82,7 @@ public class KerberosSecurityTokenOutput
outputProcessorChain.getSecurityContext().registerSecurityTokenProvider(bstId,
kerberosSecurityTokenProvider);
kerberosToken = kerberosClientSecurityToken;
+ tokenId = bstId;
}
FinalKerberosSecurityTokenOutputProcessor
finalKerberosSecurityTokenOutputProcessor =
@@ -91,10 +91,10 @@ public class KerberosSecurityTokenOutput
finalKerberosSecurityTokenOutputProcessor.setAction(getAction());
if (WSSConstants.SIGNATURE_WITH_KERBEROS_TOKEN.equals(action)) {
-
outputProcessorChain.getSecurityContext().put(WSSConstants.PROP_USE_THIS_TOKEN_ID_FOR_SIGNATURE,
bstId);
+
outputProcessorChain.getSecurityContext().put(WSSConstants.PROP_USE_THIS_TOKEN_ID_FOR_SIGNATURE,
tokenId);
finalKerberosSecurityTokenOutputProcessor.addBeforeProcessor(WSSSignatureOutputProcessor.class.getName());
} else if
(WSSConstants.ENCRYPT_WITH_KERBEROS_TOKEN.equals(action)) {
-
outputProcessorChain.getSecurityContext().put(WSSConstants.PROP_USE_THIS_TOKEN_ID_FOR_ENCRYPTION,
bstId);
+
outputProcessorChain.getSecurityContext().put(WSSConstants.PROP_USE_THIS_TOKEN_ID_FOR_ENCRYPTION,
tokenId);
finalKerberosSecurityTokenOutputProcessor.addAfterProcessor(EncryptEndingOutputProcessor.class.getName());
}
finalKerberosSecurityTokenOutputProcessor.init(outputProcessorChain);