跳到主要内容

🔐 群组

群组允许管理员

  • 一次性为多个用户分配权限,简化访问管理
  • 通过将资源(模型、工具等)的访问权限设置为“私有”,然后向特定群组开放访问,来限制对特定资源的访问
  • 为群组指定对资源的访问权限为“读取”或“写入”(写入权限包含读取)
信息

请注意,权限模型是许可型的。如果一个用户是两个群组的成员,而这两个群组为同一资源定义了不同的权限,则应用最宽松的权限。

群组结构

Open WebUI 中的每个群组包含

  • 一个唯一的标识符
  • 名称和描述
  • 所有者/创建者引用
  • 成员用户 ID 列表
  • 权限配置
  • 附加元数据

群组管理

群组可以

  • 由管理员通过用户界面手动创建
  • ENABLE_OAUTH_GROUP_MANAGEMENT 启用时,从 OAuth 提供商自动同步
  • ENABLE_OAUTH_GROUP_MANAGEMENTENABLE_OAUTH_GROUP_CREATION 都启用时,从 OAuth Claims 自动创建

OAuth 群组集成

当启用 OAuth 群组管理时,用户群组成员身份会与 OAuth Claims 中接收到的群组同步

  • 用户会被添加到与其 OAuth Claims 匹配的 Open WebUI 群组中
  • 用户会被从其 OAuth Claims 中不存在的群组中移除
  • 启用 ENABLE_OAUTH_GROUP_CREATION 后,OAuth Claims 中不存在于 Open WebUI 中的群组将自动创建

群组权限

群组可用于向用户提供一组权限。例如,可以创建一个“数据科学家”群组,该群组对所有模型、知识库和工具拥有读写权限。

针对群组的资源访问控制

Open WebUI 为模型、知识库、提示词和工具等资源实现了细粒度的访问控制。访问可以在用户和群组级别进行控制。

要为资源启用访问控制,请将其访问权限设置为“私有”,然后向特定群组开放访问。

访问控制结构

知识库等资源使用一种访问控制结构,该结构指定了用户和群组的读写权限

{
"read": {
"group_ids": ["group_id1", "group_id2"],
"user_ids": ["user_id1", "user_id2"]
},
"write": {
"group_ids": ["group_id1", "group_id2"],
"user_ids": ["user_id1", "user_id2"]
}
}

这种结构可以精确控制谁可以查看和修改特定资源。