Jam*_*Lin 5 python amazon-web-services
在用户迁移期间,我想返回“用户名或密码不正确”。作为错误消息而不是“用户不存在”
已经在google上搜索了一段时间,找不到如何在本文档中复制以下JS示例
https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-migrate-user.html
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);
}
};
Run Code Online (Sandbox Code Playgroud)
它callback('message')在 nodejs 中使用,但我不知道如何在 Python 中做到这一点。
偶然发现这个问题
尝试返回消息字符串,但得到“用户迁移期间的异常”
所以我也尝试过提出例外':
raise Exception('Incorrect username or password')
Run Code Online (Sandbox Code Playgroud)
这仍然会在托管 UI 中出现“用户迁移期间出现异常”,但这适用于尊重错误消息的自定义登录 UI。
| 归档时间: |
|
| 查看次数: |
1128 次 |
| 最近记录: |