所以基本上我想实现类似于谷歌双因素身份验证实现的东西。我的登录表单包含一个两步表单向导:
- 第 1 步(验证用户名和密码)
- 第 2 步(验证安全令牌)
使用场景将是:
- 用户有一个与其帐户关联的安全令牌:如果用户通过了第 1 步和第 2 步,则登录用户
- 用户没有安全令牌:仅在用户通过第 1 步后立即登录
我现在将 django 的表单向导子类化为我的登录视图。在第 2 步中,默认情况下 Django FormWizard 将包含来自先前提交的表单的字段值作为隐藏字段。但如您所知,密码是在步骤 1 中输入的,因此出于安全原因,我不想将其包含在步骤 2 中。
我的第一个想法是使用 session 来指示用户是否已通过第 1 步,因此我不需要包含第 1 步中的字段值。但我可能在这里忽略了一些东西。对此有什么更安全的解决方案?
此外,我不太了解 FormWizard 中安全哈希的使用。有人可以解释吗?
非常感谢。