Spring-managed interface that abstracts database operations (like save, find, delete). It uses JPA/Hibernate internally to perform these operations without manual SQL.
RefreshTokenRepository:
Used to manage the database operations for RefreshTokens.
UserRepository:
Auth:
Request Flow:
Request → SecurityFilterChain → JWTAuthFilter → AuthenticationManager → AuthenticationProvider → UserDetailsService → SecurityContext → Controller.
UserDetails
SecurityContextHolder
with UsernamePasswordAuthenticationToken
to enable @PreAuthorize
, role checks, etc./auth/v1/refreshtoken
(don’t log in again)Models
Utils:
Kafka Producer and Serializer: