如何使用Amplify在没有旧密码的情况下更新Cognito用户池中的用户密码?

时间:2020-05-27 08:12:31

标签: amazon-cognito aws-amplify

我们有一个多步骤注册表格,用户可以在步骤2中设置密码。 (用户注册应在步骤1本身中进行)因此,我们将在步骤1中设置随机密码,并将用户详细信息注册到Cognito用户池中。 但是最终用户需要从步骤2提交实际密码。 如果不发送旧密码(从步骤1生成的随机数),Cognito将不会更新密码(从步骤2开始)。 Cognito认为此过程将是密码更新。

那么我们该如何处理这种情况?还是有任何可以放大的选项/技巧可以克服这种情况?

1 个答案:

答案 0 :(得分:0)

需要更多的上下文信息才能完全理解为什么在这种情况下用户需要使用随机密码。

例如,如果您尝试创建一个多屏幕注册过程,并且您不希望用户仅发现自己的密码不符合标准就结束该过程,那么已经有电子邮件了存在等,这可能更有利于用户体验,使用ListUsers首先检查用户池中是否已经存在该用户,并在逐步移动时收集数据,最后调用SignUp API调用。

虽然我强烈建议您重新考虑采用的方法,但是AdminSetUserPassword是一个后端API调用,可用于为用户设置永久密码,尽管应格外小心以防止该API不会被其他用户恶意使用。