使用CDK进行跨帐户SNS Lambda订阅

Fileyfood500

我有2个AWS CDK应用程序在单独的AWS账户中运行,并且我试图添加CDK以在一个AWS账户中获取lambda以便订阅另一个AWS账户中的通知。

我尝试在lambda帐户中添加订阅,但这没有用,因为SNS帐户未授予权限。

SNS帐户中的CDK:

val myTopic = Topic(this, "my-topic-id", TopicProps.builder()
            .displayName("topicName")
            .topicName("topicName")
            .build())

Lambda帐户中的CDK:

val myLambda = Function(...)

val crossAccountTopic = Topic.fromTopicArn(this, "topic-id", "arn:aws:sns:<region>:<accountId>:topicName")

crossAccountTopic.addSubscription(LambdaSubscription(myLambda))

有没有人尝试过这样的事情?是否可以通过两个帐户中的CDK更改完全授予访问权限?还是需要手动操作?可以通过IAM角色授予访问权限来实现此目的,因此我将对此进行进一步调查。

Fileyfood500

是的,您可以通过CDK在两个帐户中授予访问权限。首先,您必须在提供的帐户中授予访问权限,然后部署CDK / cloudformation堆栈。然后,您可以在客户帐户中授予访问权限。

SNS帐户中的CDK:

val myTopic = Topic(this, "my-topic-id", TopicProps.builder()
        .displayName("topicName")
        .topicName("topicName")
        .build())
PolicyStatement snsAccessPolicy = PolicyStatement.Builder.create()
            .principals(listOf(AccountPrincipal("123456346")))
            .actions(Arrays.asList("SNS:Subscribe"))
            .resources(Arrays.asList(myTopic.getTopicArn()))
            .build();
myTopic.addToResourcePolicy(snsAccessPolicy);

Lambda帐户中的CDK:

val myLambda = Function(...)

val crossAccountTopic = Topic.fromTopicArn(this, "topic-id", "arn:aws:sns:<region>:<accountId>:topicName")

crossAccountTopic.addSubscription(LambdaSubscription(myLambda))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

AWS Lambda CDK不会生成SNS主题和订阅

来自分类Dev

CloudWatch订阅过滤器:使用lambda或直接订阅

来自分类Dev

使用 AWS Lambda 函数订阅 Amazon SNS 主题?

来自分类Dev

使用AWS cdk(typescript)将sqs队列订阅到另一个帐户中的sns主题

来自分类Dev

当订阅费用失败时使用 Lambda 函数进行条纹 webhook

来自分类Dev

订阅的SNS消息很大时不调用AWS Lambda

来自分类Dev

AWS SNS订阅与Lambda函数上的触发器的比较?

来自分类Dev

仅在处理相同主题的SQS订阅后才调用AWS Lambda SNS事件

来自分类Dev

AWS-在SNS订阅或Lambda函数上设置死信队列有什么区别?

来自分类Dev

如何使用Gmail帐户进行SSRS电子邮件订阅

来自分类Dev

为什么不能使用Lambda表达式取消订阅事件?

来自分类Dev

如何使用Python中的AWS CDK创建包含两个属性的SNS订阅过滤器?

来自分类Dev

从Lambda跨帐户调用CloudFormation API

来自分类Dev

AWS lambda 云观察订阅

来自分类Dev

使用服务帐户进行跨项目管理

来自分类Dev

SNS-> Lambda订阅在通过API设置时不起作用,但是在通过管理控制台设置时起作用

来自分类Dev

使用Braintree进行iOS订阅

来自分类Dev

AWS无法订阅SNS主题:CognitoIdentityCredentials无权执行:SNS:订阅

来自分类Dev

使用由Lambda函数支持的API网关,该函数使用SNS在微服务之间进行通信

来自分类Dev

如何取消订阅此 lambda 事件?

来自分类Dev

跨平台定期应用订阅

来自分类Dev

Azure订阅ID与帐户ID

来自分类Dev

Amazon SNS到SQS-使用.NET SDK确认订阅

来自分类Dev

使用 Powershell 跨订阅移动特定 Azure 资源

来自分类Dev

AWS S3使用AWS Lambda跨多个帐户复制并触发内部Lambda复制到其他存储桶

来自分类Dev

在React中使用ApolloClient进行AppSync订阅

来自分类Dev

使用AWS CDK配置Lambda Warmer

来自分类Dev

使用CDK而非Sam在本地调试Lambda

来自分类Dev

使用CombineLatest订阅valueChanges

Related 相关文章

  1. 1

    AWS Lambda CDK不会生成SNS主题和订阅

  2. 2

    CloudWatch订阅过滤器:使用lambda或直接订阅

  3. 3

    使用 AWS Lambda 函数订阅 Amazon SNS 主题?

  4. 4

    使用AWS cdk(typescript)将sqs队列订阅到另一个帐户中的sns主题

  5. 5

    当订阅费用失败时使用 Lambda 函数进行条纹 webhook

  6. 6

    订阅的SNS消息很大时不调用AWS Lambda

  7. 7

    AWS SNS订阅与Lambda函数上的触发器的比较?

  8. 8

    仅在处理相同主题的SQS订阅后才调用AWS Lambda SNS事件

  9. 9

    AWS-在SNS订阅或Lambda函数上设置死信队列有什么区别?

  10. 10

    如何使用Gmail帐户进行SSRS电子邮件订阅

  11. 11

    为什么不能使用Lambda表达式取消订阅事件?

  12. 12

    如何使用Python中的AWS CDK创建包含两个属性的SNS订阅过滤器?

  13. 13

    从Lambda跨帐户调用CloudFormation API

  14. 14

    AWS lambda 云观察订阅

  15. 15

    使用服务帐户进行跨项目管理

  16. 16

    SNS-> Lambda订阅在通过API设置时不起作用,但是在通过管理控制台设置时起作用

  17. 17

    使用Braintree进行iOS订阅

  18. 18

    AWS无法订阅SNS主题:CognitoIdentityCredentials无权执行:SNS:订阅

  19. 19

    使用由Lambda函数支持的API网关,该函数使用SNS在微服务之间进行通信

  20. 20

    如何取消订阅此 lambda 事件?

  21. 21

    跨平台定期应用订阅

  22. 22

    Azure订阅ID与帐户ID

  23. 23

    Amazon SNS到SQS-使用.NET SDK确认订阅

  24. 24

    使用 Powershell 跨订阅移动特定 Azure 资源

  25. 25

    AWS S3使用AWS Lambda跨多个帐户复制并触发内部Lambda复制到其他存储桶

  26. 26

    在React中使用ApolloClient进行AppSync订阅

  27. 27

    使用AWS CDK配置Lambda Warmer

  28. 28

    使用CDK而非Sam在本地调试Lambda

  29. 29

    使用CombineLatest订阅valueChanges

热门标签

归档