Не получаю письма с забытым паролем после admin_create_user - PullRequest
1 голос
/ 18 марта 2020

У меня есть проблема, которой я уже несколько дней занимаюсь.

Я создаю нового пользователя через Lambda в Cognito программным способом с помощью команды admin_create_user(). Пользовательский статус после создания устанавливается на FORCE_CHANGE_PASSWORD с помощью Cognito. Здесь начинается проблема.

Недавно созданному пользователю отправляется электронное письмо с временным паролем. Поэтому я подумал, что пользователь должен войти в систему как обычно, после чего он / она будет вынужден сбросить (забыть) пароль. Поэтому я вызываю команду forgot_password().

В журналах выводится следующее:

START RequestId: версия: $ LATEST

[INFO] 2020-03- 17T21: 58: 46.172Z ПОЛУЧИЛ СЛЕДУЮЩИЙ АДРЕС ЭЛЕКТРОННОЙ ПОЧТЫ: myemailaddress+testuser@gmail.com

[INFO] 2020-03-17T21: 58: 46.516Z ОТВЕТ ЗАПРОСА FORGOT_PASSWORD: {'CodeDeliveryDetails': {'Destination': 'm ***@g***.com ',' DeliveryMedium ':' EMAIL ',' AttributeName ':' email '},' ResponseMetadata ': {' RequestId ':' ',' HTTPStatusCode ': 200,' HTTPHeaders ' : {'date': 'Вт, 17 марта 2020 г. 21:58:46 GMT', 'content-type': 'application / x-amz- json -1.1', 'content-length': '104', 'connection': 'keep-alive', 'x-amzn-Requesttid': '},' RetryAttempts ': 0}}

END RequestId:

REPORT RequestId: Продолжительность: 359,45 мс Продолжительность счета: 400 мс. Размер памяти: 128 МБ. Макс. Используемая память: 78 МБ. Продолжительность инициализации: 302.80 мс

Мне кажется, что Lambda успешно выполнила вызов Cognito forgot_password(). Cognito был настроен на отправку электронных писем через SES с полностью проверенной настройкой доменного имени, включая SPF и DKIM (все отображаются зеленым цветом в консоли). У меня также есть темы о недоставке, жалобах и доставке.

Однако почему-то я так и не получил письмо. Я также не получаю отчет о доставке.

Сначала я подозревал, что проблема заключается в символе «+» в адресе электронной почты, но я тоже попытался использовать обычный адрес электронной почты, но безуспешно. Затем я подумал, что создание пользователя с admin_create_user() без подтверждения адреса электронной почты будет проблемой, но даже установка email_verified в True не будет иметь значения. Я также попытался установить метод электронной почты Cognito по умолчанию (поэтому SES не используется) с тем же результатом.

Я потерян. Ребята, есть ли у вас какие-либо советы, как я могу отследить это дальше?

Примечание. Клиентское приложение было настроено без секретного ключа, поэтому параметр SecretHa sh не требуется.

...