From 66858e22ad381c83b47d373296a4cafbdb1a2615 Mon Sep 17 00:00:00 2001 From: Rob Winch Date: Mon, 20 Jun 2016 15:30:00 -0500 Subject: [PATCH] Disable XMLHttpRequest for formLogin entry point Previously the following: http http://localhost:8080/user \ "X-Requested-With:XMLHttpRequest" "Accept:text/plain" Produced a 302 instead of a 401 Fixes gh-3887 --- .../AbstractAuthenticationFilterConfigurer.java | 15 +++++++++++++-- .../ExceptionHandlingConfigurerTests.groovy | 15 +++++++++++++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AbstractAuthenticationFilterConfigurer.java b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AbstractAuthenticationFilterConfigurer.java index fca1b61e0c..7d05643bf5 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AbstractAuthenticationFilterConfigurer.java +++ b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/AbstractAuthenticationFilterConfigurer.java @@ -15,6 +15,7 @@ */ package org.springframework.security.config.annotation.web.configurers; +import java.util.Arrays; import java.util.Collections; import javax.servlet.http.HttpServletRequest; @@ -37,7 +38,10 @@ import org.springframework.security.web.authentication.SimpleUrlAuthenticationFa import org.springframework.security.web.authentication.WebAuthenticationDetailsSource; import org.springframework.security.web.authentication.session.SessionAuthenticationStrategy; import org.springframework.security.web.util.matcher.RequestMatcher; +import org.springframework.security.web.util.matcher.AndRequestMatcher; import org.springframework.security.web.util.matcher.MediaTypeRequestMatcher; +import org.springframework.security.web.util.matcher.NegatedRequestMatcher; +import org.springframework.security.web.util.matcher.RequestHeaderRequestMatcher; import org.springframework.web.accept.ContentNegotiationStrategy; import org.springframework.web.accept.HeaderContentNegotiationStrategy; @@ -243,10 +247,17 @@ public abstract class AbstractAuthenticationFilterConfigurer