正确的AWS远程复制权限

时间:2014-10-28 13:24:59

标签: amazon-s3 amazon-iam s3cmd

我使用s3tools来同步服务器和s3存储桶上的文件。具体来说,我使用sync命令。但是,这无法正常工作,因为我无法找到分配给我已设置的用户的正确权限。几乎所有东西似乎都在工作,但我从s3cmd sync命令中得到一个错误," Remote Copy失败。"

这是我目前的政策:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "SomeSID",
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::mybucket"
      ]
    },
    {
        "Effect": "Allow",
        "Action": [
          "s3:ListBucket",
          "s3:PutObject",
          "s3:PutObjectAcl",
          "s3:DeleteObject"
        ],
        "Resource": [
          "arn:aws:s3:::mybucket/some/path",
          "arn:aws:s3:::mybucket/some/path/*"
        ]
    }
  ]
}

有谁知道我应该添加哪些权限才能使远程复制成为可能?

1 个答案:

答案 0 :(得分:1)

我测试了使用{strong> sync command 中提供的AWS Command Line Interface的权限。

此政策成功运作:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "SomeSID",
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:ListBucket",
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::mybucket",
        "arn:aws:s3:::mybucket/*"
      ]
    }
  ]
}

注意:s3:ListBucket操作适用于Bucket,而其他API调用适用于Object。