结论先行:权限过滤必须发生在检索之前,而不是检索之后。后置过滤会白白占用 Top-K 名额,还会向模型和日志暴露“存在这样一份敏感文档”,等于用泄露换召回。
一、越权泄露从哪来
很多团队的权限模型本身是健全的,审批流程也不缺,但 RAG 上线后照样出事,问题出在时序上:检索出 Top-K 块之后才做权限判断,把无权限的块过滤掉。这条链路有两个洞。其一,如果机密块挤进了前 K,过滤之后剩给用户的有效块可能远少于 K,回答质量直接下滑,用户感知就是越问越不准。其二,更隐蔽也更致命:在过滤发生之前,机密块的文本已经进入模型上下文,也可能已经写进请求日志和嵌入缓存。哪怕最终没有展示给用户,泄露在系统内部已经发生,日志本身成了新的泄露面。
设想某全国性商业银行的知识库,同时收录公开年报和内部风险通报。两类文档都在讲同一家公司、同一批指标,在向量空间里距离很近。业务人员问一个看似普通的问题,风险通报的片段就可能被召回。如果权限判断发生在召回之后,这份内部文档的存在性已经暴露:用户知道了有这份文件,日志里也留下了内容轮廓,事后删日志也删不干净。
二、三级权限继承
正确的次序是先打标、后入库、再检索。丑梨AI 的权限打标按文档级 → 章节级 → Chunk 内容级三级继承:文档级给出整篇基线,比如一份年报整体公开;章节级再细化,比如风险提示一章单独设为内部级;Chunk 内容级落到最小粒度,让一段话的密级可以被精确控制。子级自动继承父级,合并时密级就高——只要某一段被标为更高密级,整块按高密级处理,宁可多滤,不可漏放。
规则的来源有两种:正则匹配和标签规则集。正则可以按“保密”“内部”等字样、证件号段、编号格式自动打标;标签规则集则由业务系统在入库时直接写入,适合权限模型本来就清晰的团队。两条路可以叠加:先自动打一版,再人工抽检校正。打标质量决定后面的一切,标签覆盖率不足,之后所有的过滤都是空中楼阁。
| 级别 | 作用 |
|---|---|
| 文档级 | 整篇基线权限 |
| 章节级 | 按章节细化 |
| Chunk 级 | 原子块最终权限,就高合并 |
三、前置过滤怎么落地
明确了标签从哪来,下一步是过滤的时机。前置过滤的做法是:检索之前,先用用户权限集合圈定他能看的块范围,向量检索与关键词检索都只在这个子集里进行。这样返回的 Top-K 全部是有权内容,既不浪费名额,也不暴露任何敏感文档的存在性。代价只是一次按标签做的预筛,相比泄露风险完全可以忽略。
前置过滤和脱敏是互补的两道防线,层次不同。脱敏发生在切片与向量化之前——向量本身即为泄露面——内嵌图片中人脸、车牌、印章签名、证件号段等 11 类敏感区域(企业文档语境下常表述为 13 类),在向量生成之前就被高斯模糊、马赛克或黑箱处理掉;前置过滤管的则是谁能看到这条向量。一个把敏感信息从数据里抹掉,一个把人挡在数据外面,缺一不可。
四、和评测挂钩
权限体系不能配置完就算生效,要进入评测闭环。权限命中率是语料级评测指标之一,每次构建统计两件事:被打上权限标签的块占比,以及过滤之后是否仍有越权命中。前者衡量打标覆盖率,覆盖不足意味着大量块处于无人看管的状态;后者是硬红线,出现一次越权命中,就说明规则有漏洞,要回头修。
丑梨AI 在工程验证上把权限打标与密级过滤拆成 26 个场景逐一测试,全部通过,覆盖继承、合并与过滤的主路径。把覆盖率与越权命中数放进仪表盘持续观察,权限就从一项配置变成可度量的质量项。
权限是数据安全的一环。脱敏怎么做见 脱敏必须在向量化之前;权限命中如何进入评测见 RAG 评测三层指标;上线前自查见 30 项自检清单。
常见误区与修正:后置过滤不是权限控制
| 常见误区 | 实际风险 | 正确做法 |
|---|---|---|
| 检索后按权限过滤结果 | 后置过滤占用 Top-K 名额,有效结果变少;还能被差分探测出敏感文档的存在 | 检索前权限前置过滤,敏感块根本不进候选集 |
| 只在文档级设权限 | 一份混合文档里公开章节也被锁死,可用性下降 | 三级继承:文档级 → 章节级 → Chunk 内容级 |
| 父子块权限不一致 | 子块可查父块泄露,越权从缝隙进来 | 密级就高合并,父子取最高密级 |
权限打标的规则集用正则与标签规则维护,规则变更要过回归门禁,防止新规则把可公开内容误标成机密——可用性事故在合规行业同样是事故。权限体系与私有化部署如何配合满足数据不出域,见私有化部署与数据主权。
常见问题 FAQ
Q1:权限过滤为什么要在检索前做?
后置过滤会白白占用 Top-K 名额,有效结果变少;而且机密块已经进入模型上下文和日志,敏感文档的存在性早已暴露。前置过滤让 Top-K 全部是有权内容,泄露面小得多。
Q2:三级权限继承是哪三级?
文档级、章节级、Chunk 内容级。子级自动继承父级权限,合并时密级就高:只要某一段被标为更高密级,整块就按高密级处理,宁可多滤,不可漏放。
Q3:权限规则怎么来?
两种来源:正则匹配按保密、内部等字样或证件号段自动打标;标签规则集由业务系统在入库时直接写入。可以先自动打一版,再人工抽检校正。
Q4:权限体系怎么验证有效?
看权限命中率这个语料级指标:统计被打上标签的块占比,以及过滤后是否仍有越权命中。前者衡量覆盖率,后者是硬红线,出现越权就要回头修规则。
需要搭建企业级 RAG 知识库?了解丑梨AI
私有化部署的 RAG 数据工程基座:解析、清洗、脱敏、压缩、切片、治理、评测一站式流水线,全本地推理,数据不出域,单机可部署。