SecurityContextHolder
- contains and provides access to the SecurityContext in the application.
SecurityContext
- the default implementation of Spring Security containing the Authentication object.
Authentication
- provides a token for an authentication request or for a principal who has authenticated. It also contains a list of powers that the principal has access to.
GrantedAuthority
- Contains the authority granted to the GrantedAuthority
principal.
UserDetails
- contains information about the user: password, login, permissions. This information is used to create an Authentication object after successful authentication.
UserDetailsService
- this service extracts information about the user from the repository (program memory, database, etc.) and puts it in UserDetails.