diff --git a/config/src/main/java/org/springframework/security/config/annotation/authentication/configuration/InitializeUserDetailsBeanManagerConfigurer.java b/config/src/main/java/org/springframework/security/config/annotation/authentication/configuration/InitializeUserDetailsBeanManagerConfigurer.java index 6f3d7141447..1b05e0d9b1b 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/authentication/configuration/InitializeUserDetailsBeanManagerConfigurer.java +++ b/config/src/main/java/org/springframework/security/config/annotation/authentication/configuration/InitializeUserDetailsBeanManagerConfigurer.java @@ -62,7 +62,7 @@ public void init(AuthenticationManagerBuilder auth) { class InitializeUserDetailsManagerConfigurer extends GlobalAuthenticationConfigurerAdapter { - private final Log logger = LogFactory.getLog(getClass()); + private final Log logger = LogFactory.getLog(InitializeUserDetailsBeanManagerConfigurer.class); @Override public void configure(AuthenticationManagerBuilder auth) { diff --git a/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationTests.java b/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationTests.java index e43378a0642..39d3b1fd92c 100644 --- a/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationTests.java +++ b/config/src/test/java/org/springframework/security/config/annotation/authentication/configuration/AuthenticationConfigurationTests.java @@ -16,6 +16,11 @@ package org.springframework.security.config.annotation.authentication.configuration; +import ch.qos.logback.classic.Logger; +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.read.ListAppender; +import org.slf4j.LoggerFactory; + import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -266,6 +271,31 @@ public void getAuthenticationWhenAuthenticationProviderAndUserDetailsBeanThenAut am.authenticate(UsernamePasswordAuthenticationToken.unauthenticated("user", "password")); } + @Test + public void getAuthenticationWhenAuthenticationProviderAndUserDetailsBeanThenWarningUsesConfigurerLogger() + throws Exception { + Logger rootLogger = (Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME); + ListAppender appender = new ListAppender<>(); + appender.start(); + rootLogger.addAppender(appender); + + try { + this.spring.register(AuthenticationProviderBeanAndUserDetailsServiceConfig.class).autowire(); + + this.spring.getContext().getBean(AuthenticationConfiguration.class).getAuthenticationManager(); + + assertThat(appender.list) + .filteredOn( + (event) -> event.getFormattedMessage().contains("UserDetailsService beans will not be used")) + .extracting(ILoggingEvent::getLoggerName) + .containsExactly(InitializeUserDetailsBeanManagerConfigurer.class.getName()); + } + finally { + rootLogger.detachAppender(appender); + appender.stop(); + } + } + // gh-3091 @Test public void getAuthenticationWhenAuthenticationProviderBeanThenUsed() throws Exception {