我想在 asp.net mvc 中实现一个忘记密码的功能,允许用户重置他们的密码,并在这方面有一些问题:
假设在允许用户重置密码之前,我想验证一些额外的信息,例如他们的名字和姓氏。默认情况下,此信息不存储在 aspnet_regsql 创建的表中。解决此类问题的推荐方法是什么?我应该将这种信息存储在单独的表中,并使用表连接来验证还是应该修改由 aspnet_regsql 生成的表的架构(如何?),这样我就不必使用连接?我是否需要编写自定义提供程序或者这不是必需的?
我在一些地方读到过,例如在这篇文章中,不是通过电子邮件发送临时密码,而是通过电子邮件发送一个 URL,当单击该 URL 时,用户可以更改他们的密码。这是怎么做到的?如何确保 URL 在 1 小时后过期?