AWS sam SES sendEmail возвращает InvalidClientTokenId (nodejs / lambda)

надеюсь, вы можете мне помочь с этим:

Я использую AWS sam для создания API-шлюза AWS с nodejs. пока все работает нормально, но когда я пытался отправлять электронные письма через AWS SES, я получаю следующую ошибку:

ERROR Invoke Error {«errorType»:»InvalidClientTokenId»,»errorMessage»:»The security token included in the request is invalid.»,»code»:»InvalidClientTokenId»,»message»:»The security token included in the request is invalid.»

я использую следующий код:

const AWS = require(«aws-sdk»); const SESConfig = { accessKeyId: process.env.AWS_ACCESS_KEY_ID_SES, secretAccesskey: process.env.AWS_SECRET_ACCESS_KEY_SES, apiVersion: «2010-12-01», region: process.env.AWS_REGION }; var params = { Destination: { ToAddresses: [ userDataObject.email ] }, Message: { Body: { Html: { Charset: «UTF-8», Data: «This message body contains HTML formatting. It can, for example, contain links like this one: <a class=»ulink» href=»https://docs.aws.amazon.com/ses/latest/DeveloperGuide» target=»_blank»>Amazon SES Developer Guide</a>.» }, Text: { Charset: «UTF-8», Data: «This is the message body in text format.» } }, Subject: { Charset: «UTF-8», Data: «Test email» } }, ReplyToAddresses: [ ], ReturnPath: «», ReturnPathArn: «», Source: «[email protected]», SourceArn: «» }; await new AWS.SES(SESConfig).sendEmail(params).promise().then((response) => { console.log(response); })

  • Я дважды проверил, что токены для пользователя IAM в порядке и не содержат специальных символов.
  • Я также проверил, что учетная запись SES не находится в режиме песочницы.
  • Я проверил, что переменные в SESConfig действительно доступны для чтения и содержат необходимые данные.
  • Я попытался использовать полный доступ SES для политики пользователей. Я также пробовал с полными правами администратора
  • aws-sdk обычно работает в этом проекте: я могу загружать данные, например, в s3
  • отправка электронной почты через smtp с помощью nodemailer, вероятно, сработает, но я не пробовал этого, потому что я действительно хочу опробовать aws-sdk

Я был бы очень рад, если бы кто-нибудь мог указать, делаю ли я что-то не так в целом или у кого-то есть представление о том, что я могу попытаться решить эту проблему

Источник: ledsshop.ru

Стиль жизни - Здоровье!