Car*_*l G 7 amazon-ses amazon-vpc aws-lambda
自 2020 年 4 月起,AWS 支持 SES(简单电子邮件服务)的 VPC 终端节点。尽管如此,我还是无法使用该终端节点让 Lambda 与 SES 进行通信。它总是超时。也许这是因为 SES VPC Endpoints 仅支持 VPC 中的 EC2 实例,而不支持 Lambdas?
我使用 Terraform 描述了我的基础设施,如本要点中所述。 ses_lambda.tf定义基础设施并基本实现本指南。 sesTest.js是我的 Lambda 函数。terraform-show.out显示terraform show只限于由 定义的资源的结果ses_lambda.tf。
正如您在 中看到的ses_lambda.tf,SES 端点的安全组允许来自 VPC 的 CIDR 块中任何 IP 的任何 SMTP 端口(25、465、587、2465 或 2587)上的所有流量。所以我很困惑为什么这不起作用......
看起来 SES VPC 端点是 SMTP 端点而不是 SES API 端点。该指南没有明确说明,但确实提到了 SMTP 端口和端点。
我创建了一个端点,它生成的私有 DNS 名称是 email-smtp.us-east-1.amazonaws.com (SMTP)。SDK 尝试连接到 email.us-east-1.amazonaws.com (SES API)。
看来解决方案是使用 SMTP 或设置 NAT 网关。
更新:确认 SMTP 在 Lambda 中的 SES VPC 端点上工作(如预期)。
当我听到 AWS 超时问题时,我首先检查的始终是 IAM。Lambda 函数是否具有 IAM 策略和执行角色来授予访问您账户中的 SES 的适当权限?
https://aws.amazon.com/premiumsupport/knowledge-center/lambda-send-email-ses/
| 归档时间: |
|
| 查看次数: |
1332 次 |
| 最近记录: |