반응형

UserDetails 2

4편. UserDetailsService와 인증 정보의 경계 - 왜 엔티티를 직접 쓰면 안 되는가

이 글은 Spring Security 공식 문서를 기반으로, 인증(Authentication) 과정에서 등장하는 UserDetailsService와 도메인 사용자 엔티티 사이의 경계를 정리합니다.이 경계를 명확히 이해하지 못하면, 보안 로직이 비즈니스 코드로 새어나가고, Spring Security는 점점 통제 불가능한 프레임워크가 됩니다.들어가며Spring Security를 실무에 적용하다 보면 아주 자연스럽게 이런 고민에 도달합니다.이미 User 엔티티가 있는데 굳이 UserDetails가 필요할까?엔티티에 UserDetails를 구현하면 편하지 않을까?어차피 인증할 때 DB에서 사용자 조회하는 거 아닌가?이 질문들은 모두 합리적으로 보이지만, Spring Security 공식 문서의 관점에서는 위험..

3편. Authentication - 로그인이라는 개념의 실체

이 글은 Spring Security 공식 문서를 기반으로, “로그인”을 화면이나 API 기능이 아니라 Spring Security의 핵심 개념인 Authentication으로 다시 정의합니다.2편에서 SecurityFilterChain이 요청을 어떻게 보호하는지 봤다면, 이번 편에서는 그 체인 안에서 인증(Authentication)이 실제로 무엇인지를 구조적으로 설명합니다.들어가며Spring Security를 처음 쓰면 “로그인”이 이렇게 느껴집니다.아이디/비밀번호를 받아서DB에서 확인하고세션이나 토큰을 발급한다하지만 Spring Security에서 인증의 본질은 다릅니다.이 요청이 누구의 요청인지, 그리고 그 근거가 무엇인지Spring Security는 이 사실을 Authentication 객체 하..

반응형