如何验证访问我们网站的用户

时间:2015-06-30 15:55:53

标签: asp.net asp.net-mvc

我有一个要求,例如在忘记密码链接上,一封电子邮件发送给用户,并带有链接,如点击此处重置密码。点击它必须重定向到我们的网站有2个文本框作为新密码和确认密码。 那么我怎么知道忘记密码时用户点击了之前。

1 个答案:

答案 0 :(得分:2)

此处的标准是您创建临时令牌以重置密码。这是方法论。

  1. 用户点击"忘记密码"尝试登录后的页面
  2. 为帐户创建的令牌并存储在数据库中
  3. 使用包含令牌的URI发送给用户的电子邮件。示例:mysite.com/forgotPassword.aspx?id=EDAB19D243
  4. 用户点击电子邮件链接
  5. 用户从帐户询问安全问题,例如"你父亲的中间名是什么?"
  6. 如果用户成功回答安全问题,则可以更改密码
  7. 这里的想法是确保用户是正确用户的多因素方法。安全条款:

    • 令牌仅在一段时间内有效(在电子邮件中说明)
    • 令牌仅发送给用户(未在网页上显示)
    • 用户必须回答有关帐户的其他问题 - 安全问题优于地址,电话号码,生日,因为窃取身份的人会知道这些问题的答案