개발공부

[Flask 에서 JWT 사용] 설치 방법 본문

Python/Flask

[Flask 에서 JWT 사용] 설치 방법

mscha 2022. 6. 20. 17:55

설치하기

pip install flask-jwt-extended

 

이 라이브러리는 아래의 3개를 사용할 수 있다.

- create_access_token() : jwt 생성

- @jwt_required(optiontal = True / False) : False 시 무조건 토큰 필요함, True 시 상관 없다는 뜻 권한을 줄때 주로 사용

- get_jwt_identity() : 클라이언트의 header 부분에 있는 jwt를 복호화한다.

 

config.py 파일에 JWT암호화를 위한 변수 추가

프로젝트 폴더에 config.py를 생성하고 아래와 같이 입력한다.

class Config :
    JWT_SECRET_KEY = '본인의 KEY'
    JWT_ACCESS_TOKEN_EXPIRES = True
    PROPAGATE_EXCEPTIONS = True

JWT_SECRET_KEY : 토큰 생성에 사용할 KEY를 입력한다. 이 KEY는 타인에게 절대 알리지 말아야 한다.

JWT_ACCESS_TOKEN_EXPIES : 토큰의 만료 변수이다. True일 때는 api에서 만료에 대한 설정을 해야한다. 

                                                         False 일 때는 토큰이 만료되지 않는다.

PROPAGATE_EXCEPTIONS : True일때는 jwt 관련 예외에 대한 처리를 알아서 해준다는 뜻이다.

 

메인이되는 .py 파일에 jwt 설정을 추가한다.

예시

from flask import Flask
from flask_jwt_extended import JWTManager
from flask_restful import Api
from config import Config


app = Flask(__name__)

# 환경변수 셋팅
app.config.from_object(Config)

# JWT 토큰 라이브러리만들기
jwt = JWTManager(app)

api = Api(app)

if __name__ == '__main__' :
    app.run()