【问题标题】:Verifying only "code" using CognitoUser (npm: amazon-cognito-identity-js)使用 CognitoUser (npm: amazon-cognito-identity-js) 仅验证“代码”
【发布时间】:2021-09-13 00:48:48
【问题描述】:

我目前在实现“忘记密码”功能时使用以下内容, 但是我只想先验证“验证码”,然后再验证“密码” 但现在它希望参数 new password 和 code 同时验证和更新密码。

   getUser(values.email).confirmPassword(values.code, values.password, {
          onSuccess: (data) => {
            console.log("onSuccess", data); 
            setStage(2);
          },
          onFailure: (data) => {
            console.log("onFail", data);
            return;
          },
        });
const getUser = (Username) => {
  return new CognitoUser({ Username, Pool });
};

【问题讨论】:

    标签: javascript amazon-web-services authentication npm amazon-cognito


    【解决方案1】:

    对于这种行为,您无能为力。这就是 Cognito 中 API 端点的工作方式。 ConfirmForgotPassword 端点将代码和新密码作为强制参数。响应将告诉您密码是否不正确(如果它与配置的规则不匹配)或代码是否无效/过期。

    代码仅传送到终端设备。这意味着您永远不会看到它,因此无法判断它是否正确。这就是 Cognito 会做的事情。

    【讨论】:

    • 谢谢,我还观察到,当我们创建 CognitoUser 实例时,如果池中甚至不存在电子邮件/用户名,它不会引发错误,它会继续进行
    猜你喜欢
    • 2016-10-02
    • 2020-12-09
    • 2023-02-01
    • 2021-05-31
    • 2018-12-15
    • 2019-12-11
    • 1970-01-01
    • 2022-01-24
    • 2019-05-19
    相关资源
    最近更新 更多