Estoy trabajando en un proyecto VUE+Amplify, está casi terminado, pero cognito no ofrece verificación de duplicación de correo, así que tengo que hacerlo manualmente, como sabemos que AWS tiene algunos disparadores, estoy usando PreSignUp invocando una función Lambda, mi código es:
var AWS = require("aws-sdk"); const cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider(); exports.handler = function(event, context, callback) { var params = { UserPoolId: "us-east-1_xxxXXXxXX", AttributesToGet: ["email"] }; cognitoidentityserviceprovider.listUsers(params, (err, data) => { if (err) { console.log(err, err.stack); callback(err) // here is the error return } else { data.Users.forEach(function(usuario) { if(usuario.Attributes[0].Value == event.request.userAttributes.email){ return {}; } }); callback(event); } }); }pero no entiendo que estoy haciendo mal, vuelve la ejecucion lambda...
Object { code: "UserLambdaValidationException", name: "UserLambdaValidationException", message: "PreSignUp failed with error [object Object]." }¿Alguna idea?
Necesitas devolver el objeto del evento.
https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-sign-up.html