OSI 7 Layer 중 애플리케이션 계층은 네트워크 상에서 애플리케이션이 동작하도록 다양한 기능을 제공하고 물리, 데이터링크, 네트워크 계층을 통해 전송되고 트랜스포트 계층에서 선별된 패킷을 최종적으로 처리한다. 이번 글에서는 애플리케이션 계층의 HTTP 프로토콜의 헤더에 저장되는 인증 방식에 대해 알아보자 쿠키와 세션이란? HTTP 프로토콜은 stateless라는 특징이 있다. 한번 요청이 가고 응답이 오면 그 전의 정보는 저장되지 않고 통신이 끝나는 특징이다. 이러한 특징을 보안하기 위한 개념이 쿠키와 세션이다. 쿠키(Cookie)란 HTTP 헤더와의 통신에서 특정한 정보를 웹 브라우저에 저장시키는 구조 및 저장한 파일이다. 세션(Session)은 서버를 통해 사용자별 정보를 저장하는 방법이다. 세..
JWT
JWT로 로그아웃 구현하기 jwt 토큰으로 로그아웃을 할 수 있을까? 가계부 서비스에서 jwt를 사용하여 로그인 토큰을 발급하였다. 그런데 jwt 토큰으로 로그아웃을 하려니 어떻게 해야 할 지 모르겠어서 해결 방법을 찾아보려 한다. JWT 로그인 JWT 토큰의 작동방식은 이렇다. 유저가 로그인을 한다. db에서 유저정보를 조회한 뒤 유저정보가 일치하면 로그인과 동시에 JWT 토큰을 발급한다. 토큰을 클라이언트에게 전달한다. 클라이언트에서 api 요청을 할 때 토큰을 Authorization header에 담아서 보낸다. 서버는 토큰을 decode하여 유저 정보를 획득한다. db에 토큰에서 얻은 유저 정보와 일치하는 유저가 없을 시 에러를 반환하고 유저가 존재할 시 api 요청의 응답을 받을 수 있다. 그..