【问题标题】:AWS-CLI - SQS List QueuesAWS-CLI - SQS 列表队列
【发布时间】:2017-02-06 17:38:37
【问题描述】:

我有一个 IAM 用户策略,该策略是为从特定 SQS 队列发送和接收消息而创建的。使用 AWS CLI 并发出 list-queues 命令时出现错误:

An error occurred (AccessDenied) when calling the ListQueues operation: Access to the resource https://queue.amazonaws.com/ is denied.

我对 IAM 用户有一个自定义策略来指定权限,如下所示:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1485992560000",
            "Effect": "Allow",
            "Action": [
                "sqs:ReceiveMessage",
                "sqs:SendMessage",
                "sqs:ListQueues"
            ],
            "Resource": [
                "arn:aws:sqs:us-east-1:XXXX:TestQueue"
            ]
        }
    ]
}

有了这个策略,我已经验证我可以使用 AWS CLI 从这个队列发送和接收消息。如果我修改用户的权限并添加一个语句,其中 Action 是 sqs:ListQueues 并且 Resource 是 "*",则使用 AWS CLI 的 list-queues 命令会在响应中返回 TestQueue 的 url。

我认为list-queue 应该只返回 IAM 用户已被授予该操作的队列是错误的吗?

欢迎任何指导/建议!谢谢!

【问题讨论】:

    标签: amazon-web-services amazon-sqs


    【解决方案1】:

    sqs:ListQueues 等命令的资源不能受到限制。它们必须具有* 的资源规范。这也意味着您不能限制返回值:它们将始终返回所有队列,即使用户无法对其执行操作。

    这与其他“列表”类型方法的行为类似,例如ec2:DescribeInstances 等。

    【讨论】:

      猜你喜欢
      • 2016-08-18
      • 1970-01-01
      • 1970-01-01
      • 2016-04-13
      • 2017-06-08
      • 1970-01-01
      • 1970-01-01
      • 2018-09-24
      • 1970-01-01
      相关资源
      最近更新 更多