jwt

    [Django] DRF를 사용한 JWT Authentication #2

    이번 포스팅에서는 JWT를 생성하고 로그인,로그아웃 기능을 구현하는 방법을 정리해 보려고 한다. 로그인 로직 클라이언트는 LoginApi를 호출하면서 {"username": "이름", "password": "비번"} 정보를 전달해준다. 서버는 username과 password를 가지고, 해당하는 유저를 찾은 다음 jwt_login을 수행한다. jwt_login에서는 access_token과 refresh_token을 생성한다. 생성된 access_token은 {"access_token": access_token}형태의 json으로 클라이언트에 전달되고, 생성된 refresh_token은 httpOnly=True 속성을 가진채로 cookie에 삽입된다. 로그아웃 로직 클라이언트에서 LogoutApi를 호출..

    [Django] DRF를 사용한 JWT Authentication #1

    이번 포스팅에서는 DRF를 사용해 JWT 인증시스템을 어떻게 구현하는지에 대해서 정리해보려고 한다. JWT란? JWT는 Json Web Token의 약자로 모바일이나 웹의 사용자 인증을 위해 사용하는 암호화된 토큰을 의미한다. JWT 정보(사용자 id, 토큰 생성시간, 만료시간)를 request에 담아 사용자의 정보 열람, 수정 등 개인적인 작업들을 수행할 수 있다. JWT를 사용해 인증시스템을 구축한 이유 1. 프론트엔드와 백엔드의 완전한 분리 Django의 세션기반 로그인을 사용하기 위해서는 Django Template을 사용해야한다. 이는 프론트엔드 개발인원들이 반드시 Django의 문법을 어느 정도 이해해야만 페이지를 구성할 수 있다는 뜻이다. 하지만 JWT를 사용한다면 클라이언트와 서버의 완전한..