def post(self): jti = get_raw_jwt()['jti'] try: revoked_token = RevokedToken(jti=jti) revoked_token.add() return {'message': 'access token has been revoked'} except: return {'message': 'something went wrong'}, 500
def post(self): access_jti = get_raw_jwt()['jti'] refresh_token = JU.extract_keys(request.get_json(), "refresh_token") if not refresh_token: return JU.make_response("refresh token is required", 400) try: refresh_jti = get_jti(refresh_token) RevokedToken(jti=access_jti).add() RevokedToken(jti=refresh_jti).add() return {'message': 'logged out successfully'} except Exception as e: print(e) return {'message': 'something went wrong'}, 500
def post(self): username = get_jwt_identity() password, refresh_token = JU.extract_keys(request.get_json(), "password", "refresh_token") if JU.null_values(username, password, refresh_token): return JU.make_response("invalid data", 400) access_jti = get_raw_jwt()['jti'] refresh_jti = get_jti(refresh_token) user = User.find_by_username(username) if not user: return JU.make_response(f"user '{username}' doesn't exists", 404) if not User.verify(user.password, password): return JU.make_response(f"wrong password", 401) user.delete_from_db() RevokedToken(jti=access_jti).add() RevokedToken(jti=refresh_jti).add() return JU.make_response(f"user '{username}' deleted", 200)
def check_if_token_in_blacklist(decrypted_token): jti = decrypted_token['jti'] return RevokedToken.is_jti_blacklisted(jti)