审计与证据链

wesgine 审计导出与证据链:JSONL/CSV 导出、Hash Chain 完整性与合规支持。


审计导出 API

方法路径说明
GET/audit/export审计导出(?format=jsonl|csv&from=&to=)
GET/audit/summary审计摘要

导出格式

格式用途
jsonl程序化处理、日志归档
csv电子表格分析、人工审阅

时间范围

GET /audit/export?format=jsonl&from=2026-01-01&to=2026-12-31

证据链(Evidence Chain)

入口

GET /observe/evidence → JSONL 流

Hash Chain 机制

每个 Run 产生证据记录,包含:

完整性保证

逐 Run hash chain——每条记录引用前一条的 hash:

Record N: { ..., prev_hash: hash(Record N-1) }
Record N+1: { ..., prev_hash: hash(Record N) }

不可切片

切片后缺环无法校验——证据链的完整性依赖连续性。


Actor 边界(INV-OBS-09)

抬到 cell:admin

/observe/evidence 和 /audit/* 不做 actor 过滤。

理由:

scope 路由优先级

声明必须排在 defaultCellRequiredScope 的 /observe 泛前缀之前:

// ✅ 正确
case "/observe/evidence": return "cell:admin"
case "/observe/":         return "cell:read"

// ❌ 错误:Go switch 按序匹配,排后面等于不存在
case "/observe/":         return "cell:read"
case "/observe/evidence": // 永远到不了

合规预设与审计

ComplianceClass 映射

预设审计强度
standard基础审计
financial严格审计 + 证据链
pii-strictPII 脱敏 + 审计
healthcare医疗合规 + 审计

Redactor

CellSpec.RedactorRules 在审计导出前脱敏敏感信息。

Compliance 类决定 RedactorRules,但不影响 DenyPaths(INV-GOV-COMPLIANCE-02)。


Hypervisor 级审计

Admin 审计

GET /admin/observe/crash-log → 崩溃日志
GET /admin/observe/snapshot   → Hypervisor 快照

跨 Cell 聚合

GET /admin/observe/per-cell-stats?cell=dept-legal
GET /admin/observe/runs?cell=dept-legal

Admin 端点提供跨 Cell 只读聚合——不违反 AX-1(隔离公理)。


审计摘要

GET /audit/summary

返回审计统计概要,用于运维仪表盘。


安全考量


相关文档