我有1个s3桶,1个elasticbeanstalk实例。 Currenly我的s3bucket被公开,因此它可以从任何域访问,甚至可以从我的本地主机访问。 我希望我的所有s3存储桶资源只能在我的APP托管/运行的地方从我的EBS实例访问。我的应用应该能够查看这些资源并将新图像/资源上传到此存储桶。 我相信有人这样做了。
答案 0 :(得分:0)
控制对S3的访问有几种方法。使私人可访问的最佳做法是:不授予在存储桶策略中访问S3存储桶/文件的任何权限。
但是,您应该创建一个IAM角色,该角色具有对S3的完全访问权限,或对某些操作(某些存储桶)的有限访问权限。
对于每个EC2实例以及每个Elastic Beanstalk环境,您都可以附加IAM角色。此角色将通过实例元数据自动提供给您的实例。这是一种为您的实例提供特殊权利的安全方式。
(注意:这是AWS安全最佳实践,因为AWS将处理EC2盒上的密钥轮换。)