Annotation Interface WithUserDetails
@Target({METHOD,TYPE})
@Retention(RUNTIME)
@Inherited
@Documented
@WithSecurityContext(factory=org.springframework.security.test.context.support.WithUserDetailsSecurityContextFactory.class)
public @interface WithUserDetails
When used with
WithSecurityContextTestExecutionListener this annotation can be
added to a test method to emulate running with a UserDetails returned from the
UserDetailsService. In order to work with MockMvc The
SecurityContext that is used will have the following properties:
- The
SecurityContextcreated with be that ofSecurityContextHolder.createEmptyContext() - It will be populated with an
UsernamePasswordAuthenticationTokenthat uses the username ofvalue().
- Since:
- 4.0
- See Also:
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionDetermines when theSecurityContextis setup.The bean name for theUserDetailsServiceto use.The username to look up in theUserDetailsService
-
Element Details
-
value
String valueThe username to look up in theUserDetailsService- Returns:
- Default:
- "user"
-
userDetailsServiceBeanName
String userDetailsServiceBeanNameThe bean name for theUserDetailsServiceto use. If this is not provided, then the lookup is done by type and expects only a singleUserDetailsServicebean to be exposed.- Returns:
- the bean name for the
UserDetailsServiceto use. - Since:
- 4.1
- Default:
- ""
-
setupBefore
Determines when theSecurityContextis setup. The default is beforeTestExecutionEvent.TEST_METHODwhich occurs duringTestExecutionListener.beforeTestMethod(TestContext)- Returns:
- the
TestExecutionEventto initialize before - Since:
- 5.1
- Default:
- TEST_METHOD
-