SuperAPI AI 工具集

securing-s3-buckets

安全与审计

查看项目

更新于 10-15 18:31

技能介绍

用途:按 AWS Well-Architected 安全最佳实践,对 S3 存储桶实施分层安全控制。资料将其分为五个工作流:A 加固新桶、B 审计现有配置、C 修复具体发现项、D 配置加密、E 启用监控。执行命令优先使用已连接的 AWS MCP 服务器(沙箱执行、审计日志、可观测性),否则回退 AWS CLI 或 shell。

主要能力与用法:开始前检查依赖,缺失必要工具必须告知用户,建议用 aws sts get-caller-identity 确认凭证,各工作流 IAM 权限见 references/iam-permissions.md。先按用户意图分类请求,并一次性询问全部必填参数,写入前确认桶名与区域;建议先用 aws iam simulate-principal-policy 校验权限,展示写命令并等待确认。工作流 A 要求按序执行:创建桶时使用 --bucket-namespace account-regional(必需),启用版本控制、加密(SSE-S3 + Bucket Keys + 阻止 SSE-C)、日志(需先询问选项)、通过 DenyInsecureTransport 桶策略强制仅 HTTPS、启用 ABAC;不得更改默认的 Block Public Access 与 ACL 所有权控制。调用 put-bucket-policy 前必须先用 aws s3api get-bucket-policy 读取现有策略备份(NoSuchBucketPolicy 可跳过),将新语句合并进 Statement 数组并校验 JSON 后再应用。工作流 B 只执行只读命令,不写不改,逐项报告 PASS/FAIL/NOT CONFIGURED 及严重级别;日志方面 S3 服务器访问日志或 CloudTrail 数据事件任一启用即为 PASS。工作流 C 先识别问题类型再修复,修复后重跑对应审计确认。工作流 D 默认 SSE-S3 + Bucket Keys 并阻止 SSE-C,除非用户明确要求 KMS;用 SSE-KMS 时必须使用客户托管密钥而非 aws/s3,以完整 ARN 指定,并包含 BucketKeyEnabled: true 与 BlockedEncryptionTypes: [SSE-C],应用后用 get-bucket-encryption 验证。工作流 E 创建 GuardDuty 探测器前先检查是否存在,CloudTrail 命令使用跟踪的主区域而非桶所在区域,建议启用四条核心 AWS Config 规则。

适用场景:需要新建安全 S3 桶、审计现有桶配置、修复安全发现项、配置加密或启用日志监控时使用。

限制与说明:不改变 S3 默认的 Block Public Access 与 ACL 设置;ObjectLockConfigurationNotFoundError 视为未配置而非失败;审计 AccessDenied 需排查 IAM 策略、桶策略、VPC 端点策略及 SCP/RCP;put-bucket-policy 会整体替换策略,须遵守备份与合并规则。收费、价格及具体平台支持范围资料暂未提供。