V2 独立版已交付
多租户与 SSO
HeteroFlow 是本站的异构算力与大模型调度产品。多租户与 SSO。大模型平台以租户为组织边界:每个租户有独立的成员、部门、专属渠道与额度治理,租户之间数据与流量全链路硬隔离;接入企业 SSO 身份源后,账号、部门、角色按映射自动同步,员工一次登录直达。
多租户与 SSO
> 大模型平台以租户为组织边界:每个租户有独立的成员、部门、专属渠道与额度治理,租户之间数据与流量全链路硬隔离;接入企业 SSO 身份源后,账号、部门、角色按映射自动同步,员工一次登录直达。
租户模型
- 共享与专属并存:平台级共享渠道全租户可用;租户专属渠道(如某企业自建的本地化模型服务)只对本租户开放。租户管理员只见共享 + 本租户专属;
- 隔离是全链路的,不只停在登录页:渠道视图、密钥归属、调用流水、审批范围逐项收口;跨租户调用是设计禁止项——A 租户的密钥永远调不到 B 租户的专属模型,表现为 403
access_denied,这不是故障; - 停用即断流:停用租户后其成员调用被拒(403),秒级到十几秒内生效;删除租户的前置条件是先移出全部成员;
- 撤权不伤人:把成员移出租户只撤销租户身份(不吊销会话、不清个人钱包额度)——撤的是组织归属,不是封号。
部门树
租户内建部门树:同一父部门下名称唯一(跨父可同名)、一个部门可挂多名主管、部门不能挂到自己或自己的后代下(防环)、默认部门不可删。部门用于费用分摊报表与按部门的月度额度治理(见配额与限流、审计与日志)。
SSO:企业身份源集成
支持 CAS、LDAP、OIDC/OAuth2 协议。管理员配置身份源(端点、证书、属性映射、角色映射、默认租户),保存即热加载——登录页立刻出现「统一登录」入口,无需重启。
JIT 自动开户与增量同步
第一次用企业账号登录,平台按 IdP 返回的属性自动完成四步:
1. 停用检测:属性映射配置了状态键且命中停用值(如 disabled、账号锁定、AD 停用位)→ 本地账号置禁用 + 吊销全部既有会话 + 拒绝本次登录——已停用的账号不会留下任何会话;
2. 租户挂靠:按租户属性或默认租户挂到对应组织;
3. 部门同步:部门值是路径(如「研发部/平台组」)时按路径逐级自动建组织树,用户挂末级;
4. 角色映射:角色映射是白名单制,IdP 返回映射表之外的角色一律保持普通用户(保守默认);命中则授予并登记来源,IdP 侧撤销角色后自动回收——管理员手动改过的角色不受影响。
之后每次登录增量同步:部门变了自动跟、角色变了自动调,全程写审计日志。
两条安全语义
- 口令不出企业:密码只在企业 IdP 校验,平台只接收验票结果;ticket 是一次性凭据且与回调地址精确绑定,重放与串用无效;
- 停用单向:IdP 恢复账号不会自动解封平台侧——解封是管理员的明确动作,防止 IdP 属性抖动导致权限反复震荡。
常见问题
| 现象 | 原因 | 处置 |
|---|---|---|
| SSO 登录被拒「User has been banned」 | IdP 停用信号命中 | 先在 IdP 恢复账号,再由管理员解封平台侧 |
| IdP 改了角色但平台没变 | 映射未命中,或该角色是管理员手动改的(受保护) | 核对角色映射表;需强刷时按授予登记记录处理 |
| 停用租户后仍有少量流量 | 状态缓存秒级窗口 | 稍候即断;紧急处置可联系平台运维 |
| 部门显示「已存在」 | 同一父部门下名称唯一 | 换名或确认是否跨父同名 |