백엔드/Spring

[Spring] JWT 로그인 구현하기 2

목적 기존에 구현한 JWT로그인을 보완하고자 함 목차 기존의 흐름 새로 구현한 JWT로그인의 흐름 코드 설명 기존의 흐름 https://emgc.tistory.com/133 기존에 작성한 JWT로그인이며 흐름은 아래와 같다. 필터 로그인 시 쿠키에 있는 토큰을 확인하고 유효한 토큰이라면 인증객체를 생성하고 요청을 넘긴다 컨트롤러 인증객체의 확인 없이 클라이언트가 입력한 아이디와 비밀번호를 통해 사용자를 인증하고 인증된 사용자의 정보로 토큰을 발급한다. 하지만 아래와 같은 문제점이 있어서 새로운 JWT로그인이 필요했다. 토큰을 갖고 있어도 매번 아이디 비밀번호를 입력해야 로그인 가능 토큰 자체의 만료시간이 짧기 때문에 만료될때마다 아이디 비밀번호를 입력 새로 구현한 JWT로그인의 흐름 토큰을 access ..

2021.10.25 게시됨

백엔드/Spring Security

[Spring Security] JWT 로그인 구현하기

목적 세션을 사용하지 않고 로그인을 구현하기 위함 목차 의존성 추가 UserDetails 생성 UserRepository 추가 UserDetailsService 생성 JWT유틸 클래스 추가 JWT필터 추가 스프링 시큐리티 설정 스프링 설정 컨트롤러 설정 Refresh Token을 활용한 JWT로그인의 구현은 아래 링크를 참조하면 되겠다. https://emgc.tistory.com/148 1. 의존성 추가 jwt 의존성을 추가해준다 아래는 gradle 기준이다. implementation 'io.jsonwebtoken:jjwt:0.9.1' 2. UserDetails 생성 스프링 시큐리티에서 관리하는 UserDetails타입의 객체를 생성해야한다. 기본 필드 및 메서드 외 필요한 것들은 추가해서 사용하면 ..

2021.06.25 게시됨