AuthService:

  1. Entities:
  1. Services:
  1. Repositories:
  1. Auth:

    Request Flow:

    Request → SecurityFilterChain → JWTAuthFilter → AuthenticationManager → AuthenticationProvider → UserDetailsService → SecurityContext → Controller.

    1. SecurityConfig:
    1. JWTFilter :
    1. UserConfig -
    1. request
    1. response
    1. controllers
    1. Models

      • Models are used to define extra information and keep separate from JPA entities.
      • Often extends entities and used in service layers.
      • UserInforDTO extends UserInfo entity, adds more attributes and used in service layer instead of using UserEntity.
    2. Utils:

      • ValidationUtils are used to validate incoming request parameters.
      • eg. Username and Password.
    3. Kafka Producer and Serializer:

      • Kafka Producer will be used to send a kafka event with userInfo.
      • This event will be consumed by UserService.
      • Serializer will be used to serialize the UserInfo data.