0

我有一个带有策略的 s3 存储桶

{
    "Version": "2008-10-17",
    "Id": "Policy1412967758094",
    "Statement": [
        {
            "Sid": "Stmt1412967757168",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::bucketname/*"
        }
    ]
}

一个cors配置

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
    </CORSRule>
</CORSConfiguration>

我和经过身份验证的用户的完全权限。

我之前使用过这些权限(通常只是策略上的 getObject)来设置存储桶以提供网站静态资产。当我通过 GUI 将文件上传到这些存储桶时,一切正常,我可以通过右键单击打开来查看图像。

但是,使用 s3cmd 和我的密钥和访问密钥与 s3cmd 同步,没有权限附加到存储桶内的文件。我无法查看或打开它们。

我错过了什么?

4

1 回答 1

0

我不确定您为什么要为 Authenticated Users 设置访问权限......具有您配置的存储桶策略的Authenticated Users 将与所有S3 用户共享存储桶,而不仅仅是您的 IAM 账户。

但是,对于您的 ACL 问题,您可以使用 s3cmd....通过--acl-private在命令中指定将所有者设置为完全控制来指定 ACL。

您也可以尝试AWS CLI ...有一个高级 aws s3 命​​令集,其中包含 ls、mv、cp、rm、sync 等。执行“ aws cmd help”以查看所有选项。Plus 语法跨平台是一致的。

于 2014-10-11T02:39:07.727 回答