2.4 行为审计
记录"谁、在什么时候、对什么资源、做了什么操作、结果是什么、从哪个 IP"。用于事后定位异常、合规审查、内部追责。
进入路径:左侧主导航 → 管理后台 → 行为审计。 路径:/admin/audit权限:admin / owner / super_admin
ℹ️ 这里的"行为审计"是平台级操作审计(用户配置变更、删除、登录失败等)。不要和 沙箱-AI 决策审计 混淆,后者是 AI 在员工电脑上的具体决策日志。
2.4.1 页面布局
顶部统计卡片(近 7 天)
| 卡片 | 内容 |
|---|---|
| 总事件数 | 含成功 + 受限 + 失败 |
| 失败 / 受限数 | 数字 + 占比百分比 |
| 跨组织操作数 | super_admin 跨租户访问次数 |
跨组织操作高数通常意味着 super_admin 频繁切换组织,或异常入侵迹象。值得关注。
筛选面板
| 筛选项 | 类型 | 说明 |
|---|---|---|
| 搜索 | text | 模糊匹配资源名 / 错误信息 / 操作人邮箱 |
| 动作 | select | create / read / update / delete / export / import / login / logout / ... |
| 资源类型 | select | user / organization / license / agent / orchestrator / application / skill / mcp_tool / role / approval / ... |
| 结果 | select | success / denied / failure |
| 仅跨组织 | checkbox | 勾选只看 super_admin 跨租户事件 |
2.4.2 事件表格
列
| 列 | 说明 |
|---|---|
| 时间 | ISO 日期时间(12 小时格式) |
| 操作人 | 邮箱 + 角色标签 |
| 动作 | 中文标签(创建/修改/删除/...) |
| 资源 | 资源类型 + 资源名 + 跨组织徽章(如有) |
| 结果 | 徽章:成功(绿) / 受限(红) / 失败(黄) |
| IP | IP 地址或「—」 |
行样式约定
- 跨组织操作:左边框 4px 琥珀色
- 非成功操作:左边框 4px 红色
可以视觉快速扫到异常行。
行点击 → 详情 Drawer
从右侧滑出详情面板:
| 字段 | 说明 |
|---|---|
| 完整时间戳 | 含毫秒 |
| 操作人 | 邮箱 + 用户 ID + 当前组织 + 当前角色 |
| 动作 | |
| 资源 | 完整 ID + 完整名称 + 资源类型 + 所属组织 |
| 结果 | |
| 错误码 | 如失败/受限,给出错误码 |
| 错误信息 | 如失败/受限,给出后端错误描述 |
| IP | |
| User-Agent | 浏览器 UA |
| Request ID | 后端追踪 ID,用于和应用日志关联 |
| Payload | 请求/响应 JSON 摘要(脱敏,密钥字段不显示) |
2.4.3 导出
顶部右上角两个按钮:
- 导出 CSV — 仅当有数据时启用。按当前筛选条件导出
- 导出 JSON — 同上,导出结构化数据,适合喂给 SIEM
导出含字段同表格列 + 详情 Drawer 部分字段。Payload 字段不会被导出(避免无意泄露)。
2.4.4 常见审计场景
场景 1:谁删了我的智能体?
- 进入审计页
- 筛选:动作=delete,资源类型=agent
- 搜索智能体名 → 看操作人和时间
- 点击行 → Drawer 看具体 Request ID,可对照原始日志找完整上下文
场景 2:近期失败登录排查
- 筛选:动作=login,结果=failure
- 看 IP 列 → 是否集中在某个 IP(疑似爆破)
- 看用户列 → 是否针对某些账号(疑似定向攻击)
- 详情 Drawer 看错误信息(密码错误 / 账号停用 / IP 黑名单 / ...)
场景 3:许可证导入操作回溯
- 筛选:动作=import,资源类型=license
- 时间排序看历史
- 详情 Drawer 看授权文件指纹
场景 4:跨组织异常访问
- 勾选「仅跨组织」
- 看 super_admin 是否在非常规时段访问非自己负责的组织
- 必要时联系当事人确认
场景 5:导出给合规
- 设置时间范围(通过搜索 "2026-01")
- 选择资源类型(如 license + user + role)
- 导出 CSV / JSON
- 提交给合规团队
2.4.5 数据保留与隐私
| 项 | 说明 |
|---|---|
| 详细日志保留 | 默认 90 天(可配置) |
| 聚合统计保留 | 默认 2 年 |
| 脱敏字段 | 密码、API Key、token、密钥永远不入库 |
| 敏感操作 | 删除 / 暂停 / 撤销授权 — 必入审计 |
| 审批操作 | 审批提交 / 通过 / 拒绝 均可审计(资源类型 approval,审计接线于 2026-05-27 上线)。详见 资源审批 |
| 不审计的行为 | 普通对话内容(那个在 用量统计 维度记录) |
2.4.6 常见问题
Q1:某次操作我做了,审计却没记录?
可能性:
- 该操作不在审计范围内(如普通对话)
- 后端审计写入失败(查后端日志)
- 筛选条件没匹配到(尤其注意 IP 列为「—」时不是 NULL 过滤问题)
Q2:能审计 API Service 的对外调用吗?
可以。api_service 应用每次被调用都会写一条记录:
- 资源类型:
application - 动作:
invoke - 操作人:对应 API Key 的所有者
- IP:调用方 IP
Q3:审计页加载很慢?
默认按时间倒序拉最近 100 条。如果筛选条件太宽且时间跨度大,可能耗时几秒。优化建议:
- 先按动作/资源类型过滤,缩小数据集
- 时间范围用搜索关键词限定具体日期
Q4:能配置自定义审计规则吗(如某动作触发邮件告警)?
当前 UI 不支持。需要联系运维通过后端 hook 机制接入告警(Webhook / SMTP / 钉钉等)。
Q5:审计日志能改吗?
不能。审计是只读、追加写。任何修改都会破坏审计完整性。如果发现误记录(如 IP 错误),只能新写一条修正记录,旧记录不会被覆盖。
