AnonymousAuthenticationFilter should cache its Supplier<SecurityContext>
Closes gh-11900
This commit is contained in:
committed by
Steve Riesenberg
parent
5a55987d6e
commit
56b9badcfe
@@ -37,6 +37,7 @@ import org.springframework.security.core.context.SecurityContext;
|
||||
import org.springframework.security.core.context.SecurityContextHolder;
|
||||
import org.springframework.security.core.context.SecurityContextHolderStrategy;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.util.function.SingletonSupplier;
|
||||
import org.springframework.web.filter.GenericFilterBean;
|
||||
|
||||
/**
|
||||
@@ -45,6 +46,7 @@ import org.springframework.web.filter.GenericFilterBean;
|
||||
*
|
||||
* @author Ben Alex
|
||||
* @author Luke Taylor
|
||||
* @author Evgeniy Cheban
|
||||
*/
|
||||
public class AnonymousAuthenticationFilter extends GenericFilterBean implements InitializingBean {
|
||||
|
||||
@@ -100,10 +102,10 @@ public class AnonymousAuthenticationFilter extends GenericFilterBean implements
|
||||
|
||||
private Supplier<SecurityContext> defaultWithAnonymous(HttpServletRequest request,
|
||||
Supplier<SecurityContext> currentDeferredContext) {
|
||||
return () -> {
|
||||
return SingletonSupplier.of(() -> {
|
||||
SecurityContext currentContext = currentDeferredContext.get();
|
||||
return defaultWithAnonymous(request, currentContext);
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
private SecurityContext defaultWithAnonymous(HttpServletRequest request, SecurityContext currentContext) {
|
||||
|
||||
Reference in New Issue
Block a user