Spring Security에서는 로그인 인증을 통해 사용자를 확인한다.

Spring Security에서 지원하는 로그인 처리의 흐름에 맞춰 사용자 조회 로직을 구현하여 쉽게 로그인 인증 구현이 가능하다.

 

Spring Security의 기본 로그인 동작 흐름이다.

1. 사용자 로그인 요청

2. Spring Security가 username(ID)를 추출

3. UserDetailsService.loadUserByUsername() 호출

4. username으로 조회된 사용자정보를 기반으로 Spring Security의 AuthenticationManager가 내부적으로 비밀번호 검증 및 인증

 

@Service
@RequiredArgsConstructor
// UserDetailsService 빈 등록
public class CustomUserLoginService implements UserDetailsService {

    private final UserRepository userRepository;

    @Override
    public UserDetails loadUserByUsername(String username)
            throws UsernameNotFoundException {

        User user = userRepository.findByUsername(username)
                .orElseThrow(() -> new UsernameNotFoundException("사용자 없음"));

        return new CustomUserLogin(user);
    }
}

UserDetailsService를 상속받은 클래스에서 위의 메소드 구현 ( 로그인 시 자동으로 호출됨 )

 

JPA Repository를 통해 사용자 조회 개발자가 직접 구현 필요

조회 실패 시 예외처리(UsernameNotFoundException) 필수

'프로젝트 끄적이기' 카테고리의 다른 글

6. 로그인 session  (0) 2026.01.27
5.PasswordEncoder를 이용한 비밀번호 암호화  (0) 2026.01.27
3. 의존성 주입(DI) 방법 비교  (0) 2026.01.22
0. 프로젝트 세팅  (0) 2026.01.21
2. 도메인(Entity) 생성  (0) 2026.01.20

+ Recent posts