对象存储访问日志是什么
开启桶访问日志后,对桶的每次请求都会生成一条明细记录并投递到指定的目标桶:谁在什么时间、对哪个对象、做了什么操作、返回什么状态码。它用于审计、排障与用量分析,也是排查异常下载与扫描行为的第一手材料。需要注意日志本身也消耗存储与请求次数,落地时必须同步设计目标桶的位置、前缀与生命周期规则。
基本信息
| 记录内容 | 请求者身份、操作类型、资源路径、状态码、耗时、客户端 IP |
|---|---|
| 投递目标 | 同一账号下的指定桶与目标前缀,通常按日期分目录 |
| 生效范围 | 按桶开启,不覆盖同账号其他桶 |
| 延迟 | 分钟级投递,不适合毫秒级实时审计 |
| 计费 | 日志写入请求与存储容量均计入账单 |
| 治理要点 | 日志桶与业务桶分离,配置生命周期自动清理 |
典型使用场景
- 安全审计:确认某个对象在什么时间被谁下载过
- 异常排查:定位大量 403 或 5xx 请求的来源 IP 与时间分布
- 用量分析:统计热门对象与调用来源,为 CDN 与缓存策略提供依据
- 合规留痕:满足日志留存要求,为审计提供可交付材料
- 成本分析:识别扫描类请求带来的无效请求量
- 事件复盘:把访问日志与操作审计的管控事件结合,还原完整操作链路
日志配置要点
日志配置要点
源桶:my-app-assets
目标桶:my-app-logs(与业务桶分离,避免日志与业务数据混存)
目标前缀:access-log/ # 建议按日期二级目录,便于按天检索与清理
规则一:目标桶设置 30 天生命周期自动过期,控制长期成本
规则二:只授予审计角色读权限,业务账号无权删除日志
规则三:日志桶开启版本控制或合规保留,防止日志被覆盖清理日志字段读法
| 字段 | 含义 | 典型用途 |
|---|---|---|
| 请求者 | 发起请求的账号标识或匿名标记 | 识别是内部应用、外部合作方还是匿名访问 |
| 操作类型 | GET、PUT、DELETE、HEAD 等方法 | 区分读行为与写行为,快速筛出删除操作 |
| 资源路径 | 桶名与对象键 | 定位到具体对象与被访问的业务目录 |
| 状态码 | HTTP 状态码与对象存储错误码 | 统计 403 越权尝试与 404 扫描比例 |
| 时间与耗时 | 请求时间戳与响应耗时 | 还原时间线,识别慢请求与突发流量 |
| 客户端信息 | 来源 IP 与 User-Agent | 排查异常来源与爬虫、扫描器行为 |
访问日志有分钟级延迟:对实时性要求高的安全审计场景,应结合操作审计的管控事件一起看,管控事件能覆盖配置类操作,访问日志负责数据面请求。
日志桶权限要收紧:日志里包含对象路径、调用者标识与来源 IP,权限过宽会把内部结构与业务信息暴露给无关账号。