gpt4 book ai didi

amazon-web-services - 公开 AWS S3 存储桶策略。如何使对象私有(private)?

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

我有一个带有 GetObject 的桶,每个人都可以使用完整的桶 (*)。我想将一些对象设为私有(private)(通过对象级操作 ACL),即只有存储桶所有者应该具有对该对象的读取权限。我浏览了所有可用的文档,但找不到任何可能的方法。谁能确认这是否可能?

最佳答案

您不能使用 S3 对象 ACL,因为 ACL 没有拒绝。

您可以修改 S3 策略以指定对象并拒绝访问个别项目。

示例 S3 策略(请注意,此策略禁止每个人访问两个文件的 GetObject):

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicReadGetObject",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::mybucket/*"
},
{
"Sid": "DenyPublicReadGetObject",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": [
"arn:aws:s3:::mybucket/block_this_file",
"arn:aws:s3:::mybucket/block_this_file_too"
]
}
]
}

如果您想添加一个条件以便某些用户仍然可以访问这些对象,请像这样在 Resource 部分之后添加一个条件。此条件将允许 IAM 用户 john.wayne 和 bob.hope 仍然调用 GetObject。

        "Resource": [
"arn:aws:s3:::mybucket/block_this_file",
"arn:aws:s3:::mybucket/block_this_file_too"
],
"Condition": {
"StringNotEquals": {
"aws:username": [
"john.wayne",
"bob.hope"
]
}
}

关于amazon-web-services - 公开 AWS S3 存储桶策略。如何使对象私有(private)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47765609/

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