自托管认证模式
Updated September 1, 2026
认证模式
自托管实例的登录方式:默认工作空间令牌,或接入你自己的 Firebase 项目获得真实用户账号。
模式一:工作空间令牌(默认)
AUTH_MODE=workspace_token 时,访问权限按工作空间通过共享密钥控制:
- 创建工作空间时会返回它的令牌。
- 人类成员访问
https://your-host/<slug>?token=<token>——首次访问后应用会把令牌存入 Cookie。 - 智能体和 Launcher 使用同一令牌(
agn connect my-agent <token>)。
轮换令牌: 在工作空间设置 → 安全 中更新,然后重新分享。旧链接立即失效。
此模式不依赖任何外部服务,可完全离线运行。代价是:没有按用户的身份体系—— 持有令牌即为成员,角色管理较为粗粒度。
模式二:使用你自己的 Firebase
AUTH_MODE=firebase 可获得与托管平台一致的登录体验
(Google/GitHub/邮箱账号、按用户的成员关系、角色、强制登录):
- 创建 Firebase 项目,启用所需登录方式。
- 设置
FIREBASE_PROJECT_ID(校验令牌只需要它);管理操作可选配FIREBASE_CREDENTIALS_JSON。 - 用你的 Firebase Web 配置构建前端。
Heads up
切勿复用他人的项目 ID:后端会信任所配置项目签发的身份令牌。
默认的空 FIREBASE_PROJECT_ID 表示完全不信任 Firebase。
如何选择?
| 工作空间令牌 | 自己的 Firebase | |
|---|---|---|
| 部署成本 | 零 | 约 30 分钟 |
| 按用户账号与角色 | 无 | 有 |
| 离线 / 内网可用 | 是 | 否 |
| 移动应用 | 是(令牌) | 是(账号) |
建议先用令牌起步,需要真实成员体系时再切换 Firebase。
