多租户模型
三级身份模型
combo agent 采用三级身份模型:
Rendering diagram…
每一层都有明确的所有者与权限边界。
租户(Tenant)
租户对应一个企业或组织:
- 资源配额:模型调用限额、存储空间、并发 Session 数
- 技能池:租户级 Skill 可见(不跨租户)
- 知识库:企业知识库严格隔离
- 身份集成:SSO / LDAP / OAuth 对接租户的 IdP
用户(User)
用户对应租户内的员工:
- 个人技能:用户级 Skill(只自己可见)
- 个人记忆:user-level Memory(偏好、术语等)
- 角色与权限:RBAC 控制对租户资源的访问
会话(Session)
会话是最细粒度的工作空间:
- 默认私有:只有创建者可见
- 可共享:通过"共享"功能邀请同租户其他用户协作
- 跨租户禁止:不能把会话分享给租户外的人
隔离维度
| 维度 | 隔离方式 |
|---|---|
| Storage 存储 | 按 tenant/user/session 三级 prefix 隔离,详见 Storage 存储与隔离 |
| Memory 记忆 | Memory 按租户分库(长期记忆)+ 按用户分区(偏好) |
| Skill 技能 | 优先级:builtin > tenant > user;只能访问本租户的 tenant 级技能 |
| 凭据 Credential | 租户级凭据加密存储,不共享 |
| 日志 & 审计 | 按租户分区,可独立导出 |
| 模型路由 | 租户可指定"本租户只用 xxx 模型" |
角色权限(RBAC)
平台内置的标准角色:
| 角色 | 权限范围 |
|---|---|
| TenantAdmin | 租户管理、计费、审计、SkillHub 发布 |
| TeamLead | 管理所属团队成员、共享资源 |
| User | 创建 / 管理自己的 Session 与个人技能 |
| Auditor | 只读权限,可访问审计日志 |
| Service | 服务账号,用于 API 集成 |
可按需自定义角色。
协同边界
- 同租户内协同 — 可通过 Session 共享、Skill 发布、知识库接入实现
- 跨租户协同 — 不支持;如果真要做,请通过导出 / 导入 / Webhook 等解耦方式
Graft 跨会话与多租户
Graft 在多租户模型下:
- 默认只能嫁接同租户同用户的 Session
- 在租户管理员授权下,可嫁接同租户跨用户的 Session
- 绝不跨租户