对于我的.net网站,我想要实现忘记密码功能。我使用以下步骤:
- 表单包含登录ID和电子邮件ID以及验证码的输入框。
- 当用户输入详细信息并提交后,在验证后,新密码会在数据库中生成并替换旧密码。
- 新密码将通过电子邮件发送给用户。
请帮助我确定是否正确?
是否有其他安全的机制可以实现同样的功能?
[编辑]谢谢,我收到了您的回复。这确实是一种安全的机制。但是我还有一些疑问:
- 当用户在忘记密码页面输入登录ID和电子邮件地址时,应该显示什么消息?
- 无论是有效用户还是恶意用户,消息是否相同?
- 使用CSRF令牌的优点是什么?有任何帮助/链接吗?
- 当用户点击链接时,我应该怎么做;因为我猜测用户应该自动登录到他们的帐户-然后我有两个选择(第一)自动向用户发送新密码(第二)向用户显示新表单,用户将在其中输入旧密码和新密码两次?
请帮忙解答?