如何确定哪位用户启用了对 Amazon Simple Storage Service (Amazon S3) 存储桶的公有访问权限?
查看 AWS CloudTrail 事件历史记录,看看哪位用户为允许公有访问而更新了存储桶访问控制列表 (ACL) 或存储桶策略。
CloudTrail 控制台
借助 CloudTrail 控制台,按照以下步骤找到此用户:
1. 打开 CloudTrail 控制台。
2. 在导航栏中的区域选择器中,选择您的存储桶所处的 AWS 区域。
3. 在导航窗格中,选择Event history (事件历史记录)。
4. 对于筛选条件,请选择您想用于查找授予存储桶公有访问权限的事件的筛选条件:
要按存储桶的名称筛选事件,请选择资源名称,然后输入您的存储桶名称。
要按存储桶 ACL 的更改筛选事件,请选择事件名称,然后输入“PutBucketAcl”。
要按存储桶策略的更改筛选事件,请选择事件名称,然后输入“PutBucketPolicy”。
5. 找到授予存储桶公有访问权限的事件之后,请查看事件的用户名列。然后,展开此事件项目并选择查看事件以了解更多详情,例如用户的 Amazon 资源名称 (ARN)。
AWS 命令行界面 (AWS CLI)
运行此命令以列出与您的存储桶关联的 CloudTrail 事件(使用您的存储桶名称):
aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceName,AttributeValue=example-bucket-name --region example-region
运行此命令以列出存储桶 ACL 更改事件:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=PutBucketAcl --region example-region
运行此命令以列出存储桶策略更改事件:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=PutBucketPolicy --region example-region