Я использую AWS Cognito для аутентификации в веб-приложении.
Если пользователь забывает свой пароль, у меня есть лямбда-функция Trigger, которая отправляет пользовательское электронное письмо со ссылкой, в которой есть адрес электронной почты пользователя и код подтверждения, чтобы они могли щелкнуть ссылку и просто ввести свой новый пароль.
Итак, есть новое требование, которое должно позволять пользователю получать смс, но в настоящее время похоже, что если вы включите MFA для отправки SMS, вы можете настроить сообщение только в области консоли и в функции Lambda,
это event.response.smsMessage
, похоже, ничего не делает.
Таким образом, если у пользователя есть phone_number_verified
true
, он отправляет смс без запуска функции Lambda.
exports.handler = function(event, context) {
if(event.triggerSource === "CustomMessage_ForgotPassword") {
var url = 'http://myurl.com/forgotpassword/'+ event.request.userAttributes.email+'/'+event.request.codeParameter
event.response.smsMessage = 'Password Reset: Click the link ' + url + ' or enter Verification Code: ' + event.request.codeParameter
event.response.emailSubject = " Password reset";
event.response.emailMessage = "Custom HTML goes here";
}
context.done(null, event);
};
В настоящее время это лямбда-функция, настроенная для пользовательского триггера сообщений в пуле пользователя cognito.