我有一个AWS SQS队列,其权限策略如下所示:
{
"Version": "2012-10-17",
"Id": "arn:aws:sqs:us-east-1:123123123:default_staging/SQSDefaultPolicy",
"Statement": [
{
"Sid": "Sid123123123123",
"Effect": "Allow",
"Principal": {
"AWS": "123123123123"
},
"Action": "SQS:*",
"Resource": "arn:aws:sqs:us-east-1:123123123123123:default_staging"
}
]
}
不幸的是,我无法从我位于不同地区的AWS服务器向default_staging
队列添加消息。
如果我将权限政策设置为大开,我可以从我的其他区域向default_staging
添加邮件。
如何调整我的政策以允许我所有地区的SQS:*
行动?
答案 0 :(得分:14)
通过正确的SQS
权限以及您需要提供给IAM
的{{1}}权限,可以跨地区共享SQS URL
。
您可以在此处找到有关Queue and Message Identifiers的更多信息。
这是一个策略示例,可以应用于队列,为该队列提供名为AWS SDK
权限的IAM用户:
SQSUser
这是重要的部分:
{
"Version": "2012-10-17",
"Id": "arn:aws:sqs:us-east-1:123123123123:default_staging/SQSDefaultPolicy",
"Statement": [
{
"Sid": "Sid89345945989988",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::123123123123:user/SQSUser"
},
"Action": "SQS:*",
"Resource": "arn:aws:sqs:us-east-1:123123123123:default_staging"
}
]
}