【发布时间】:2017-01-31 05:29:56
【问题描述】:
为了将消息放入 SQS 队列并获得连接,我们需要有一个帐户/用户的密钥。
我想向两个队列提供消息,这两个队列在两个不同的 AWS 账户中可用。我怎样才能做到这一点?据我了解,我们只能设置一个访问/密钥凭证,因此我们无法与两个不同 AWS 账户中可用的两个队列交谈。
任何帮助将不胜感激。谢谢!
【问题讨论】:
标签: amazon-web-services aws-sdk amazon-sqs aws-java-sdk
为了将消息放入 SQS 队列并获得连接,我们需要有一个帐户/用户的密钥。
我想向两个队列提供消息,这两个队列在两个不同的 AWS 账户中可用。我怎样才能做到这一点?据我了解,我们只能设置一个访问/密钥凭证,因此我们无法与两个不同 AWS 账户中可用的两个队列交谈。
任何帮助将不胜感激。谢谢!
【问题讨论】:
标签: amazon-web-services aws-sdk amazon-sqs aws-java-sdk
您可以使用来自一个账户(“账户 A”)的凭证对 不同账户(“账户 B”)中的 Amazon SQS 队列进行 API 调用。
只需将策略添加到目标帐户(帐户 B)中的 SQS 队列。这是来自Using Identity-Based Policies (IAM) Policies for Amazon SQS 文档的示例策略:
以下示例策略为美国东部(俄亥俄)区域中名为 444455556666/queue1 的队列授予 AWS 帐号 111122223333
SendMessage权限。
{
"Version": "2012-10-17",
"Id": "Queue1_Policy_UUID",
"Statement": [
{
"Sid":"Queue1_SendMessage",
"Effect": "Allow",
"Principal": {
"AWS": "111122223333"
},
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-east-2:444455556666:queue1"
}
]
}
【讨论】: