我使用adminCreateUser创建了用户。尝试使用adminInitiateAuth进行身份验证时,将返回质询NEW_PASSWORD_REQUIRED
。如何更改密码?
我正在尝试使用以下代码段为状态为FORCE_CHANGE_PASSWORD
的用户重置用户密码:
cognitoidentityserviceprovider.respondToAuthChallenge({
ChallengeName: 'NEW_PASSWORD_REQUIRED',
ClientId:'XXXXXXXXXXXXXXXXXXXX',
ChallengeResponses: {
NEW_PASSWORD: 'T.YpkKu487',
USERNAME: 'XXXXX'
},
Session: "cMcKC5ymFvZG2D10lJMRArpfmLZvnQE25P1XjwkHtl47g4kW-LAjOgB4CAjIgv1CurDmfRHpxzvYgYE61BBrp5-TNyVQcXXX"
}, (err, data) => {
if(err) console.log(err);
else console.log(data);
});
运行上述代码时,出现以下错误:
InvalidParameterException: Invalid attributes given, name is missing
我不明白。为什么会出现此错误? Reference doc
还有,我有办法完全禁用此挑战吗?
找到了解决方案:创建用户池时,我添加了名称和电子邮件作为必需属性,无需属性名称即可解决创建它。