You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by co...@apache.org on 2016/12/07 12:13:20 UTC

[4/6] cxf-fediz git commit: Fixing Logout via action for the Spring plugin

Fixing Logout via action for the Spring plugin


Project: http://git-wip-us.apache.org/repos/asf/cxf-fediz/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf-fediz/commit/2d903b53
Tree: http://git-wip-us.apache.org/repos/asf/cxf-fediz/tree/2d903b53
Diff: http://git-wip-us.apache.org/repos/asf/cxf-fediz/diff/2d903b53

Branch: refs/heads/master
Commit: 2d903b530a3c8b005a0fad91a85cc26d1d46aa11
Parents: 34713e3
Author: Colm O hEigeartaigh <co...@apache.org>
Authored: Wed Dec 7 10:50:41 2016 +0000
Committer: Colm O hEigeartaigh <co...@apache.org>
Committed: Wed Dec 7 10:50:41 2016 +0000

----------------------------------------------------------------------
 .../apache/cxf/fediz/spring/web/FederationLogoutFilter.java  | 7 +++++++
 .../org/apache/cxf/fediz/integrationtests/Spring2Test.java   | 8 ++++++++
 2 files changed, 15 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/2d903b53/plugins/spring/src/main/java/org/apache/cxf/fediz/spring/web/FederationLogoutFilter.java
----------------------------------------------------------------------
diff --git a/plugins/spring/src/main/java/org/apache/cxf/fediz/spring/web/FederationLogoutFilter.java b/plugins/spring/src/main/java/org/apache/cxf/fediz/spring/web/FederationLogoutFilter.java
index f8f3f3a..e0356a9 100644
--- a/plugins/spring/src/main/java/org/apache/cxf/fediz/spring/web/FederationLogoutFilter.java
+++ b/plugins/spring/src/main/java/org/apache/cxf/fediz/spring/web/FederationLogoutFilter.java
@@ -21,6 +21,7 @@ package org.apache.cxf.fediz.spring.web;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.cxf.fediz.core.FederationConstants;
 import org.apache.cxf.fediz.spring.FederationConfig;
 import org.springframework.beans.factory.annotation.Required;
 import org.springframework.security.web.authentication.logout.LogoutFilter;
@@ -44,6 +45,12 @@ public class FederationLogoutFilter extends LogoutFilter {
 
     @Override
     protected boolean requiresLogout(HttpServletRequest request, HttpServletResponse response) {
+        String wa = request.getParameter(FederationConstants.PARAM_ACTION);
+        if (FederationConstants.ACTION_SIGNOUT.equals(wa) || FederationConstants.ACTION_SIGNOUT_CLEANUP.equals(wa)) {
+            // Default WS-Federation logout action
+            return true;
+        }
+        
         if (this.logoutUrl == null) {
             String contextName = request.getContextPath();
             if (contextName == null || contextName.isEmpty()) {

http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/2d903b53/systests/spring/src/test/java/org/apache/cxf/fediz/integrationtests/Spring2Test.java
----------------------------------------------------------------------
diff --git a/systests/spring/src/test/java/org/apache/cxf/fediz/integrationtests/Spring2Test.java b/systests/spring/src/test/java/org/apache/cxf/fediz/integrationtests/Spring2Test.java
index d9e77ab..f9754ba 100644
--- a/systests/spring/src/test/java/org/apache/cxf/fediz/integrationtests/Spring2Test.java
+++ b/systests/spring/src/test/java/org/apache/cxf/fediz/integrationtests/Spring2Test.java
@@ -184,6 +184,13 @@ public class Spring2Test extends AbstractTests {
         
     }
     
+    @Test
+    @Ignore("Logout not supported with Spring2")
+    @Override
+    public void testRPLogoutViaAction() throws Exception {
+        
+    }
+    
     @Override
     @Test
     public void testAliceModifiedSignature() throws Exception {
@@ -242,4 +249,5 @@ public class Spring2Test extends AbstractTests {
     public void testEntityExpansionAttack() throws Exception {
 
     }
+    
 }