gpt4 book ai didi

amazon-web-services - 如何使用boto3通过另一个帐户的SQS订阅一个帐户的SNS主题?

转载 作者:行者123 更新时间:2023-12-04 08:10:10 24 4
gpt4 key购买 nike

我正在尝试在一个帐户中创建一个 SNS 主题并将其附加到配置规则。
我有 3 个这样的帐户,想在每个帐户中创建 SNS 主题。
现在我想通过第四个帐户的 SQS 订阅 3 个不同帐户的所有 3 个主题。

我可以手动完成。有人可以告诉我如何通过 boto3 完成它。

提前致谢。

最佳答案

为了使用 boto3 由账户 B 中存在的 SQS 订阅账户 A 中存在的 SNS 主题,以下是过程。

在账户 A 中,创建 SNS 主题并添加适当的权限。
例如,

import boto3
sns_client = boto3.clien('sns')
topics = sns_client.create_topic(Name='SNS topic name')
sns_client.add_permission(
TopicArn=str(topics['TopicArn']),
Label=label,
AWSAccountId=[
"AccountB_Id",
],
ActionName=[
"GetTopicAttributes",
"SetTopicAttributes",
"AddPermission",
"RemovePermission",
"DeleteTopic",
"Subscribe",
"ListSubscriptionsByTopic",
"Publish",
"Receive"
]
)

现在要从帐户 B 订阅创建的主题,请从帐户 B 执行以下代码。
import boto3
subscription_client = boto3.client('sns')
subscription_client.subscribe(
TopicArn="ARN of the topic created",
Protocol="sqs",
Endpoint="ARN of the SQS present in Account B"
)

现在您将看到帐户 A 的 SNS 主题已被帐户 B 订阅。

关于amazon-web-services - 如何使用boto3通过另一个帐户的SQS订阅一个帐户的SNS主题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46681508/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com