【发布时间】:2020-04-23 06:56:51
【问题描述】:
我正在使用以下策略在账户 A 中创建一个 SNS 主题:
{
"Sid": "Give Access to Different Account Queues to subscribe to my topic",
"Effect": "Allow",
"Principal":{
"AWS": "AccountId of Account B"
},
"Action": "sns:Subscribe",
"Resource": "Arn of my SNS topic present in Account A",
"Condition": {
"StringEquals": {
"sns:Protocol": "sqs"
},
"ForAllValues:StringEquals": {
"sns:Endpoint": [
"Arn of Queue A present in Account B", "Arn Queue B present in Account B"
]
}
}
}
在帐户 A 中创建上述主题和策略后。然后,我通过控制台登录帐户 B 并尝试将队列 C 订阅到我的 SNS 主题,然后订阅也成功并且队列正在收到确认订阅的消息!但理想情况下,在上述策略之后,只有队列 A 和队列 B 应该能够订阅 My SNS 主题。
【问题讨论】:
-
我想知道是否是因为请求订阅的用户有额外的
sns:策略与他们的 IAM 用户相关联?您可以使用没有sns:权限的 IAM 用户重试。如何请求订阅? -
@JohnRotenstein 我正在使用 Cloud Formation 中的 subscriptionFilter 资源来订阅我的 SNS。该帐户也是根帐户
-
如果SNS主题在Account-A,你是说Account-A中的任意队列都可以订阅,还是其他账号(Account-B)中的任意队列都可以订阅?
-
如果话题在账户A,我们在账户B有两个队列!那么只有这两个队列可以订阅我的主题 A。
-
但是在你的问题中你说“任何队列都能够从那个帐户订阅我的SNS主题”。我在问哪个帐户?有 SNS 的那个,还是“其他”帐户?
标签: amazon-web-services cloud amazon-iam amazon-sqs amazon-sns