我想使用 AWS 控制台功能中的迁移用户 lambda 将用户从 userPool 1 迁移到 userPool 2。为了做到这一点,我使用了 AWS 提供的脚本,但我找不到例如如何使用 authenticateUser。执行时未定义。
执行迁移 lambda。未定义身份验证用户
我还尝试创建一个图层,成功导入并在我的 lambda 函数中设置该图层,但也无法使其正常工作。
exports.handler = (event, context, callback) => {
var user;
if ( event.triggerSource == "UserMigration_Authentication" ) {
// authenticate the user with your existing user directory service
user = authenticateUser(event.userName, event.request.password);
if ( user ) {
event.response.userAttributes = {
"email": user.emailAddress,
"email_verified": "true"
};
event.response.finalUserStatus = "CONFIRMED";
event.response.messageAction = "SUPPRESS";
context.succeed(event);
}
else {
// Return error to Amazon Cognito
callback("Bad password");
}
}
else if ( event.triggerSource == "UserMigration_ForgotPassword" ) {
// Lookup the user in your existing user directory service
user = lookupUser(event.userName);
if ( user ) {
event.response.userAttributes = {
"email": user.emailAddress,
// required to enable password-reset code to be sent to user
"email_verified": "true"
};
event.response.messageAction = "SUPPRESS";
context.succeed(event);
}
else {
// Return error to Amazon Cognito
callback("Bad password");
}
}
else {
// Return error to Amazon Cognito
callback("Bad triggerSource " + event.triggerSource);
}
};
未定义身份验证用户
我的问题是:我们如何导入这个函数?
非常感谢。