首页 > 解决方案 > S3 + Cloudfront:允许文件但阻止文件夹

问题描述

我有一个问题,文件可以从我的存储桶中完全访问,但文件夹会引发访问被拒绝错误。有谁知道我该如何解决这个问题?我希望我的文件夹也可以访问。

这是我的存储桶策略:

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "DenyS3PublicObjectACL",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:PutObjectAcl",
            "Resource": [
                "arn:aws:s3:::xxxxx/*”,
                "arn:aws:s3:::xxxxx”
            ],
            "Condition": {
                "StringEqualsIgnoreCaseIfExists": {
                    "s3:x-amz-acl": [
                        "authenticated-read",
                        "public-read",
                        "public-read-write"
                    ]
                }
            }
        },
        {
            "Sid": "2",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity XXXXXXXXXXX”
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::xxxxx/*”
        }
    ]
}

标签: amazon-s3amazon-cloudfront

解决方案


访问 URL 时,您不会从 Amazon S3 获得目录列表页面。S3 不显示目录列表。

参考:S3允许父文件夹的公共目录列表?

如果要实现目录结构资源管理器,请参阅此插件。

https://github.com/awslabs/aws-js-s3-explorer - 推荐

https://github.com/rufuspollock/s3-bucket-listing


推荐阅读