跳到主要内容

Tenant Isolation(租户隔离)

先用一句话说清楚​

Tenant Isolation(租户隔离)是确保不同客户、部门、组织或账号之间的数据、配置、知识库和工具权限不会互相串用。

实战知识卡​

维度要点
项目里看什么看资料、向量、会话、任务和审计记录是否都有租户边界。
新手最该记住租户隔离(Tenant Isolation)解决的是不同客户或部门的数据不能串用。
作品集证据展示跨租户检索被拒绝的样例,哪怕作品集只是单租户演示。
面试回答公式先说 tenant_id(租户编号)贯穿数据,再说检索过滤、权限和审计隔离。
常见扣分点认为同一个向量库里不同集合就一定安全。

新手通俗解释​

如果一个系统同时服务 A 公司和 B 公司,A 公司的人绝不能查到 B 公司的资料。即使系统底层使用同一个模型、同一个向量数据库或同一个后台,也必须把租户边界隔开。

在 AI Agent(人工智能体)项目里,Tenant Isolation(租户隔离)尤其重要,因为模型可能根据上下文回答问题。一旦上下文混入别人的资料,就会造成严重泄露。

为什么岗位会问它​

面试官问 Tenant Isolation(租户隔离),通常是在判断你是否具备企业级交付意识。很多作品集只做单用户演示,但真实公司会有多个客户、多个部门、多个角色和多套资料。

隔离对象为什么重要
资料隔离防止知识库串库
权限隔离防止越权访问
配置隔离不同客户模型、提示词、工具开关不同
审计(Audit)隔离每个租户只能看自己的记录
成本隔离统计每个租户的模型费用

它在项目里怎么用​

作品集里不一定要实现复杂多租户平台,但要在方案里写清楚租户字段和权限检查。

设计点应该说明
tenant_id(租户编号)每条资料、任务、用户、审计记录都归属某个租户
查询过滤检索资料时必须带租户范围
工具调用工具只处理当前租户允许的数据
管理后台管理员也要区分平台管理员和租户管理员
测试样例故意测试跨租户访问是否被拒绝

常见误解​

误解为什么不对正确理解
只要前端不展示就安全后端检索和工具调用仍可能越权隔离必须在数据和接口层生效
单机作品集不用写 Tenant Isolation(租户隔离)面试官会问真实企业怎么扩展至少要说明设计边界
向量数据库天然隔离同库不同集合也可能配置错误检索时必须带租户过滤和验收样例

面试官可能怎么追问​

1. RAG(检索增强生成)系统怎么防止串库?​

考察点: 是否理解数据边界。

参考回答: 我会给资料、向量、会话、任务和审计(Audit)记录都绑定 tenant_id(租户编号),检索时强制带租户过滤,并用跨租户样例做验收。如果用户没有权限,即使语义相似度很高,也不能返回其他租户资料。

容易扣分: 只说“前端控制一下”。

2. 租户隔离和权限有什么区别?​

考察点: 是否能区分组织边界和角色权限。

参考回答: Tenant Isolation(租户隔离)先回答“属于哪个客户或组织”,权限(Permission)再回答“这个组织内的哪个角色能做什么”。两者要同时存在:没有租户隔离会串客户,没有权限会让同一租户内的人越权。

容易扣分: 把所有安全问题都说成登录校验。

作品集里怎么展示它​

  • 在资料表、任务表和审计(Audit)表里写出 tenant_id(租户编号)的设计说明。
  • 准备一个跨租户访问被拒绝的验收样例。
  • 在项目讲解里说明“单租户演示,按多租户边界设计”。
  • 把 Tenant Isolation(租户隔离)和权限(Permission)、审计(Audit)放在同一张安全设计图里。

和哪些术语一起理解​

对应章节与项目​