Verified SES entity (out of sandbox), unable to send production e-mails on deployed website (amplify). Works fully in local dev env. AWS-SDK NodeJS

0

Hello,

I've searched on re:Post but could not find a similar case. I am using AWS-SDK together with NodeJS to send automated mails upon form submit on my website. The e-mail address and domain are verified and out of sandbox. The mailing works when I execute in development mode locally, but not online on production. I have ensured that the env variables are included on Amplify. The code prior to sending the SendMail:

  let AWS = require("aws-sdk");

  AWS.config.update({
    accessKeyId: process.env.KEY_ID,
    secretAccessKey: process.env.KEY_SECRET,
    region: process.env.REGION_ID,
  });

I have applied the ses:Sendmail allow policy in IAM to the user linked to above key/secret. Am I missing something? The shared credentials file is not needed for deployed production if I have the above .config.update right? The policy:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "ses:SendRawEmail",
                "ses:SendEmail"
            ],
            "Resource": "*"
        }
    ]
}

Thank you so much.

1回答
0
承認された回答

I solved it.. in a different way. Responding to this in case anybody has a similar issue. I was not able to get it working using NodeJS directly. I made a lambda function that gets triggered with an API gateway. The button on the website sends a call to the API route which in turn triggers the lambda function with the same code as above. This way it worked and actually separated the mailing functionality nicely from the website.

回答済み 2年前
profile picture
エキスパート
レビュー済み 1ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ