初始上下文

功能
Brain 的 Document access 机制——为 Google Drive 源新增「Original source」权限继承模式,检索时按每份文档的原始 Drive 权限逐文档强制访问控制
版本起源
v10.10.0 "Keno City" (2026-07-13)
解决的问题
Brain 此前按"源 scope"做粗粒度控制——能看到 GDrive 源就能检索源里所有文档,包括原本无权查看的机密文件(薪酬/法务/董事会材料),对任何有文档级权限边界的企业是致命数据越权风险,直接阻断企业采纳
战略动机
把 Brain 从"能用的知识库"打磨成"企业敢用的合规知识层"。文档级 ACL 继承是企业搜索(Glean)做了多年、agent 平台普遍缺失的能力——拆除企业采购 Brain 的数据越权审查障碍
评分
5/13(战略2 护城河1 用户1 复杂度1 创新0)[初始9→质疑-4→最终5] · 🔶 用户提级(Brain 企业化关键基建)

1. 概览

背景:Brain 的两层访问控制

Brain 访问控制分两层,Document access 是第二层。默认 source scope 是唯一门禁:能看到源的人能检索源里一切。Document access 让 Google Drive 源可进一步按每份文档自己的 Drive 权限约束检索。

┌──────────────────────────────────────────────────────────────────────┐
│                  Brain 访问控制 — 两层模型                             │
├──────────────────────────────────────────────────────────────────────┤
│  第 1 层:Source scope(所有源都有)                                   │
│  ┌──────────────────────────────────────────────────────────────┐   │
│  │  决定"谁能看到并搜索这个源":Personal / Team / Organization     │   │
│  └──────────────────────────────────────────────────────────────┘   │
│         │  默认:scope 是唯一门禁                                       │
│         ▼                                                             │
│  第 2 层:Document access(仅 Google Drive 源,v10.10.0 新)            │
│  ┌──────────────────────────────────────────────────────────────┐   │
│  │  Gumloop access(默认)/ Original source(权限继承)             │   │
│  └──────────────────────────────────────────────────────────────┘   │
└──────────────────────────────────────────────────────────────────────┘

两种模式

模式行为适用
Gumloop access(默认)源 scope 内任何人可检索全部文档,忽略原始权限无文档级权限边界的小团队
Original source(v10.10.0 新)只有在 Drive 里有访问权的人才能经 Brain 检索到该文档,逐文档检查有文档级权限边界的企业

目标

  1. 消除数据越权——检索结果不含用户在源系统无权查看的机密文档
  2. 尊重源系统 ACL——Brain 检索权限与企业既有文档权限对齐
  3. 通过企业安全审查——满足 SOC2/ISO27001 对"AI 检索尊重源 ACL"的要求
  4. Fail-closed 保守姿态——宁可漏检,不可越权

2. 核心机制 [文档已验证]

2.1 同步时快照 + 检索时强制

「Original source」分两阶段工作:同步时快照每份文档的 Drive 权限(按邮箱);检索时按用户连接的 Google 邮箱逐文档检查快照。权限不是实时查 Drive,而是同步快照——Drive 权限变更要等下一次同步才生效。

┌──────────────────────────────────────────────────────────────────────┐
│  阶段 1 — 同步时(Sync time):权限快照                                 │
│  Gumloop 读取每份文档,快照其当前 Drive 权限(谁有访问权,按邮箱)        │
│         │  权限快照随索引一起存储                                        │
│         ▼                                                             │
│  阶段 2 — 检索时(Search time):逐文档强制                             │
│  用户检索 → 对每个候选文档检查该用户是否有权                              │
│  匹配依据:用户【连接的 Google 账户邮箱】                                 │
│         │                                                             │
│    ┌────┴────┐                                                        │
│    ▼         ▼                                                        │
│   有权       无权                                                      │
│    │          │                                                       │
│    ▼          ▼                                                       │
│  返回内容   文档不浮现(fail-closed)                                    │
└──────────────────────────────────────────────────────────────────────┘

2.2 Fail-closed 设计(关键安全姿态)

Gumloop 原则:"fails closed rather than over-share"(宁可少给也不过度分享)。并非所有 Drive 授予方式都能被强制:

Drive 权限授予方式Brain 行为
直接用户访问✅ 遵守——有权用户可检索
组织/域访问(匹配已验证邮箱域)✅ 遵守——同域用户可检索
"任何拥有链接的人"❌ 视为无权限,不浮现
Google Group 共享❌ 视为无权限,不浮现
🔴 为什么 link/Group 一律无权限

这两种授予方式无法可靠映射到"当前检索用户是否在授权范围"。与其冒过度分享风险,Brain 保守地不浮现。若希望可检索,需在 Drive 里直接给人或域授权。这是面向审计的成熟姿态——安全团队更愿接受"漏检"而非"越权"。

2.3 模式切换触发重新同步

改变源的 Document access 设置会排队重新同步,按新模式重新快照权限。切到 Original source → 重新快照所有文档权限;切到 Gumloop access → 丢弃快照、回到 scope-only 门禁。

2.4 支持范围(当前仅 Google Drive)

Document access 选项只出现在支持它的源上。Google Drive 是当前唯一支持的源;其他源(Notion/Slack/GitHub/Confluence/Zendesk/文件上传)始终用 Gumloop access。Gumloop access 模式下不检查逐文档权限——能看到源的人能检索源里任何内容,文档建议把此类源 scope 到预期受众。

3. 功能需求

模块 A — Document access 配置

ID触发场景系统行为优先级
A1添加 GDrive 源时出现 Document access 选项(其他源不出现)P0
A2选 Original source启用权限继承:同步快照 + 检索逐文档强制P0
A3选 Gumloop access(默认)仅 scope 门禁,不检查逐文档权限P0
A4编辑源设置可修改 Document access 模式P0

模块 B — 权限快照与强制

ID触发场景系统行为优先级
B1Original source 模式同步快照每份文档 Drive 权限(按邮箱),随索引存储P0
B2用户检索按用户连接 Google 邮箱逐文档检查快照权限P0
B3用户对文档无权文档不浮现(fail-closed)P0
B4文档为 link/Group 共享一律视为无权限,不浮现P0
B5文档为直接用户/域授权遵守,有权用户可检索P0

模块 C — 模式切换

ID触发场景系统行为优先级
C1切换 Document access排队重新同步,按新模式重新快照P0
C2切到 Gumloop access丢弃权限快照,回到 scope-onlyP0

4. 用户场景

场景 1 — HR Brain 索引全员 Drive,薪酬文件仅 HRBP 可见

作为 HRBP,我希望员工问 HR agent "我的薪酬明细"时,agent 不会把别的员工的薪酬文件返回给他——即使那文件在 HR Brain 源里被索引了。

画像:王芳,35 岁,企业 HRBP。公司 Organization scope 索引全员 Drive,但薪酬/绩效机密文件在 Drive 里只有 HRBP 团队有访问权。

验收标准:

  • HR Drive 源 Organization scope,Document access 设为 Original source
  • 同步快照每份文档 Drive 权限(薪酬文件只有 HRBP 邮箱在列)
  • 普通员工检索 → 薪酬文件因邮箱不在快照中而不浮现(fail-closed)
  • HRBP 检索 → 薪酬文件浮现(邮箱在快照中)
  • 无数据越权,员工只看到本就有权的内容

场景 2 — 受监管企业通过 SOC2 审查接入 Brain

作为 CISO,我希望向审计师证明 Brain 不会把员工在 Drive 里无权查看的文件经 AI 检索泄露——这样我才能放行 Brain 进生产。

画像:陈总,40 岁,金融企业 CISO。公司想用 Brain 索引 Drive 知识库,但 SOC2 要求"AI 检索必须尊重源系统 ACL"。

验收标准:

  • Drive 源 Document access 设为 Original source
  • 审计验证:无权用户检索 → 机密文档不浮现(逐文档强制 + fail-closed)
  • 审计验证:link/Group 文档一律不浮现(保守姿态)
  • 权限变更后下一次同步生效(快照机制可解释、可审计)
  • 满足 SOC2 要求,CISO 放行 Brain

5. 竞争分析

竞品文档级权限能力优势劣势
Glean文档级 ACL 继承多年权限模型成熟,覆盖源广搜索工具非 agent 平台
Copilot for M365尊重 Microsoft Graph 权限与 M365 深度集成绑定微软生态,非跨源
ChatGPT/Claude(文件上传)无文档级权限孤立文件,无源连接,无 ACL
Gumloop Brain(v10.10.0 前)仅源 scope 粗粒度数据越权风险,企业不敢采购
Gumloop Brain(v10.10.0 后)GDrive 文档级 ACL + fail-closedagent 平台少见的文档级权限;保守姿态仅 GDrive;同步快照非实时;link/Group 漏检

关键洞察

  1. 文档级 ACL 是企业搜索标配,agent 平台普遍缺失——Glean 做了多年,Gumloop 是追赶而非引领。但这块短板不补,企业不会采购 Brain——"必须做"而非"差异化"
  2. Fail-closed 是正确的企业安全姿态——"宁可漏检不可越权"面向审计。link/Group 一律无权限体现对企业安全的成熟理解:不确定就当没权限
  3. 同步快照是务实折中——不实时查 Drive(慢、API 成本高),而是快照+检索强制。代价是权限变更有同步延迟,对多数场景够用
  4. 仅 GDrive 支持是当前局限——其他源仍走粗粒度 scope,大概率会逐步扩展

6. 遥测

漏斗阶段事件名称指标/KPI优先级
采用brain_doc_access_original_source_enabledGDrive 源启用率P0
安全brain_doc_access_denied拦截次数/日(去标识)P0
安全brain_doc_access_link_group_private保守拦截次数P1
影响brain_enterprise_adoption_post_acl受监管企业采纳数P0
质量brain_doc_access_false_negative漏检投诉率P1

7. 未来演进方向

阶段时间线里程碑状态
Phase 1 — GDrive 文档级权限v10.10.0Original source + fail-closed + 同步快照已发布
Phase 2 — 扩展到更多源v10.x+Notion/Confluence/Slack/Zendesk 的文档级权限继承推断/规划
Phase 3 — 实时权限校验v11.x权限变更近实时生效或缓存失效机制探索
Phase 4 — 可解释访问拒绝远期告知"文档存在但无权"(可审计 deny)而非静默不浮现探索

关键演进判断

  1. 扩展到更多源是必然下一步——仅 GDrive 支持意味着 Notion/Confluence 源机密页面仍有越权风险,会推广到其他支持细粒度权限的源
  2. link/Group 处理可能演进——当前一律无权限是保守起步,未来可能解析 Group 成员/识别链接分享白名单域以减少漏检,但增加安全复杂度
  3. 同步快照 vs 实时校验的张力——权限变更频繁的企业(离职即时收回)可能需要更实时校验或 webhook 驱动的权限失效
📚 源文档参考

docs.gumloop.com/core-concepts/brain(Document access 章节,完整验证)

父规格:Gumloop Brain(公司知识库) — 10/13