Author: coheigea
Date: Wed Feb 20 11:14:09 2013
New Revision: 1448080
URL: http://svn.apache.org/r1448080
Log:
Merged revisions 1448077 via git cherry-pick from
https://svn.apache.org/repos/asf/cxf/trunk
........
r1448077 | coheigea | 2013-02-20 11:09:16 +0000 (Wed, 20 Feb 2013) | 2 lines
[CXF-4841] - STSClient AppliesTo is not working correctly in certain
circumstances
........
Modified:
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/policy/interceptors/IssuedTokenInterceptorProvider.java
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/trust/AbstractSTSClient.java
Modified:
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/policy/interceptors/IssuedTokenInterceptorProvider.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/policy/interceptors/IssuedTokenInterceptorProvider.java?rev=1448080&r1=1448079&r2=1448080&view=diff
==============================================================================
---
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/policy/interceptors/IssuedTokenInterceptorProvider.java
(original)
+++
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/policy/interceptors/IssuedTokenInterceptorProvider.java
Wed Feb 20 11:14:09 2013
@@ -343,12 +343,10 @@ public class IssuedTokenInterceptorProvi
client.setTrust(getTrust10(aim));
client.setTrust(getTrust13(aim));
client.setTemplate(itok.getRstTemplate());
- if (maps == null) {
- return client.requestSecurityToken();
- } else {
+ if (maps != null && maps.getNamespaceURI() != null) {
client.setAddressingNamespace(maps.getNamespaceURI());
- return client.requestSecurityToken(appliesTo);
}
+ return client.requestSecurityToken(appliesTo);
}
private SecurityToken renewToken(
Modified:
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/trust/AbstractSTSClient.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/trust/AbstractSTSClient.java?rev=1448080&r1=1448079&r2=1448080&view=diff
==============================================================================
---
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/trust/AbstractSTSClient.java
(original)
+++
cxf/branches/2.7.x-fixes/rt/ws/security/src/main/java/org/apache/cxf/ws/security/trust/AbstractSTSClient.java
Wed Feb 20 11:14:09 2013
@@ -157,7 +157,7 @@ public abstract class AbstractSTSClient
protected CallbackHandler claimsCallbackHandler;
protected AlgorithmSuite algorithmSuite;
protected String namespace = STSUtils.WST_NS_05_12;
- protected String addressingNamespace;
+ protected String addressingNamespace =
"http://www.w3.org/2005/08/addressing";
protected Object onBehalfOf;
protected boolean enableAppliesTo = true;
@@ -976,10 +976,6 @@ public abstract class AbstractSTSClient
tokentype = namespace + "/RSTR/Status";
}
- if (addressingNamespace == null) {
- addressingNamespace = "http://www.w3.org/2005/08/addressing";
- }
-
Policy validatePolicy = new Policy();
ExactlyOne one = new ExactlyOne();
validatePolicy.addPolicyComponent(one);
@@ -1030,10 +1026,6 @@ public abstract class AbstractSTSClient
protected STSResponse cancel(SecurityToken token) throws Exception {
createClient();
- if (addressingNamespace == null) {
- addressingNamespace = "http://www.w3.org/2005/08/addressing";
- }
-
client.getRequestContext().clear();
client.getRequestContext().putAll(ctx);
client.getRequestContext().put(SecurityConstants.TOKEN, token);
@@ -1069,13 +1061,19 @@ public abstract class AbstractSTSClient
SignedEncryptedParts parts = new SignedEncryptedParts(true);
parts.setOptional(true);
parts.setBody(true);
- parts.addHeader(new Header("To", addressingNamespace));
- parts.addHeader(new Header("From", addressingNamespace));
- parts.addHeader(new Header("FaultTo", addressingNamespace));
- parts.addHeader(new Header("ReplyTo", addressingNamespace));
- parts.addHeader(new Header("Action", addressingNamespace));
- parts.addHeader(new Header("MessageID", addressingNamespace));
- parts.addHeader(new Header("RelatesTo", addressingNamespace));
+
+ String addrNamespace = addressingNamespace;
+ if (addrNamespace == null) {
+ addrNamespace = "http://www.w3.org/2005/08/addressing";
+ }
+
+ parts.addHeader(new Header("To", addrNamespace));
+ parts.addHeader(new Header("From", addrNamespace));
+ parts.addHeader(new Header("FaultTo", addrNamespace));
+ parts.addHeader(new Header("ReplyTo", addrNamespace));
+ parts.addHeader(new Header("Action", addrNamespace));
+ parts.addHeader(new Header("MessageID", addrNamespace));
+ parts.addHeader(new Header("RelatesTo", addrNamespace));
all.addPolicyComponent(parts);
client.getRequestContext().put(PolicyConstants.POLICY_OVERRIDE,
cancelPolicy);