主体:用户、角色与代理身份
意图:原问题与连续上下文
执行:模型、语义与查询版本
数据:源、范围与截止时间
结果:答案、导出与后续动作
结论:只记一条 SQL 不足以审计 AI 问数
同一问题可能经过澄清、语义映射、多步查询和答案生成。只有最终 SQL,无法解释用户原意、采用口径或为何展示某个结论。
审计记录应贯穿身份、意图、计划、执行、数据和输出。
先区分安全审计与产品调试
安全审计关注谁访问了什么、是否越权、是否导出;产品调试关注语义选择、模型输入输出和错误原因。
两类日志可关联但访问权限、脱敏规则和留存期限不必相同。
敏感内容不能因审计再次扩散
问题、查询结果和模型上下文可能包含个人信息或商业机密。日志应支持字段脱敏、摘要、加密、最小权限和删除策略。
不要为了可追溯而无限期保存完整结果集;保存必要证据和可重放标识通常更可控。
代理操作要记录委托链
机器人代表员工问数时,应同时记录机器身份、委托用户、组织角色、授权范围和调用入口。
后续导出、分享、报告发布或任务创建也要关联原始问数事件,才能还原影响范围。
按真实调查任务验收
让审计人员从一条异常答案反查身份、权限、语义版本、查询、数据截止和分享记录,并验证无权人员无法查看敏感日志。
AskTable.ai 的组织与项目能力可参与评估;日志字段、留存、检索、导出和合规要求需由安全负责人确认。
建立从主体到结果的关联模型
一条完整记录应包含 actor_id、组织与项目、代理或委托身份、session_id、request_id、原问题、已确认上下文、语义版本、模型与提示版本、查询计划、实际 SQL 或 API 调用、数据源和范围、数据水位、答案摘要、导出或分享动作以及最终状态。多步查询用 parent_request_id 形成链路,避免每条 SQL 成为无法还原意图的孤岛。
身份字段要保存当时有效的角色和策略版本,而不是审计时再读取用户当前角色。员工调岗或权限变更后,仍需解释历史访问为何在当时被允许。若系统代表用户调用下游数据源,应同时记录 human actor 和 service principal,防止所有行为都归到一个技术账号。
安全审计、质量调试和运营分析分层保存
安全审计关注访问决策、资源、导出和异常;质量调试需要语义选择、中间结果和错误堆栈;运营分析只需聚合使用量。三者目的和敏感度不同,应分表、分权限和分留存。把完整提示、数据样本和 SQL 永久放在同一个日志库,会扩大泄露面,也让真正的安全事件被大量调试信息淹没。
推荐保存不可变的安全事件和受控的诊断明细,并对分析层做去标识化。日志查看、导出和删除本身也要产生审计事件。生产日志不应记录数据库密码、访问令牌、完整个人信息或大段原始查询结果;必要证据可保存哈希、字段清单、行数和受控快照引用。
留存期限由风险和法规场景驱动
留存不是越久越好。先列举调查场景,例如越权访问、财务争议、用户投诉和模型版本回溯,再确定每类事件所需字段、在线检索期、归档期和删除方式。不同地区、行业和客户合同可能要求不同期限,应由法务与安全负责人确认,产品不能凭通用博客给出统一数字。
删除要覆盖主存储、搜索索引、备份和导出副本,并记录 legal hold 等例外。若用户行使删除权,仍可能需要保留去标识化安全事件,但必须明确法律依据和字段最小化。加密、密钥轮换、访问审批和完整性校验与留存同等重要。
把日志变成可调查的证据而非流水账
调查者应能按 request_id 从用户问题追到策略决策、语义版本、查询、数据范围和后续导出,也能反向查询某个敏感数据集被哪些身份访问。对拒绝、超时、异常大结果、短时高频导出和跨组织访问建立告警,但阈值要基于正常工作负载,避免告警疲劳。
可验证指标包括关键事件覆盖率、关联 ID 完整率、时间同步偏差、查询可复现率、日志写入失败率、越权查看次数和删除任务完成率。定期做桌面演练:给定一条可疑分享链接,要求团队在限定时间内还原主体、数据、决策和影响;找不到的字段才是真正缺口。
反例与 AskTable.ai 适用边界
反例包括只记录最终 SQL、用可修改业务表保存安全日志、所有管理员都能查看原始问题和结果、日志写入失败时静默继续,以及为了“可观测”记录密钥和完整敏感数据。另一个风险是日志自身成为高价值数据集,却没有独立权限、加密和访问审计。
AskTable.ai 可作为被审计的问数入口,但日志字段、不可变存储、SIEM 接入、留存和删除能力需要结合实际版本与企业基础设施验证。部分记录可能来自数据库、身份平台或网关,必须用统一 request_id 关联;本文不构成法规期限建议,也不承诺产品单独提供完整合规审计体系。
上线前做一次完整调查演练
选择一个模拟场景:成员通过连续追问访问敏感字段、导出结果并分享。要求团队从告警出发,找出人员与代理身份、当时角色、原问题、澄清、语义和策略版本、查询、字段范围、数据截止、导出文件与接收者,并验证谁查看过这些日志。任何无法在合理时间内回答的问题,都转化为必需字段或关联 ID。
演练后再验证删除与留存:过期诊断明细是否从索引和主存储清除,安全事件是否按批准规则归档,备份恢复是否会重新带回已删除内容,legal hold 是否有授权与解除记录。日志系统不可用时,明确问数服务是失败关闭、降级还是缓存事件后补写;高风险访问不应在完全无审计的状态下静默继续。
