Flask-RESTful 서비스를 설정 중이며 사용자 인증이 작동합니다. 내가 사용하는 방법은 다음과 같습니다Flask RESTful 사용자 토큰 폐기
class token(Resource):
decorators = [auth.login_required]
def post(self):
username = g.user
return_token = generate_auth_token(username)
return {'token':return_token.decode()}, 200
를 그리고 저장할 필요가 없도록 토큰은 다음과 같은 확인 :
def generate_auth_token(username, expiration=600):
gen_serial = Serializer(secret_key, expires_in=expiration)
return gen_serial.dumps({'username': username})
다음과 같이 내가 사용자에게 토큰을 전달 서버 측 :
def verify_auth_token(auth_token):
serial = Serializer(secret_key)
try:
data = serial.loads(auth_token)
except SignatureExpired:
return None
except BadSignature:
return None
serial_user = data['username']
return serial_user
그러나 이것은 내가 만료 토큰 서버 측을 저장하지 않고 만료되기 전에 사용자를 로그 아웃하는 방법을 확실하지 오전, 잘 작동하는 것 같다. 내 생각은 사용자가 로그 아웃하려고 할 때 가비지 토큰을 돌려주는 것이지만, 이것이 우아하고 안전한 솔루션이라고 생각하지 않습니다.
모든 도움말이 도움이 될 것입니다.
사용자가 시작한 logou입니까? t 또는 서버가 시작 했습니까? –
사용자가 시작하려고합니다. 목표는 사용자가 작업이 끝나면 로그 아웃을 클릭하는 것입니다. 그렇지 않으면 토큰이 일정 기간 후에 만료됩니다. –