
Spring 서버에서 로그아웃할 때 토큰을 Blacklist Token 테이블에 추가한다면.
·
Spring
들어가면서 이 글에서는 Spring Security의 JWT 방식(이하 `기본 JWT 방식`)이 아닌 Jwt와 인증 테이블(DB)을 사용해서 인증과 인가를 구현할 때의 고민과 로그아웃을 구현한 방법을 기록한다. Jwt를 통한 인증과 인가에 대한 배경지식이 있어야 이해가 수월할 것이다. 기본 JWT 방식의 특성과 한계 기본 JWT 방식은 토큰 발급 후 `서버에 사용자 정보나 만료 시간을 저장하지 않아` 무상태(stateless)로 동작한다. 이로 인해 로그아웃이나 보안 이슈 발생 시, 서버에서 토큰을 세밀하게 관리하기 어렵다. Refresh Token을 서버에 저장하지 않기 때문에, Access Token 만료 시 자동 재발급 기능 구현이 힘들 것이다. Access Token의 만료 기간을 짧..