Amazon web services 混淆s3存储桶策略上载问题
我希望我的应用程序能够将对象放入s3存储桶,我希望公众能够读取对象。出于某种原因,除非我关闭了阻止所有公共访问,否则上传无法工作。日志显示此错误:Amazon web services 混淆s3存储桶策略上载问题,amazon-web-services,amazon-s3,amazon-iam,Amazon Web Services,Amazon S3,Amazon Iam,我希望我的应用程序能够将对象放入s3存储桶,我希望公众能够读取对象。出于某种原因,除非我关闭了阻止所有公共访问,否则上传无法工作。日志显示此错误:Aws::S3::Errors::AccessDenied 我的阻止公共访问设置如下所示: 我的桶策略是这样的: { "Version": "2012-10-17", "Statement": [ { "Sid":
Aws::S3::Errors::AccessDenied
我的阻止公共访问设置如下所示:
我的桶策略是这样的:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "GetPhoto",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::site-public/photo/*"
}
]
公共访问设置表示它们不会阻止bucket策略,但功能仍被阻止。为什么?看起来您需要能够有选择地使用公共读取ACL使对象公开可读,因此您需要禁用与ACL相关的阻止公共访问设置。正在阻止哪些功能(您的客户端实际在做什么?)错误代码/消息是什么?如果您试图上载具有公共ACL的对象,则将被阻止,除非您关闭所有选项@jarmod客户端正在上载图像,错误为
Aws::S3::Errors::AccessDenied
@我一直在这个问题上感到困惑。我的上传选项中有acl:“公共阅读”
。我不应该封锁一些通道吗?我不希望每个人都能上传,但我希望每个人都能获得文件。如何在不公开整个存储桶的情况下上载这些文件?如果您希望能够使用公共读取ACL,则需要禁用与ACL相关的BPA设置。您如何尝试检索这些文件?它们是否确实位于s3://site public/photo/
下?