【问题标题】:Creating a cloud front distribution创建云端分发
【发布时间】:2017-09-20 01:45:17
【问题描述】:

我按照 Ryan Kroonenburg 的教程创建了一个云端分发。我将源设置为我创建的 S3 存储桶之一。我在创建云前端时将“限制存储桶访问”设置为是。我仍然能够访问 S3 存储桶,尽管此选项旁边的信息显示“如果您希望用户始终使用 CloudFront URL 而不是 Amazon S3 URL 访问您的 Amazon S3 内容,请单击是。”。当我尝试访问云前端 url 时,我看到以下内容。

<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>56299E51ECB22FF0</RequestId>
<HostId>
sv5htrLwzMPiwZWyu4nUh6+Z8ZM69rC/fxNiC5zLR5rms9X+cRnoSeHJnElx7A7s9dCr36lRmU4=
</HostId>
</Error>

【问题讨论】:

标签: amazon-web-services amazon-s3 amazon-cloudfront


【解决方案1】:

要配置通过 AWS CloudFront 提供私有 S3 内容,需要在 S3 和 CloudFront 进行多项配置。

  • 创建 CloudFront 源访问身份(特殊 CloudFront 用户),授予对 S3 存储桶的访问权限。这还将在 S3 ACL 中创建一个允许访问的用户。
  • 限制公众访问 S3 存储桶(配置 S3 ACL 权限删除匿名访问)

在 CloudFront 中单击“是”的信息消息是从 CloudFront 创建一个源访问身份以访问来自 S3 的内容(无论存储桶是私有的还是公共的)。

如果您想要求用户始终访问您的 Amazon S3 内容 使用 CloudFront URL,而不是 Amazon S3 URL,单击是。

要使存储桶私有,请确保您通过 S3 存储桶 ACL 权限选项卡控制访问,您还将看到一种新类型的用户被授予访问 CloudFront 的 S3(原始访问身份用户)的权限。

由于您收到访问错误,我建议您阅读文档或文章以查找路由原因,并了解其工作原理,以便您可以解决未来的问题。

【讨论】:

  • 感谢阿山的详细回复。现在我只是想访问我使用云端上传到 S3 存储桶的图片。我为我的 s3 存储桶提供了完整的读/写权限,并且我能够使用 S3 存储桶 url 访问图片。当我设置分发时,我将“授予对存储桶的读取权限”设置为是。但是,每次我编辑 Origin Settings 时,都会显示为“否,我将更新权限”。所以我无法确定该值是否已设置为是。即使现在我也无法使用云前端访问图片。
  • @PunterVicky 检查存储桶策略是否有与源访问身份相关的语句。
【解决方案2】:

这里是关于创建具有受限访问权限的 S3 存储桶的详细博客。

https://aws.amazon.com/blogs/security/how-to-restrict-amazon-s3-bucket-access-to-a-specific-iam-role/

【讨论】:

    猜你喜欢
    • 2014-11-23
    • 2020-12-17
    • 2017-03-03
    • 2020-06-27
    • 2020-05-13
    • 2014-11-26
    • 2023-01-08
    • 1970-01-01
    • 2014-07-23
    相关资源
    最近更新 更多