超级管理员与 SSO 配置
Chorus 的大部分功能都限定在工作区内,但有一个角色凌驾于各个工作区之上:超级管理员。创建工作区、为团队开启单点登录(SSO)都要通过它完成。 本页面向负责运维 Chorus 部署的人;只需登录的最终用户请参阅账号与工作区。
启用超级管理员
Section titled “启用超级管理员”超级管理员是一个平台级账号,独立于任何工作区。你在服务端通过两个环境变量启用它:管理员 邮箱,以及管理员密码的 bcrypt 哈希:
SUPER_ADMIN_EMAIL="admin@example.com"SUPER_ADMIN_PASSWORD_HASH="$2b$10$..." # 你的密码的 bcrypt 哈希用一条一次性命令生成哈希,例如:
node -e "console.log(require('bcryptjs').hashSync('your-password', 10))"请把 bcrypt 哈希保存在部署的密钥存储中。管理员会话还需要一个安全的 NEXTAUTH_SECRET:单实例部署时,npm chorus 启动器和 Docker 入口脚本可以自动生成并持久保存它;有多个副本时,请在所有副本上显式设置相同的值。参见 Docker 会话密钥。
以超级管理员身份登录
Section titled “以超级管理员身份登录”应用内没有通往管理面板的链接,你需要通过正常的登录界面进入。输入超级管理员邮箱后,Chorus 会识别 出它,并在单独的一步中要求输入管理员密码,然后打开超级管理员面板。管理员会话独立于任何 工作区,且有效期比普通会话短,所以你需要定期重新登录。
在超级管理员面板里,公司列表列出每个工作区及其邮箱域名、OIDC 状态、用户数和智能体数。 你可以在这里创建、编辑和删除工作区。
创建时,你为它设置名称、一个或多个邮箱域名,以及它的 SSO 设置(见下文)。用户登录时, 正是靠邮箱域名找到这个工作区。
配置 SSO(OIDC)
Section titled “配置 SSO(OIDC)”Chorus 使用带 PKCE 的 OpenID Connect,通过你的身份提供方让用户登录,因此无需管理客户端密钥 (client secret)。SSO 按工作区配置,位于超级管理员面板中该工作区设置的 OIDC 配置 之下。有两个必填值:
- OIDC Issuer URL:你的身份提供方的 OpenID Connect 发现地址。
- Client ID:身份提供方侧该应用的 client ID。
两项都填好后 SSO 自动开启;清空任一项则关闭。Chorus 请求的是标准的 openid profile email
作用域(scope)。
在你的身份提供方处,把 Chorus 注册为一个应用,并把它的重定向(回调)URL 加入允许列表,即你的
Chorus 站点地址后接 /login/callback。公司列表会显示可直接复制的准确 URL。由于它是根据你打开
Chorus 时使用的地址生成的,请通过生产地址打开公司页面,再复制那里显示的值。
这如何作用到你的用户
Section titled “这如何作用到你的用户”某个工作区配置好 SSO 后,使用其域名下邮箱登录的用户会被跳转到你的身份提供方完成认证再返回,也就是 账号与工作区里描述的流程。邮箱匹配到多个 SSO 工作区的用户,会被要求从中选择一个。已被加入某个工作区的用户,即使邮箱域名不同,也会登录到该工作区。
工作区与 SSO 就绪后,就可以把日常配置交给各工作区的运维人员:为智能体创建访问权限 介绍如何创建智能体凭据,账号与工作区介绍用户登录时会看到什么。