为filepicker.io设置S3

时间:2013-06-17 09:08:56

标签: filepicker.io

虽然我很确定我在filepicker.io网站上提供的视频中完全按照所做的一切,但测试我的S3设置只会出现错误。

  

上传时出错:自定义S3尚未开启。也许检查ID,密钥和存储桶是否都已指定?请检查您的设置,然后重试

我已经仔细检查过“S3 Access Key ID”和“S3 Secret Access Key”和“S3 Bucket”是否正确。我甚至创造了一个新的水桶并再次尝试,但无济于事。 以下是我为filepicker用户生成的策略:

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

它与filepicker.io s3 help page上发布的内容略有不同,但我不知道如何消除这些差异以及是否重要。

如果有人提示如何解决这个问题,我将不胜感激。

提前致谢 菲姆船长

1 个答案:

答案 0 :(得分:2)

您的AWS安全策略肯定是错误的 - 您需要允许PutObjectACL操作。 Filepicker为其上传的每个对象设置ACL。如果要使用filepicker删除上传的文件,还需要允许DeleteObject操作。

您可以在 AWS控制台中修改AWS安全策略。得到服务 - > IAM - >用户并选择您的filepicker用户。然后选择权限标签,选择您正在使用的政策,然后点击管理政策。然后,您可以手动编辑策略并应用更改。

这就是我的政策:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:DeleteObject",
        "s3:GetObject",
        "s3:PutObject",
        "s3:PutObjectAcl"
      ],
      "Sid": "Stmt1370702252000",
      "Resource": [
        "arn:aws:s3:::<my bucket name here>/*"
      ],
      "Effect": "Allow"
    }
  ]
}

在filepicke的S3设置页面上有一个测试S3设置按钮,该按钮可能也很有用。