文档 审计日志

审计日志

您的 i1n 组织中每一次变更的仅追加记录 — 按键翻译差异、团队和账单事件、AI 代理归属以及一键导出 CSV。适用于企业版套餐。

所有更改,包含完整上下文

i1n 的审计日志记录了组织内的每一次变更——不是粗略的“翻译文件已更新”一条记录,而是结构化的、针对每个键、每种语言的事件。当仪表盘用户在 14:32 UTC 更改 errors.insufficient_funds 的西班牙语 (es_mx) 翻译时,日志会捕获确切的更改前值、更改后值、操作者身份、时间戳、IP 地址以及产生此次更改的请求的用户代理。

覆盖范围涵盖平台的整个表面区域:翻译的创建、编辑和删除;命名空间的创建、重命名和移除;项目设置和品牌声音的更改;团队邀请、角色更改和移除;API密钥的创建、轮换、范围更改和删除;账单计划的更改、订阅事件和 BYOK 激活。

批量操作(例如 i1n 推送)会为每个修改的键-语言对生成一个事件,而不是一个粗略的汇总,并在元数据中包含共享的批次标识符。一次更新四个语言中 200 个键的推送会生成 800 个可单独寻址的审计条目,每个条目都有自己的差异。因此,审计员可以精确到具体字符串来回答“4 月 17 日下午 2:32 发生了什么变化”。

事件由附加到每个审计表上的 PostgreSQL 触发器发出。没有绕过日志的应用程序级写入路径 — 每个成功的变异都会在同一个数据库事务中生成其审计行。通过构造,不可能发生提交时没有相应审计行的情况。

区分人类、机器和 AI 代理

每次审计条目都标记有五种执行者类型之一:user 用于仪表板的更改,cli 用于直接命令行操作,mcp 用于 AI 代理通过 i1n MCP 服务器所做的更改,webhook 用于源自外部系统(如账单提供商)的事件,以及 system 用于平台内部作业(如保留修剪)。

仪表板用户归因是加密的。操作者标识符是已认证用户的账户 ID,与来自组织成员列表的已验证电子邮件和姓名一起显示。审核日志的管理员可以看到真实的人类身份,而不是不透明的 UUID。

CLI 和 MCP 归属通过加密方式与正在使用的 API 密钥绑定,并记录密钥前缀以进行取证关联。从开发者的 git 配置中提取的线索 — 电子邮件和全名 — 也会被捕获,但在仪表板中明确标记为未经验证。这种加密身份与自我报告的元数据之间的诚实分离是合规审查员对成熟审计系统所期望的。

据我们所知,AI 代理可观测性是 i1n 独有的。由 Claude Code、Cursor 或连接到 i1n MCP 服务器的任何其他客户端进行的每次翻译更改都会标记为 actor_type = 'mcp'。组织可以筛选审计日志来回答“哪些翻译是最后由 AI 代理而不是人工审阅者修改的”——这个问题在任何其他本地化平台上都无法得到清晰的答案。

随着人工智能代理承担越来越多的本地化工作流程,将它们作为一等演员进行审计的能力正成为一项采购要求。演员类型过滤器在仪表板中只需单击一次,在 CSV 导出中只需一个查询参数。

专为 SOC 2、GDPR 和金融科技审查而构建

审计日志在数据库层面是仅追加的。触发器会发出行;没有 INSERT 路径暴露给客户端,并且表上没有 UPDATE 或 DELETE 策略。组织成员无法编辑自己的历史记录。i1n运维人员也无法编辑或删除条目——该表在模式层受到保护,而不是在应用层。

保留期为 365 天,与 SOC 2 活动日志控制基线保持一致。超过 365 天的记录将由计划作业删除,该作业本身会发出审计条目 — 每次删除均可追溯。需要更长窗口以进行特定法规审查的组织可以在合同层面请求延期。

日志显示合规审查员通常请求的数据点:谁、什么、何时、何地(IP地址)、如何(用户代理)以及发生了什么变化(更改前后的值,完整显示)。对于受GDPR第30条记录保存规定约束的组织,或受金融科技监管机构要求用户端内容可追溯性的监管机构而言,此导出记录足以作为主要证据。

i1n 目前不在平台层面发布 SOC 2 Type II 报告。审计日志是支持客户自有 SOC 2、GDPR 或金融科技合规计划的底层控件——它不能替代组织控件,但它消除了合规审查中最常见的障碍,即缺乏可审计的内容变更跟踪。

谁查看日志,谁在日志中

审计日志的读取权限仅限于组织所有者和管理员。编辑者和查看者在仪表板中看不到审计日志选项卡,也无法通过 API 查询。这种分离是由 PostgreSQL 行级安全强制执行的,而不是通过客户端隐藏 — 非特权角色无法读取日志。

编辑者和查看者完全受审计日志约束。他们在平台上执行的每一项操作 — 翻译编辑、AI 翻译请求、成员级别操作 — 都会记录其身份并对管理员团队可见。被审计者无法自行退出审计。

所有者和管理员无法编辑历史记录。关于“谁可以读取”和“谁可以修改”的问题,故意设置了不同的答案——读取权限为管理员级别,修改权限为无人。这满足了审计员在审查内部访问控制时所应用的职责分离期望。

API 访问镜像了仪表盘模型。审计日志通过与限制仪表盘访问相同的行级安全策略暴露,因此用于查询日志的任何服务帐户或集成令牌都会自动继承相同的限制。

导出、激活和定价

审计日志数据可以通过仪表板上的一个点击操作导出为 CSV。导出涵盖任何选定的时间范围,并遵守活动的过滤器 — 操作者类型、事件类型、项目和搜索词 — 因此审查者可以获得一个精确的片段,而不是整个历史记录。CSV 保留完整信息:时间戳、组织、项目、操作者身份、操作者类型、API 密钥前缀、事件类型、实体、修改前的值、修改后的值、IP 地址、用户代理和元数据。

每次 CSV 导出本身都会生成一个类型为 audit_log.exported 的审计条目,记录谁执行了导出以及应用了哪些过滤器。这闭合了合规审查员询问的保管链循环——提取证据的行为本身就是证据的一部分。

审计日志在所有 Enterprise 组织中自动激活。无需进行任何配置步骤、选择加入开关或设置。现有的 Enterprise 客户 —包括我们的发布合作伙伴 belo— 在该功能发布时即拥有已填充的日志,捕获连接到该组织的每个仪表板、CLI 和 MCP 客户端的活动。

专业版或商业版的组织无权访问审计日志。升级到企业版会立即激活日志,并开始捕获从升级时间戳开始的事件;升级前不提供历史记录保留。请联系 i1n 团队讨论贵组织的的企业版定价。

audit-log-2026-06-02.csv
created_at,actor_type,actor_email,event_type,entity_key,lang,before_value,after_value
2026-06-02T14:32:11Z,user,[email protected],wording.value_changed,errors.insufficient_funds,es_mx,"Fondos insuficientes","Saldo insuficiente"
2026-06-02T14:28:45Z,mcp,[email protected],wording.value_changed,onboarding.welcome,pt_br,"Bem-vindo","Bem-vindo de volta"
2026-06-02T14:15:02Z,cli,[email protected],wording.created,checkout.confirm_label,en_us,,"Confirm purchase"
2026-06-02T13:58:30Z,user,[email protected],member.role_changed,Camila Sainz,,"\"editor\"","\"admin\""

相关