package com.krylov.refound.service.security; import com.krylov.refound.entity.User; import com.krylov.refound.repository.UserRepository; import lombok.RequiredArgsConstructor; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; @Service @RequiredArgsConstructor public class CustomUserDetailsService implements UserDetailsService { private final UserRepository repository; @Override public UserDetails loadUserByUsername(String email) { User user = repository.findByEmail(email) .orElseThrow(() -> new UsernameNotFoundException("User not found")); return org.springframework.security.core.userdetails.User .withUsername(user.getEmail()) .password(user.getPassword()) .authorities("USER") .build(); } }