身份:成员、角色与组织状态
策略:项目、行列与数据范围
运行:查询、工具与代理会话
结果:缓存、对话、分享与导出
审计:事件、传播延迟与失败
结论:授权是持续判断,不是登录时一次检查
用户登录时有权限,不代表数小时后的追问仍应沿用旧范围。调岗、离职、项目移除和敏感级别变化都可能使授权失效。若 AI 会话长期保存工具上下文、查询结果或缓存,单纯把成员状态改为 disabled 仍可能留下可访问副本。
正确目标是持续授权:每次读取、追问、导出和分享都依据当前身份与策略判断,同时对已有派生结果执行撤销或重新授权。系统要定义传播时限、失败策略和证据,而不是假设一个令牌到期后问题自然消失。
画出权限从身份到数据的完整依赖图
依赖通常包含身份提供方、组织成员、项目角色、数据源账号、行列规则、智能体、对话、查询任务、缓存、报告、分享链接和导出文件。每个节点标记谁拥有、如何授权、缓存多久、能否主动失效和如何审计。
最危险的缺口常在派生物:数据库已经拒绝新查询,但旧答案仍在浏览器、向量检索、对象存储或邮件附件中。依赖图要覆盖跨系统复制,不只覆盖主应用页面。无法主动撤回的文件应通过最小化、加密、到期和下载审批降低风险。
身份和策略事件必须有版本
权限变更事件包含 actor、subject、organization、project、old_policy、new_policy、effective_at 和 reason,并生成单调版本或不可变事件 ID。每次请求记录所使用的 policy_version,使事后能解释当时为何允许。只读取用户当前角色无法还原历史决策。
事件投递可能重复、乱序或暂时失败。消费者应幂等处理,并比较版本而不是到达顺序。关键撤权失败时进入告警与补偿队列;不能因消息总线短暂中断就让旧权限无限期有效。
令牌生命周期与高风险撤销要分级
短期访问令牌降低窗口,但不能替代即时撤销。高风险离职或泄露场景需要撤销会话、刷新令牌和服务端授权状态;普通项目调整可在批准的传播 SLO 内完成。长效 API 密钥和共享服务账号尤其需要单独治理。
令牌只携带角色快照时,策略变更不会自动反映。可使用短时令牌加服务端策略查询,或在令牌中带 policy_version 并与当前版本比较。选择取决于延迟和可用性,但失败时是否关闭必须由风险等级决定。
正在执行的查询也属于撤销范围
权限撤销发生时,排队或运行中的查询可能尚未返回。网关应能按主体和项目找到 query_id,取消高风险任务或在结果写入前重新授权。只阻止新请求,却让旧任务继续导出百万行,会形成明显时间窗口。
长任务转异步后更要在领取结果时重新验证。结果存储记录 owner、scope、policy_version、data_classification 和 expires_at;即使任务在授权时启动,下载时也不能只靠一个不可撤销 URL。
对话上下文不能保存可绕过授权的明细
连续问数为了体验会保留问题、指标和部分结果。撤权后可以保留无敏感的对话结构,却应隐藏或删除不再允许的数值、图表和行级样本;重新提问必须以当前范围生成,不能从旧上下文复述。
摘要和向量索引也可能包含敏感事实。建立数据分类与派生血缘,区分可继续显示的用户文本、受控指标引用和需要失效的结果。简单删除前端消息而后台检索仍可命中,不算完成撤销。
缓存键必须包含身份范围与策略版本
仅按自然语言问题缓存会造成跨用户或跨组织复用。安全缓存键至少包含规范化问题、组织、项目、数据范围、策略版本、语义版本和数据水位;高敏感结果可禁用共享缓存。命中缓存前仍需检查当前授权。
撤权事件可以按主体、项目或策略版本主动清理,也可通过版本不匹配让旧条目不可命中。被淘汰的数据需要按留存策略清理,而不是永久留在底层。缓存优化不能以牺牲权限正确性为代价。
分享链接和导出文件需要独立控制
分享应默认绑定接收者身份、组织范围和到期时间,而非永久公开链接。接收者打开时重新授权,原作者撤权后也要重新评估所有者变化。导出文件记录敏感级别、水印、下载人和有效期,并限制二次传播。
已经下载到个人设备的文件往往无法技术撤回,因此高风险场景要在导出前审批、最小化字段并提示责任。企业应明确不可撤回边界,而不是宣称所有数据都能实时收回。
用撤权演练验证传播时间与失败策略
演练离职、跨部门调岗、移出私密项目、降低列权限和服务账号泄露。变更后立即测试新查询、旧会话追问、运行任务、缓存答案、分享链接和导出领取,记录每个节点的失效时间与审计证据。
注入身份服务不可用、消息延迟和缓存清理失败,检查高风险数据是否失败关闭、告警是否到达责任人、补偿任务是否完成。只有主页面返回 403 远远不够。
指标、责任人与 AskTable.ai 边界
运营指标包括撤权端到端 P95、超时节点、取消成功率、旧策略请求数、缓存误命中、失效失败和无所有者导出。身份团队负责主体状态,项目和数据负责人负责范围,平台团队负责传播与审计,安全团队定义高风险情景和演练。
AskTable.ai 的组织、项目和数据范围可作为企业权限评估起点,但会话撤销、数据库取消、缓存隔离、分享与导出失效的具体支持需要按当前版本和部署核验。本文不承诺已经实现某个传播时限;下游系统无法撤回的副本必须明确列为残余风险。
