gpt4 book ai didi

amazon-web-services - 如何在 Amazon S3 存储桶上设置公共(public)只读访问权限?

转载 作者:行者123 更新时间:2023-12-03 18:44:40 27 4
gpt4 key购买 nike

我在 StackOverflow 上发现了几个类似的问题,例如 this one但它们已经很老了,从那时起,S3 的情况似乎发生了变化。他们添加了这四个非常令人困惑的设置:
enter image description here
如果我关闭这些,是否意味着它使我的存储桶可以被公开写入?
此外,我还添加了此策略:

{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "PublicReadForGetBucketObjects",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::REDACTED/*"
},
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::REDACTED:user/REDACTED"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::REDACTED",
"arn:aws:s3:::REDACTED/*"
]
}
]

这个CORS配置:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>REDACTED</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>

我正在尝试向我在 IAM 中创建的用户授予公共(public)读取访问权限并限制完全访问权限。
如果有人可以确认我的设置是否正确,或者如果他们没有将我指向我需要的资源以使其正确,我将不胜感激。

最佳答案

公开对象 可访问 ,使用这样的策略:

{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"PublicRead",
"Effect":"Allow",
"Principal": "*",
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::examplebucket/*"]
}
]
}

注意 "Principal": "*" 的使用,这与您使用 "Principal": {"AWS": "*"} 的策略不同.

这允许访问对象( GetObject ),但无法列出存储桶的内容。这将需要 ListBucket存储桶本身的权限(没有 /* )。

您还需要 关闭两个阻止公共(public)访问设置与存储桶策略相关。

关于amazon-web-services - 如何在 Amazon S3 存储桶上设置公共(public)只读访问权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58580042/

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