amazon-web-services - 授予对组织中所有委托人的 S3 存储桶访问权限
问题描述
设想:
我在同一个组织中有 3 个 AWS 根账户。
- admin@mydomain.com
- user1@mydomain.com
- user2@mydomain.com
user1
创建了一个 S3 存储桶B1
。我希望user2
并且admin
能够B1
在他们自己的 S3 仪表板上查看和浏览。这可能吗?我需要制定什么政策?我在哪里创建这些策略以及如何创建它们?
**原始问题已被编辑。下面的一些答案可能不再相关
解决方案
据我所知,我无法在 root 用户之间进行 S3 存储桶控制台共享。我终于设法user1
与 IAM 用户共享创建的存储桶。
根用户的步骤
- 登录 AWS 控制台并转到 IAM
- 创建组
- 创建 IAM 策略,即允许 S3 完全访问(见下文)
- 将策略附加到组
- 创建 IAM 用户
- 对于访问类型,选择 AWS 管理控制台访问
- 将用户添加到您在步骤 1 中创建的组
- 一直执行,直到您单击创建用户按钮
IAM 政策
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:PrincipalOrgID": "o-xxxvvvwww8"
}
}
}
]
}
编辑:
经过严格的试错测试,似乎我们甚至不需要存储桶策略来实现这一点。我已经删除了存储桶策略,它仍然有效!
IAM 用户的步骤
- 以 IAM 用户身份登录 AWS 控制台
- 转到 S3 控制台。您应该能够查看和浏览所有组织成员创建的所有存储桶和对象
笔记
您的 IAM 用户将无法看到其 S3 控制台仪表板上列出的存储桶。该共享存储桶只能通过直接链接访问。因此,您的根用户必须将 URL 即提供https://s3.console.aws.amazon.com/s3/buckets/bucket1/
给您的 IAM 用户
推荐阅读
- kotlin - 当语言为 kotlin 时,Tarantool 墨盒-springdata(tarantool 的弹簧数据)不起作用
- drupal - 无法在我的 drupal 9 中打开自定义模块
- deep-learning - Mask RCNN 在物体上制作矩形?
- sql - 有条件地对其他行中的字段求和
- r - 选择列时如何显示非 NA 值?
- google-chrome - 摆脱 chrome devtools 中的“灯塔”选项卡
- qt - Qt GUI:滚动区域中的表格,延伸到窗口边框,然后才允许滚动
- python - 获取列表中的所有元素,直到其结束或另一个参数 Python
- c++ - 使用 Eigen 求解模 2 的线性方程组
- haskell - 使用非 IO 函数 haskell 超时