Files
moto-adv-website/app/utils/token.py

20 lines
565 B
Python

import os
from itsdangerous import URLSafeTimedSerializer
from flask import current_app
def get_serializer():
secret = os.environ.get('RESET_TOKEN_SECRET') or current_app.config.get('SECRET_KEY')
return URLSafeTimedSerializer(secret)
def generate_reset_token(email):
s = get_serializer()
return s.dumps(email, salt='password-reset')
def verify_reset_token(token, max_age=3600):
s = get_serializer()
try:
email = s.loads(token, salt='password-reset', max_age=max_age)
return email
except Exception:
return None