我应该如何在 Amazon S3 上配置“阻止公共访问”?
Posted
技术标签:
【中文标题】我应该如何在 Amazon S3 上配置“阻止公共访问”?【英文标题】:how should I configure "block public access" on Amazon S3? 【发布时间】:2020-09-24 15:24:21 【问题描述】:我正在使用回形针和 ruby on rails 将图像从我的网站上传到 AWS S3,并且我的 web 应用程序托管在 heroku 上。我应该在存储桶设置下检查阻止公共访问吗?
目前我已阻止所有公共访问,但无法上传图片。当我取消选中阻止所有公共访问时,我可以做到。我应该为 S3 设置什么才能让我的 heroku 图片上传应用正常工作?
【问题讨论】:
【参考方案1】:像这样更改您的存储桶策略并尝试
"Version": "2012-10-17",
"Statement": [
"Sid": "S3Permissions",
"Action": "s3:*",
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::awsexamplebucket/*",
"arn:aws:s3:::awsexamplebucket"
]
]
【讨论】:
【参考方案2】:不确定您在 Heroku 上的应用是做什么的,但我认为 Heroku 应用会使用 IAM 凭证与 S3 通信。您需要在 S3 存储桶所在的账户中创建 IAM 用户,并使用 S3 put 操作。
【讨论】:
以上是关于我应该如何在 Amazon S3 上配置“阻止公共访问”?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Amazon S3 中配置 CORS 策略以从 React App 上传文档?