AWS 创建仅具有 S3 权限的用户

时间:2021-04-13 13:37:42

标签: amazon-s3

我知道如何通过 AWS Console en IAM 创建用户,但我想知道我应该在哪里或如何为该用户设置权限,以便他只能:

  • 将文件上传/删除到特定 S3 存储桶中的特定文件夹

我有这个桶:

enter image description here

所以我想知道是不是一定要在那个界面设置权限,还是直接在IAM服务的用户里面设置权限

我正在使用此政策在那里创建一个群组:

enter image description here

但是对于“写入”和“读取”有很多策略,我只需要哪些策略来写入/读取特定存储桶中的文件?

编辑:目前我有这个政策:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:ListBucket",
                "s3:DeleteObject"
            ],
            "Resource": "arn:aws:s3:::static.XXXXXX.com/images/carousel/*",
            "Condition": {
                "BoolIfExists": {
                    "aws:MultiFactorAuthPresent": "true"
                }
            }
        }
    ]
}

我想知道这是否足以:

  • 登录 AWS 控制台
  • 转到 S3 存储桶并删除/读取我想要的存储桶文件夹中的对象

2 个答案:

答案 0 :(得分:1)

您可以为获得自定义策略 (Doc) 的用户附加角色。

您可以在那里选择服务、要允许的操作以及列入白名单的资源。

答案 1 :(得分:0)

您可以使用附加到 S3 的基于资源的策略或附加到 IAM 用户、组或角色的基于身份的策略。

Identity-based policies and resource-based policies

您可以将以下身份策略附加到用户,以将文件上传/删除到特定 S3 存储桶中的特定文件夹。

{
"Version": "2012-10-17",
"Statement": [
    {
        "Sid": "VisualEditor0",
        "Effect": "Allow",
        "Action": [
            "s3:PutObject",
            "s3:DeleteObject"
        ],
        "Resource": "arn:aws:s3:::SAMPLE-BUCKET-NAME/foldername"
    }
]

}

有关详细信息,请参阅Grant Access to User-Specific Folders in an Amazon S3 Bucket