Created
March 1, 2017 16:12
-
-
Save nuxero/51a4ed43a3f880ab8bae4c79f5ab09d4 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var AES = require('crypto-js/aes'); | |
const password = process.env.PASSWORD; | |
function toHex(encrypted) { | |
var hex = ""; | |
for (var i = 0; i < encrypted.length; i++) { | |
hex += encrypted.charCodeAt(i).toString(16) | |
} | |
return hex; | |
} | |
exports.handler = function(event, context, cb) { | |
var encrypted = AES.encrypt(`${ event.userName }::${ Date.now() }`, password); | |
var hexEncrypted = toHex(encrypted.toString()); | |
var link = `https://www.example.com/recover-password/${ hexEncrypted }`; | |
var msj = "<p>" + | |
event.request.codeParameter + | |
"</p>"; | |
var msjConfirm = "<p>" + | |
event.request.codeParameter + | |
"</p>"; | |
console.log('userPoolId', event.userPoolId); | |
console.log('triggerSource', event.triggerSource); | |
console.log('userName', event.userName); | |
console.log('response', msj); | |
if (event.userPoolId === "poolId") { | |
// Identify why was this function invoked | |
if (event.triggerSource === "CustomMessage_ForgotPassword") { | |
// Ensure that your message contains event.request.codeParameter. This is the placeholder for code that will be sent | |
event.response.smsMessage = "Your confirmation code is " + event.request.codeParameter; | |
event.response.emailSubject = "Recover your password"; | |
event.response.emailMessage = msj; | |
} | |
if (event.triggerSource === "CustomMessage_SignUp" || event.triggerSource === "CustomMessage_ResendCode") { | |
event.response.smsMessage = "Your confirmation code is " + event.request.codeParameter; | |
event.response.emailSubject = "Confirm your account"; | |
event.response.emailMessage = msjConfirm; | |
} | |
// Create custom message for other events | |
} | |
console.log('response',event.response); | |
// Return result to Cognito | |
cb(null, event); | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment