|
@@ -169,13 +169,16 @@ public final class HttpBasicConfigurer<B extends HttpSecurityBuilder<B>> extends
|
|
MediaType.MULTIPART_FORM_DATA, MediaType.TEXT_XML);
|
|
MediaType.MULTIPART_FORM_DATA, MediaType.TEXT_XML);
|
|
restMatcher.setIgnoredMediaTypes(Collections.singleton(MediaType.ALL));
|
|
restMatcher.setIgnoredMediaTypes(Collections.singleton(MediaType.ALL));
|
|
|
|
|
|
|
|
+ MediaTypeRequestMatcher allMatcher = new MediaTypeRequestMatcher(contentNegotiationStrategy, MediaType.ALL);
|
|
|
|
+ allMatcher.setUseEquals(true);
|
|
|
|
+
|
|
RequestMatcher notHtmlMatcher = new NegatedRequestMatcher(
|
|
RequestMatcher notHtmlMatcher = new NegatedRequestMatcher(
|
|
new MediaTypeRequestMatcher(contentNegotiationStrategy,
|
|
new MediaTypeRequestMatcher(contentNegotiationStrategy,
|
|
MediaType.TEXT_HTML));
|
|
MediaType.TEXT_HTML));
|
|
RequestMatcher restNotHtmlMatcher = new AndRequestMatcher(
|
|
RequestMatcher restNotHtmlMatcher = new AndRequestMatcher(
|
|
Arrays.<RequestMatcher>asList(notHtmlMatcher, restMatcher));
|
|
Arrays.<RequestMatcher>asList(notHtmlMatcher, restMatcher));
|
|
|
|
|
|
- RequestMatcher preferredMatcher = new OrRequestMatcher(Arrays.asList(X_REQUESTED_WITH, restNotHtmlMatcher));
|
|
|
|
|
|
+ RequestMatcher preferredMatcher = new OrRequestMatcher(Arrays.asList(X_REQUESTED_WITH, restNotHtmlMatcher, allMatcher));
|
|
|
|
|
|
registerDefaultEntryPoint(http, preferredMatcher);
|
|
registerDefaultEntryPoint(http, preferredMatcher);
|
|
registerDefaultLogoutSuccessHandler(http, preferredMatcher);
|
|
registerDefaultLogoutSuccessHandler(http, preferredMatcher);
|
|
@@ -218,4 +221,4 @@ public final class HttpBasicConfigurer<B extends HttpSecurityBuilder<B>> extends
|
|
basicAuthenticationFilter = postProcess(basicAuthenticationFilter);
|
|
basicAuthenticationFilter = postProcess(basicAuthenticationFilter);
|
|
http.addFilter(basicAuthenticationFilter);
|
|
http.addFilter(basicAuthenticationFilter);
|
|
}
|
|
}
|
|
-}
|
|
|
|
|
|
+}
|