AWS同账户不同地域资源访问(ses到lambda)

Posted

技术标签:

【中文标题】AWS同账户不同地域资源访问(ses到lambda)【英文标题】:AWS same account different region resource access (ses to lambda) 【发布时间】:2020-07-28 08:46:54 【问题描述】:

我进行了很多研究,但我不确定或不确定这是否可能,非常感谢您的帮助。

我想了解是否可以使用基于资源的策略进行跨区域资源访问,如果可以,那么在这种情况下如何操作。

用例:

同一账户不同地区

AWS SES 位于账户 A 和区域 us-east-1

AWS Lambda 函数位于账户 A 区域 eu-central-1

我要完成AWS SES触发AWS Lambda(同账户不同区域)


如果这是不可能的,那么您的解决方法将不胜感激,但理解这是这里的主要目的。

【问题讨论】:

【参考方案1】:

您似乎无法从 SES 触发跨区域 lambda

您选择的 Amazon SNS 主题必须与您用于接收电子邮件的 Amazon SES 终端节点位于同一 AWS 区域。

看 Lambda 操作 - Amazon Simple Email Service - AWS 文档 https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda.html

作为一种解决方法,请考虑使用基于 SQS 的订阅,将 Amazon SQS 队列订阅到目标区域中的 Amazon SNS 主题。

见https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-subscribe-queue-sns-topic.html

【讨论】:

如果你知道,我需要技术解释,我想了解我还测试了 SNS 与 lambda 跨区域通信,所以如果 SNS 可以访问,那么为什么不 SES ????我测试了这个 POC SES(AccountA RegionA) --> SNS (AccountA RegionA) --> Lambda (AccountA RegionB) 并且它有效,那么为什么 SES(AccountA RegionA) --> Lambda(AccountA RegionB) 无效。跨度> SES 服务有一些限制。不知道为什么这与跨区域触发器有关。

以上是关于AWS同账户不同地域资源访问(ses到lambda)的主要内容,如果未能解决你的问题,请参考以下文章

从不同账户部署 AWS Lambda

如何配置 AWS lambda 函数以对不同 aws 子账户中的 dynamodb 表执行 crud 操作?

如何将现有资源从不同的 AWS 账户导入 AWS CDK

另一个账户中来自 Lambda 的 AWS 跨账户 S3 PutObject

在 CodePipeline 中创建使用另一个 AWS 账户的资源的管道

AWS CloudFormation:如何为 Lambda 代码指定来自另一个 AWS 账户的存储桶?