操作审计 ActionTrail 实践:千里达票务系统云资源变更的全量留痕
除了服务器操作,云控制台本身的操作也是风险点:谁删了安全组规则、谁改了 RDS 白名单、谁开了新 ECS,这些事出问题同样难追溯。阿里云操作审计 ActionTrail 自动记录所有账号在云上做的 API 调用,日志投递到 SLS,随时查、随时告警。
一、记录什么
- 谁(哪个 RAM 用户);
- 什么时间;
- 调用了什么 API;
- 在哪个资源上;
- 请求参数和返回结果。
二、关键场景
2.1 安全组误删
有一次某同事误删了生产安全组规则,导致接口短暂不通。ActionTrail 一查:XX 账号 14:23 调用了 DeleteSecurityGroup,参数是生产组。直接定位责任人。
2.2 异常登录
非常用 IP 登录阿里云控制台,立刻告警。
2.3 资源膨胀
每月查 ActionTrail,谁开了哪些 ECS、哪些 OSS Bucket 没回收,成本优化依据。
三、配置
- 全量事件投递到 SLS;
- 关键操作(Delete/Modify)接云监控告警;
- 日志保留 180 天(合规要求)。
四、踩坑复盘
- RAM 子账号没记录:早期用主账号 AccessKey 跑脚本,ActionTrail 只记主账号,责任不清。解决:所有脚本用 RAM 子账号;
- 日志量太大:全量 SLS 一个月账单上千。解决:错误和写操作留存 180 天,读操作只留 7 天;
- 没接告警:只看不报警,重要操作出事才发现。解决:高危 API 实时告警;
- 跨账号:多账号体系,ActionTrail 只看当前账号。解决:用资源目录统一聚合。
五、效果与总结
ActionTrail 是云上的"黑匣子",平时看不见,出事时它是唯一的真相来源。对有合规要求的业务,这是标配。