|
50 | 50 | import org.springframework.security.core.userdetails.cache.EhCacheBasedUserCache;
|
51 | 51 | import org.springframework.security.core.userdetails.cache.NullUserCache;
|
52 | 52 | import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
| 53 | +import org.springframework.security.crypto.factory.PasswordEncoderFactories; |
53 | 54 | import org.springframework.security.crypto.password.NoOpPasswordEncoder;
|
54 | 55 | import org.springframework.security.crypto.password.PasswordEncoder;
|
55 | 56 |
|
@@ -280,6 +281,35 @@ public void testAuthenticateFailsWithInvalidUsernameAndHideUserNotFoundException
|
280 | 281 | }
|
281 | 282 | }
|
282 | 283 |
|
| 284 | + @Test |
| 285 | + public void testAuthenticateFailsWithInvalidUsernameAndChangePasswordEncoder() { |
| 286 | + UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken( |
| 287 | + "INVALID_USER", "koala"); |
| 288 | + |
| 289 | + DaoAuthenticationProvider provider = createProvider(); |
| 290 | + assertThat(provider.isHideUserNotFoundExceptions()).isTrue(); |
| 291 | + provider.setUserDetailsService(new MockAuthenticationDaoUserrod()); |
| 292 | + provider.setUserCache(new MockUserCache()); |
| 293 | + |
| 294 | + try { |
| 295 | + provider.authenticate(token); |
| 296 | + fail("Should have thrown BadCredentialsException"); |
| 297 | + } |
| 298 | + catch (BadCredentialsException expected) { |
| 299 | + |
| 300 | + } |
| 301 | + |
| 302 | + provider.setPasswordEncoder(PasswordEncoderFactories.createDelegatingPasswordEncoder()); |
| 303 | + |
| 304 | + try { |
| 305 | + provider.authenticate(token); |
| 306 | + fail("Should have thrown BadCredentialsException"); |
| 307 | + } |
| 308 | + catch (BadCredentialsException expected) { |
| 309 | + |
| 310 | + } |
| 311 | + } |
| 312 | + |
283 | 313 | @Test
|
284 | 314 | public void testAuthenticateFailsWithMixedCaseUsernameIfDefaultChanged() {
|
285 | 315 | UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(
|
|
0 commit comments