权限是 AI 应用的第一道信任门
传统应用里,用户看得到自己的数据;AI 应用里,模型会「替」用户读取、总结、生成,用户反而看不清数据流向。权限设计必须更严格。
核心原则:模型只能访问当前用户有权访问的数据,任何聚合都要经过同样级别的校验。
三层数据边界
第一层,身份与角色:谁可以访问什么数据源。第二层,检索层:RAG 检索时按用户权限过滤候选片段。第三层,输出层:生成结果再次检查是否包含越权信息。
只在检索层过滤还不够,输出层也要兜底,因为提示词注入可能绕过预期路径。
- 身份层:角色、数据源、行级权限
- 检索层:检索前按权限过滤知识片段
- 输出层:生成后校验,阻止越权信息外泄
提示词注入是真实风险
用户上传的文档可能包含「忽略之前的指令」之类的注入文本。应用要在输入层过滤、在检索层隔离不可信内容、在输出层约束系统边界。
对高价值场景,建议把不可信内容与系统指令明确分隔,并禁用指令跟随。
把隐私承诺写进产品
数据保留期限、是否用于训练、谁可以查看日志,都应该在产品和文档里写清楚。用户有权知道 AI 记住了什么、能否删除。
隐私设计不是合规负担,而是 B 端采购决策的核心因素。
给客户看的安全清单
把隐私设计写成客户能看懂的清单:数据存哪里、保留多久、谁可以访问、是否用于训练、能否删除。采购决策时,这份清单比十页架构文档更有说服力。
清单上的每一项都要真实可执行,承诺无法兑现的隐私条款,比不承诺伤害更大。
权限测试清单
权限上线前至少测三类场景:普通用户访问他人数据、低权限角色调用高权限接口、提示词注入尝试读取越权信息。
RAG 场景还要额外测一条:知识库里明明有数据,但当前用户无权查看时,检索结果必须为空,而不是返回后靠输出层拦截。
把权限测试写进发布门禁,比任何架构文档都更能防止数据事故。
数据合规的边界
AI 应用要明确三类数据边界:用户上传的数据是否进入模型训练、会话记录保留多久、第三方服务能看到哪些内容。每一项都要在界面和条款里说清楚。
对敏感行业,还要考虑输出审计:AI 生成的报告、建议是否记录归档,方便事后核查。
数据合规不是上线前的一次检查,而是产品迭代中持续维护的边界。