매거진 백엔드

You can make anything
by writing

C.S.Lewis

[백엔드, Django] 인증방식

세션, JWT

by 내가 사는 세상 Jan 18. 2025

세션(Session)


장고에서 기본적으로 설정되어 있는 앱 중에 아래의 것이 있다.

django.contrib.sessions


해당 앱에서 생성되는 테이블은 django_session이며 구조와 레코드는 아래와 같다.


테이블 형태


레코드 형태





JWT


인증방식으로 JWT와 관련해서는 장고에서 가장 유명한 라이브러리 중 하나인 Simple JWT가 있다.


THIRD_PARTY_APPS = [

    'rest_framework_simplejwt.token_blacklist',

]


위의 앱 설정을 마치고 마이그레이션을 해주면 아래의 2개 테이블이 만들어진다.


1. outstandingtoken 테이블

발급된 refresh 토큰을 관리


2. blaklisttoken 테이블

만료된 refresh 토큰을 관리


그리고 이 둘은 아래 그림과 같은 관계로 이루어져 있다. blacklisttoken이 outstandingtoken 테이블을 바라보고 있는 형태인 것이다.


매거진의 이전글 Django - View에서 하는 일

브런치 로그인

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari