Cognito 用户无法重置他的密码,或者如果他处于 "force_change_password" 状态则要求重新发送

Cognito user is unable to reset his password, or ask for resent if his is in "force_change_password" status

如果 Cognito 用户丢失了他的确认电子邮件,则无法重置他的密码,或者如果他处于“force_change_password”状态,并且不会向他显示任何错误,则要求重新发送。

是否有任何已知的修复方法?

如果用户在“force_change_password”中,这通常是因为您执行了管理员创建用户操作,然后向用户发送了一个临时密码以供使用。使用该临时密码后,系统会要求用户设置新密码。

如果这是您所指的密码,您可以为同一用户再次执行 admin create user 并将 MessageAction 设置为 'RESEND' [1].

“设置为“重新发送”以向已存在的用户重新发送邀请消息并重置用户帐户的到期限制。”

[1] https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminCreateUser.html

没有完全解决我的问题,但确实向用户提供了一条错误消息。

如果您转到用户池 -> 常规设置 -> 应用程序客户端 - > 在 Prevent User Existence Errors 下 -> 从 enabled 更改为 legacy.

因此,当用户点击忘记密码时,将看到此错误消息“无法重置帐户密码,请联系支持人员或重试”。