NodeJS 重置密码

我目前正在尝试添加一个策略来更改用户密码,但是我不太了解如何操作Passport。 我的目标是拿3个参数:

  • 当前密码
  • 新密码
  • 新的密码确认

但是,似乎我们仅限于usernameField和passwordField。

护照不给你一个方法来做到这一点,它只关心authentication。 你只需要自己解决这个问题。

如果您search网页,您会发现大多数人正在实现一个简单的路由处理程序,它接受表单提交并修改用户数据库中的密码。 这可以工作,但是它忽略了很多安全问题,比如实现密码强度规则或正确authentication用户(例如,通过发送密码重置链接/令牌到他们的电子邮件地址)。

免责声明:我在Stormpath工作,我们<3重置密码(和身份validation!)。 我们有非常安全的密码pipe理工作stream程。 如果您使用的是Express,我推荐关于此主题的文章:

https://stormpath.com/blog/the-pain-of-password-reset/