Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon s3 AWS仅创建具有S3权限的用户_Amazon S3 - Fatal编程技术网

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

Amazon s3 AWS仅创建具有S3权限的用户,amazon-s3,Amazon S3,我知道如何通过AWS控制台en IAM创建用户,但我想知道应该在何处或如何设置该用户的权限,以便他只能: 将文件上载/删除到特定S3存储桶中的特定文件夹 我有这个桶: 因此,我想知道是必须在该界面中设置权限,还是直接在IAM服务中的用户中设置权限 我在那里创建了一个具有以下策略的组: { "Version": "2012-10-17", "Statement": [ { &q

我知道如何通过AWS控制台en IAM创建用户,但我想知道应该在何处或如何设置该用户的权限,以便他只能:

  • 将文件上载/删除到特定S3存储桶中的特定文件夹
我有这个桶:

因此,我想知道是必须在该界面中设置权限,还是直接在IAM服务中的用户中设置权限

我在那里创建了一个具有以下策略的组:

{
    "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"
                }
            }
        }
    ]
}

但是对于“写”和“读”有很多策略,我只需要为特定bucket中的写/读文件使用哪些策略

编辑:目前我有以下策略:

{
    "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 bucket并删除/读取我想要的bucket文件夹中的对象

您可以将角色附加到获得自定义策略()的用户


在这里,您可以选择服务、要允许的操作以及白名单上的资源。

您可以使用S3附带的基于资源的策略,也可以使用IAM用户、组或角色附带的基于身份的策略

您可以向用户附加以下标识策略,以将文件上载/删除到特定S3存储桶中的特定文件夹

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


有关更多详细信息,请参阅类似的内容?我不确定这两个许可是否足够,这取决于您的用例。如果您知道要删除的文件是如何调用的,则只需要DeleteObject和PutObject进行上载。例如,如果您想选择要删除的文件,那么您也需要ListBucket策略。我知道,我在列表中找不到该策略。实际上,ListBucket是我的错误。啊,它已经设置好了:D我将使用策略的JSON编辑我的问题