gpt4 book ai didi

amazon-web-services - 限制某些用户而非其他用户访问 Cloudfront(S3) 文件的简单示例

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

我刚刚开始使用 AWS S3 和 Cloudfront 的权限,所以请放轻松。

两个主要问题:

  1. 我想允许某些用户(例如,已登录的用户)访问,但不允许其他用户访问。我假设我需要使用 ACL 而不是存储桶策略,因为前者更可定制,因为您可以使用查询参数识别 URL 中的用户。首先这是正确的吗?有人可以指出关于如何在文件/用户逐个文件/用户的基础上执行此操作的最简单英文描述吗? ACL 上的文档让我很困惑。

  2. 我还想限制访问权限,以便人们只能查看 my-site.com 而不是 your-site.com 上的内容。遗憾the S3 documentation example bucket policy因为这对我的演示存储桶的访问没有影响(请参阅下面的代码,稍微改编自 AWS 文档)。此外,如果我需要首先关注允许逐个用户访问,我什至想要定义存储桶策略吗?

我意识到我什至没有涉及如何在 Cloudfront 的上下文中进行这项工作(最终目标),但是对于问题 1 和 2 的任何想法都将不胜感激,此时提及 Cloudfront 将是一个额外的好处。

`

{
"Version": "2008-10-17",
"Id":"http referer policy example",
"Statement": [
{
"Sid": "AllowPublicRead",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket/*",
"Condition": {
"StringLike": {
"aws:Referer": [
"https://mysite.com/*",
"https://www.mysite.com/*"
]
}
}
}
]
}

最佳答案

  1. 要限制对 CDN 的访问,提供我们所谓的“私有(private)内容”,您需要使用 API 来生成签名 URL,并且您可以定义 URL 的到期时间。更多信息 is here .
  2. 您可以使用源访问标识— as explained here ——防止内容在云端之外提供。

我以为我有一些过去项目的代码可以分享,但没有。但是,至少我能够深入研究我的书签并找到在这个过程中对我有帮助的引用资料之一,stackoverflow 上的另一篇文章也提到了相同的引用资料。请参阅下面的引用和帖子链接。

http://improve.dk/how-to-set-up-and-serve-private-content-using-s3/

Cloudfront private content + signed urls architecture

好吧,它已经两年了,你可能需要在这里和那里稍微改变一下,但你会明白的。

关于amazon-web-services - 限制某些用户而非其他用户访问 Cloudfront(S3) 文件的简单示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18880188/

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