我已经实现了更改密码功能,现在我想测试一下。但我面临着尝试的极限。 我应该怎样做才能防止这个错误?
已超出尝试次数限制,请稍后再试
我是 Cognito 团队的成员。这是不可配置的。我们确实有保护机制来防止用户滥用忘记密码的 API,这可能就是您所看到的。
这不是确切的答案,例如尝试限制肯定是不可配置的。 但如果您想多次测试,您可以尝试不同的电子邮件,例如 如果您的电子邮件 1 的尝试次数超出限制,您可以开始尝试使用电子邮件 2。 另请注意,您可以通过一个电子邮件地址接收 Email1 和 Email2 的电子邮件,例如假设您的 Email1= [email protected] 您可以注册您的 Email2 [email protected] 这样您就可以在 [email protected] 上接收 Email1 和 Email2 的电子邮件
Cognito 允许 5 次
password reset
/sign-in
尝试。
超过允许的数量后,服务会开始临时锁定,并且次数呈指数增加。 您可以在这里找到有关其发生方式的更多详细信息: https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-authentication-flow.html
用户之前可以尝试登录但未能正确登录五次 Amazon Cognito 暂时将它们锁定。锁定时间从一开始 第二个并呈指数增加,每次后续后加倍 失败的尝试,长达约 15 分钟。 Amazon Cognito 忽略 在临时锁定期间尝试登录,并且这些 尝试不会启动新的锁定期。用户等待 15 后 分钟后,Amazon Cognito 会重置临时锁定。这种行为是 如有更改。
如果使用电子邮件重置密码,您可以使用 guerrillamail 之类的工具来获取许多新的临时电子邮件以解决 limitExceeded 异常。
如果使用电话重置密码,请尝试使用虚拟电话号码提供商(例如 Google Voice)来获取至少 2 个电话号码,以解决 limitExceeded 异常。
我使用的解决方法(在测试用户确认流程时)是:一旦达到限制,请确保完成正确的流程以重置指数退避,然后删除帐户并在重新创建帐户后继续测试。