session 기반 인증 클라이언트가 로그인을 하면 서버는 사용자 정보를 확인 후 저장소에 사용자 정보와 세션 ID를 매핑해 저장한다. 세션 ID를 쿠키로 클라이언트에게 전달해 준다. 클라이언트는 쿠키에 저장된 세션 ID를 활용하여 서버에 요청하면 된다. 서버는 일치하는 세션 ID를 검증하고 획득한 유저정보를 통해 응답값을 준다. 장점 사용자의 인증 정보를 서버에서 저장하고 클라이언트는 세션 ID만 저장하므로 보안에 좋다. 강제 로그아웃 시키는 것이 간단하다. 저장소에 세션 ID를 만료시키거나 삭제하면 되기 때문이다. 단점 서버에서 세션 정보를 관리한다는 점이다! 요즘엔 브라우저를 종료하더라도 로그인을 유지하는 추세이기 때문에 로그인했던 사용자를 모두 저장소에 저장하고 있고 이 사용자가 늘어날수록 과부하..
현재 상황나는 jwt방식을 사용하며accessToken과 refreshToken을 모두 쿠키에 보관하고 있다.모두 httpOnly, Secure 옵션을 주어 안전하게 사용하고자 했다.httpOnly: document.cookie를 통해 자바스크립트에서 접근을 막는다. Secure: HTTPS로 통신하는 경우에만 쿠키가 전송된다. 전체적인 큰 그림은 아래와 같다.accessToken 재발급 시 refreshToken을 왜 갱신하느냐... 할 수도 있지만 서비스 상 로그인 상태를 최대한 오래 유지하기 위해 이렇게 진행했다. token을 어디에 저장하고 어떻게 관리할지에 대해 정답은 없고 주어진 상황에 맞게 사용하면 되는 거 같다.axios 인스턴스 생성프론트에서 쿠키를 직접 다룰 수 없어(httpOnly옵션..