amazon-s3 - Coudfront OAI 集拥有但允许其他 AWS 账户上传 s3 对象的 S3 的存储桶策略应该是什么
问题描述
我有 S3,它限制了提供私人内容的政策。只有 Cloudfront Origin Access Identity 可以访问。但是,应该允许其他帐户上传新对象,以便客户可以获得新资产。针对这种情况应该制定什么样的政策?
目前我的政策是这样的
{
"Sid": "1",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity SomeID12334"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket/*"
}
解决方案
您可以在存储桶策略中添加多个语句来处理权限。提供来自另一个账户的角色 ARN,以提供对存储桶执行特定操作的访问权限。
{
"Sid": "1",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity SomeID12334"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket/*"
},
{
"Sid": "Stmt1570159952662",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<accountno>:role/rolename"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::my-bucket"
}
推荐阅读
- sql-server - INNER JOIN 结果的别名以及同时连接的两个表的别名
- optimization - 如何在 F# 中实现基于时间的长度队列?
- android - 如何处理 Jetpack Compose 中文本的可见性?
- node.js - 从构建文件夹获取 React 文件时,.map 不是函数
- c - 在 64 位 ubuntu 上编译 32 位应用程序
- hadoop - OOZIE 错误:无法找到或加载主类 org.apache.oozie.tools.OozieDBCLI
- javascript - 我应该如何通过制作音频文件转换器来做出反应
- networking - Minikube 上的 Kubernetes Ingress nginx 失败
- java - PDFBox 在特定的 pdf 文档中获取错误的 TextPositions
- javascript - 另一个下拉菜单打开时下拉菜单未关闭(活动)