如何在Amazon S3存储桶中的特定目录上仅允许PutObject权限

色狼毒

我正在尝试为Amazon IAM用户配置一项策略,该策略允许他们仅执行到s3存储桶的特定文件夹的上载。

编写如下策略时,我可以成功上传图像:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:Put*"
            ],
            "Resource": "*"
        }
    ]
}

我的上传功能(在带有浏览器端javascript aws-sdk的coffeescript中):

s3.putObject data, (err, data) =>
  if err
    console.log err
    console.log 'Error uploading data: ', data
  else
    console.log 'succesfully uploaded the image!'

但是,我想将权限范围限制为仅允许putObject,并且仅在特定目录中。我以为这项政策会奏效,但会引发403错误:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "s3:PutObject"
                ],
                "Resource": "arn:aws:s3:::my_bucket/example_directory"
            }
        ]
    }

我的政策中是否存在语法错误,还是我在做其他错误的事情?我对编写IAM策略还是陌生的。

更新

通过使以下代码在IAM模拟器中运行,我已经取得了一些进展,但是不幸的是,尽管我说应该允许放置对象,但是当我尝试实际上传时,它仍然会引发403错误。

模拟器通行证

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "s3:PutObject*"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Deny",
                "Action": [
                    "s3:PutObjectAcl*",
                    "s3:PutObjectVersionAcl*"
                ],
                "Resource": "*"
            }
        ]
    }
色狼毒

我终于得到这个工作正常,关键是,我不得不使用NotActionNotResourceDeny部分。

请参见以下代码:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject*"
            ],
            "Resource": [
                "arn:aws:s3:::mybucket/myfolder",
                "arn:aws:s3:::mybucket/myfolder/*"
            ]
        },
        {
            "Effect": "Deny",
            "NotAction": [
                "s3:PutObjectAcl*",
                "s3:PutObjectVersionAcl*"
            ],
            "NotResource": [
                "arn:aws:s3:::mybucket/myfolder",
                "arn:aws:s3:::mybucket/myfolder/*"
            ]
        }
    ]
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Amazon S3存储桶上设置公共只读访问权限?

来自分类Dev

我如何在Amazon S3中更改存储桶的策略条件

来自分类Dev

如何在Amazon S3存储桶中创建新文件夹?

来自分类Dev

Amazon S3存储桶策略,允许用户写入存储桶,但仅限该存储桶

来自分类Dev

撤销 Amazon S3 存储桶或对象权限

来自分类Dev

如何在Amazon S3上安全存储图像

来自分类Dev

如何将Amazon S3存储桶安装到FreeBSD上的目录?

来自分类Dev

S3:如何授予对多个存储桶的访问权限?

来自分类Dev

如何使用通配符搜索Amazon S3存储桶?

来自分类Dev

您如何全文搜索amazon s3存储桶?

来自分类Dev

如何使用IAM策略AWS仅向S3存储桶的根帐户用户授予访问权限?

来自分类Dev

AWS IAM策略:如何更改AWSLambdaFullAccess策略以仅允许访问一个S3存储桶?

来自分类Dev

Amazon S3 boto3如何遍历存储桶中的对象?

来自分类Dev

如何使用C#压缩AWS S3存储桶中的目录

来自分类Dev

Amazon S3中的最佳存储桶数

来自分类Dev

无法替换Amazon S3存储桶中的文件

来自分类Dev

Amazon S3在版本存储桶中管理文件

来自分类Dev

在Amazon S3存储桶中安装MeteorJS

来自分类Dev

如何在MySQL中存储图像并链接到Amazon S3中的照片?

来自分类Dev

如何使用Terraform在Amazon S3存储桶中创建文件夹

来自分类Dev

Amazon S3:如何获取存储桶中的文件夹列表?

来自分类Dev

Amazon S3存储桶-文件是完全公开的,但是如何限制只允许预签名的请求?

来自分类Dev

Amazon S3安全存储桶

来自分类Dev

Amazon S3存储桶的Favicon

来自分类Dev

Android Amazon S3存储桶

来自分类Dev

Android Amazon S3存储桶

来自分类Dev

将PutObject放入目录Amazon s3 / PHP

来自分类Dev

如何将Amazon S3存储桶中的javascript连接到Amazon时间服务器?

来自分类Dev

尝试设置Amazon的S3存储桶:403禁止的错误和设置权限

Related 相关文章

  1. 1

    如何在Amazon S3存储桶上设置公共只读访问权限?

  2. 2

    我如何在Amazon S3中更改存储桶的策略条件

  3. 3

    如何在Amazon S3存储桶中创建新文件夹?

  4. 4

    Amazon S3存储桶策略,允许用户写入存储桶,但仅限该存储桶

  5. 5

    撤销 Amazon S3 存储桶或对象权限

  6. 6

    如何在Amazon S3上安全存储图像

  7. 7

    如何将Amazon S3存储桶安装到FreeBSD上的目录?

  8. 8

    S3:如何授予对多个存储桶的访问权限?

  9. 9

    如何使用通配符搜索Amazon S3存储桶?

  10. 10

    您如何全文搜索amazon s3存储桶?

  11. 11

    如何使用IAM策略AWS仅向S3存储桶的根帐户用户授予访问权限?

  12. 12

    AWS IAM策略:如何更改AWSLambdaFullAccess策略以仅允许访问一个S3存储桶?

  13. 13

    Amazon S3 boto3如何遍历存储桶中的对象?

  14. 14

    如何使用C#压缩AWS S3存储桶中的目录

  15. 15

    Amazon S3中的最佳存储桶数

  16. 16

    无法替换Amazon S3存储桶中的文件

  17. 17

    Amazon S3在版本存储桶中管理文件

  18. 18

    在Amazon S3存储桶中安装MeteorJS

  19. 19

    如何在MySQL中存储图像并链接到Amazon S3中的照片?

  20. 20

    如何使用Terraform在Amazon S3存储桶中创建文件夹

  21. 21

    Amazon S3:如何获取存储桶中的文件夹列表?

  22. 22

    Amazon S3存储桶-文件是完全公开的,但是如何限制只允许预签名的请求?

  23. 23

    Amazon S3安全存储桶

  24. 24

    Amazon S3存储桶的Favicon

  25. 25

    Android Amazon S3存储桶

  26. 26

    Android Amazon S3存储桶

  27. 27

    将PutObject放入目录Amazon s3 / PHP

  28. 28

    如何将Amazon S3存储桶中的javascript连接到Amazon时间服务器?

  29. 29

    尝试设置Amazon的S3存储桶:403禁止的错误和设置权限

热门标签

归档