The standard interfaces for implementing user data DAOs.

Can be the traditional UserDetailsService which uses a unique username to identify the user or, for more complex requirements, the AuthenticationUserDetailsService.


AuthenticationUserDetailsService<T extends Authentication> Interface that allows for retrieving a UserDetails object based on an Authentication object. 
UserCache Provides a cache of UserDetails objects. 
UserDetails Provides core user information. 
UserDetailsChecker Called by classes which make use of a UserDetailsService to check the status of the loaded UserDetails object. 
UserDetailsService Core interface which loads user-specific data. 


User Models core user information retrieved by a UserDetailsService
UserDetailsByNameServiceWrapper<T extends Authentication> This implementation for AuthenticationUserDetailsService wraps a regular Spring Security UserDetailsService implementation, to retrieve a UserDetails object based on the user name contained in an Authentication object. 


UsernameNotFoundException Thrown if an UserDetailsService implementation cannot locate a User by its username.