Я использую AWS Cognito Javascript SDK в приложении реагирования. У меня есть пользователь, который был создан в консоли AWS администратором. Пользователь получает электронное письмо со своим именем пользователя и временным паролем. Теперь, основываясь на моем понимании, мне нужно пройти через поток newPasswordRequired, но я боролся с этим уже несколько часов, пробуя несколько разных подходов, и ни один из них никуда меня не привел. Когда я проверяю Консоль AWS, для пользователя в пуле пользователей устанавливается значение FORCE_CHANGE_PASSWORD.
Вот мой код в его текущем состоянии. Пожалуйста, если кто-то может помочь мне решить этот процесс, так как я довольно плохо знаком с использованием аутентификации Cognito.
function setNewPassword(data) {
console.log("data \n", data)
var authenticationData = {
Username: data.username,
Password: data.temp_password
};
var authenticationDetails = new AmazonCognitoIdentity.AuthenticationDetails(
authenticationData
);
var userPool = new AmazonCognitoIdentity.CognitoUserPool(config.cognito);
var userData = {
Username: data.username,
Pool: userPool
};
var cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);
return new Promise(function(resolve, reject) {
cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function(result) {
resolve(resolve);
},
onFailure: function(err) {
reject(err);
},
newPasswordRequired: function(userAttributes, requiredAttributes) {
this.cognitoUser.completeNewPasswordChallenge(newPassword, attributesData, this)
}
});
});
}
В консоли браузера появляется следующая ошибка:
{code: "UnknownError", message: "Unkown error"}