Mit*_*ops 5 python token password-recovery flask flask-extensions
有人可以告诉我在flask-security的密码重置令牌中发生的事情吗?代码在github上:
https://github.com/mattupstate/flask-security/blob/develop/flask_security/recoverable.py
(目录中可能还有其他部分.)
我对正在发生的事情的理解:
那是对的吗?
也:
我最特别地对generate_password_reset函数感到困惑
data = [str(user.id), md5(user.password)]
return _security.reset_serializer.dumps(data)
和
get_token_status(token, 'reset', 'RESET_PASSWORD')
功能里面 reset_password_token_status(token)
它使用itsdangerous
模块来序列化令牌。如果您在下面阅读有关它的更多信息,您将获得有关如何使用到期时间戳等的答案。
http://packages.python.org/itsdangerous/
该函数serializer.dumps()
创建一个唯一的序列化字符串,除非将确切的序列化值作为参数提供给它,否则serializer.loads()
调用该字符串get_token_status
将返回异常。
所以你dumps()
然后使用它的返回值,你调用loads()
. 如果不匹配,您有例外,在这种情况下意味着坏令牌。