工作空间¶
Workspace 是 Legate 的租户与授权边界。Endpoint、Driver Profile、模型组、API 密钥、Sidecar Token 和调用统计都属于一个 Workspace。
租户隔离¶
两个 Workspace 可以都有名为 chat-default 的模型组,但不会互相可见或路由:
- API 密钥先确定 Workspace,再在其中解析模型组;
- Endpoint 与 WASM Profile 不能跨 Workspace 映射或引用;
- Sidecar Token 只能同步所属 Workspace;
- analytics 查询必须选择当前管理员有权访问的 Workspace。
模型代理不信任调用方自行声明 Workspace。X-Legate-Workspace 只用于管理 API 和 Sidecar 控制面选择器,不能改变 API 密钥的租户身份。
字段与选择¶
| 字段 | 含义 |
|---|---|
slug |
稳定选择器,Console、本地存储和 Sidecar --workspace 使用 |
name |
Console 展示名称 |
status |
active 或 disabled |
Console 左下角 Workspace Switcher 显示当前连接状态、名称、slug 和角色。禁用的 Workspace 仍可能出现在列表中,但不能切换进入执行 Workspace 级操作。
Workspace 管理 API 使用:
省略时客户端选择器使用 default。这不是授权 fallback;Central 仍验证管理员身份、Workspace 状态和 endpoint 所需 capability。
角色与可见页面¶
| 角色 | 当前能力 |
|---|---|
admin |
Workspace 全部配置、成员、Sidecar 下发模式和 analytics 读写权限 |
viewer |
只读 Endpoint、Driver、模型组、API Key 元数据和 Sidecar 元数据;不能看 analytics |
usage_viewer |
只读 Workspace 基本信息与 analytics;不能浏览配置 |
平台管理员可以访问全部 Workspace、创建或更新 Workspace,并管理“平台用户”。Workspace admin 只能管理当前 Workspace 成员,不能修改 Workspace 本体或操作其他 Workspace。
Console 根据后端返回的 capability 集合隐藏无权页面,不只依赖角色名称。管理 API 会再次强制授权。
成员、邀请与平台用户¶
Workspace 成员绑定 Legate 内部 userId。添加成员有两种方式:
- 按精确邮箱解析已经存在的用户,再授予角色;
- 选择 OIDC Provider 并邀请新邮箱,待用户用相同 Provider 和 verified email 认领。
平台管理员可在“平台用户”中停用/恢复用户、授予/移除平台管理员、撤销会话、停用 identity,并为开发身份用户准备 OIDC 迁移。停用用户会撤销会话并取消待领取邀请。
禁用与边界设计¶
Workspace 当前支持 active / disabled,不提供删除。禁用用于停止租户操作与模型路由,但不删除审计或调用历史,也不替代 secret 轮换。
适合拆分 Workspace 的边界包括独立团队、环境、成本中心或合规域。只需要一个新模型别名时应创建模型组,不应新建 Workspace。