【问题标题】:How to List User or Role accessing S3 Private Bucket如何列出访问 S3 私有存储桶的用户或角色
【发布时间】:2021-12-16 19:19:42
【问题描述】:

在单个账户中列出访问私有 S3 存储桶的 IAM 用户或角色的方法。

【问题讨论】:

  • 您想列出所有可以访问存储桶的角色,还是想知道哪些角色已经访问了存储桶?在第二种情况下,您需要启用访问日志的 CloudTrail 日志记录,然后筛选日志。在第一种情况下,您非常不走运,因为您需要解析各种具有复杂逻辑和语法的 IAM 策略,并且肯定会遗漏一些东西。
  • 了解哪些角色确实访问了存储桶。

标签: amazon-web-services amazon-s3 boto3 aws-cli


【解决方案1】:

您可以在 Amazon S3 存储桶上激活日志记录。

见:Logging requests using server access logging - Amazon Simple Storage Service

日志包含 Requester 的字段:

请求者的规范用户 ID,或 - 表示未经身份验证的请求。如果请求者是 IAM 用户,此字段将返回请求者的 IAM 用户名以及 IAM 用户所属的 AWS 根账户。此标识符与用于访问控制目的的标识符相同。

【讨论】:

  • 但请务必监控此成本 - 当我们打开它时,我们处理的只是访问日志的 >40k€/月。是的,这是针对 100 TB 的数据、数十亿的请求,但请记住这样做的成本。
  • 也许我们可以使用 Athena 来查询日志。
  • 我们可以使用 AWS CLI 来获取这些信息吗?
  • S3 访问日志是存储在 S3 中的文本文件。可能存在大量日志文件,因此它们可能难以处理。最简单的方法是使用 Amazon Athena 查询 S3 访问日志。见:Analyze S3 server access logs using Athena
猜你喜欢
  • 1970-01-01
  • 2020-06-24
  • 2020-02-29
  • 2019-01-25
  • 2017-03-19
  • 1970-01-01
  • 2016-02-27
  • 1970-01-01
  • 2015-11-02
相关资源
最近更新 更多