Authentication: UserDetailsService and Password Storage
Authentication is the process of verifying who a user is. Spring Security's authentication flow starts with a filter extracting credentials, delegating to an AuthenticationManager, which uses an AuthenticationProvider and a UserDetailsService to load the user. Passwords are never stored in plain text — always use an adaptive hashing algorithm.