gpt4 book ai didi

amazon-web-services - s3上文件的权限

转载 作者:行者123 更新时间:2023-12-04 08:07:19 25 4
gpt4 key购买 nike

我在 S3 上有一个名为 xyz 的存储桶。在存储桶内,我在 786/html/index.html 有 html 文件,在 786/html/images/中有多个图像。文件夹和文件具有所有者完全控制的权限。我正在使用 aws ruby​​-sdk 生成 786/html/index.html 的 url,页面工作正常,但 786/html/images 处的图像未在 786/html/index.html 中呈现。它在浏览器控制台上给了我以下错误:-

Failed to load resource: the server responded with a status of 403 (Forbidden) 

现在我授予了 786/html/images 的公开阅读权限。 786 和 786/html 具有唯一所有者的权限。现在 786/html/index.html 能够渲染图像,但现在图像也可以通过 public_url 访问。我很困惑,因为 786 和 786/html 没有公共(public)权限,仍然可以访问图像。

一种可能的解决方案是将 AwsAccessKey 和签名附加到 index.html 内的图像源。但是由于我们有多个图像,因此我们需要一个通用签名。

建议需要

谢谢,
阿普尔瓦玛雅克

最佳答案

S3 是一个对象存储。它不是分层文件系统,实际上没有“文件夹”。

对象键可以有前缀,按照约定用 / 分隔。 .

这给人一种文件夹的错觉,但这与实际的层次结构不同。每个对象的权限都是独立的,受制于策略(也可以包括前缀引用)。

但是说“786 和 786/html 没有公共(public)许可”但“786/html/images”确实有公共(public)许可在 S3 中没有任何意义,因为这些“文件夹”“下”的对象实际上并没有与它们相关联。

无论您使用什么来处理您的存储桶,都可能给您一种情况并非如此的印象,或者可能正在操纵“文件夹中”对象的权限,并给您一种这些权限是继承的印象。

如果您的目的是使 html 文件只能通过签名的 URL 可见,或者使图像只能在页面上可见(并且不能自行下载),那么您的代码还需要完全限定和签名嵌入的图像(和文件,如果你也希望它是私有(private)的)。

关于amazon-web-services - s3上文件的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19496026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com