Python 分两步进行双因素身份验证

Python 分两步进行双因素身份验证,python,authentication,flask,two-factor-authentication,Python,Authentication,Flask,Two Factor Authentication,我正在尝试实现双因素身份验证。登录将包括两个步骤: 提供用户名和密码并检查其正确性。如果它们是正确的,并且没有为帐户启用2FA,则用户已登录(设置了cookie)。如果它们正确且2FA已启用,则用户将被重定向到一个页面,在该页面中,她必须输入一次性密码 用户输入一次性密码,如果密码正确,则登录 当将用户重定向到OTP页面时,我需要记住她已经输入了正确的密码和用户名。最好的方法是什么?是否可以通过重定向发送post数据,这样我就可以再次发送密码和用户名?我是否应该创建一个中间cookie来保存一个

我正在尝试实现双因素身份验证。登录将包括两个步骤:

  • 提供用户名和密码并检查其正确性。如果它们是正确的,并且没有为帐户启用2FA,则用户已登录(设置了cookie)。如果它们正确且2FA已启用,则用户将被重定向到一个页面,在该页面中,她必须输入一次性密码

  • 用户输入一次性密码,如果密码正确,则登录

  • 当将用户重定向到OTP页面时,我需要记住她已经输入了正确的密码和用户名。最好的方法是什么?是否可以通过重定向发送post数据,这样我就可以再次发送密码和用户名?我是否应该创建一个中间cookie来保存一个秘密(并将该秘密保存在服务器上,这似乎是一种复杂的方法?)

    我正在使用flask和mod_auth_tkt(用于基于cookie的身份验证的apache mod),如果这有什么区别的话

    我是否应该创建一个中间cookie来保存一个秘密(并将该秘密保存在服务器上,这似乎是一种复杂的方法?)

    我想您可以使用Flask会话,只要记住在登录/双因素身份验证失败时清除它

    文件: