1. 什么时候需要高级配置
如果 ghc-api 只监听 127.0.0.1 并仅供当前用户使用,保持默认本地配置通常最简单。只有准备共享 Copilot 访问、从其他设备连接、长期保存请求或跨机器同步时,才需要下面的功能。
2. 共享实例的用户 Token
启动时使用 ghc-api --enable-auth,或在当前版本生成的配置文件中开启 enable_auth。开启后,LLM API、模型列表等端点需要已批准的用户 Token。
- 用户访问
/signup,填写用户 ID 并获取一次性展示的gha_...Token。 - 管理员在 Dashboard 的用户管理区域批准该用户。
- 客户端通过
Authorization: Bearer TOKEN或兼容的 API Key Header 调用。 - 管理员可随时撤销或删除用户。
用户 Token 管理的是 ghc-api 访问权。
所有请求仍使用部署者登录的 GitHub Copilot 账户和该账户的上游权限。启用 Token 不会为每个用户创建独立 Copilot 额度。
3. 用反向代理保护管理页面
ghc-api 自身的用户 Token 主要保护 LLM API。Dashboard、请求详情、用户管理和配置管理包含敏感信息,远程部署时应由 nginx、Caddy 或其他反向代理增加独立管理员认证。
- LLM API 路径允许 Bearer Token 直接到达 ghc-api,不要被 Basic Auth 抢先拦截。
- Dashboard 和管理 API 使用独立的管理员认证。
- 流式路径关闭 proxy buffering,并设置足够长的 read timeout。
- 只开放必要端口,优先使用 HTTPS。
请求详情可能包含代码、Prompt、Header 和工具结果。
不要把 Dashboard 当作公开状态页,也不要向不受信任的用户开放请求浏览权限。
4. 请求日志、OneDrive 与持久化
| 功能 | 开启前考虑 |
|---|---|
| 请求文件日志 | 用于历史统计,但可能保存代码和会话内容;需要文件权限、清理周期和备份策略。 |
| OneDrive | 可同步配置、Session 和 Token Usage;默认关闭,只有明确接受云同步边界时再开启。 |
| 用户注册表 | 包含用户状态和 Token,应限制文件访问并避免写入普通日志或备份导出。 |
| 内存请求缓存 | Dashboard 使用;共享实例应根据并发量和敏感度调整容量。 |
5. 上线前检查清单
- 确认 GitHub 账户和组织允许所需模型。
- 开启 ghc-api 用户鉴权并批准测试用户。
- 确认 LLM API 与管理路径使用不同的认证策略。
- 验证 Responses、Messages 和 Chat Completions 的 SSE 流不会被代理缓存。
- 检查请求日志、OneDrive 和备份目录的访问权限。
- 使用非管理员客户端 Token 完成一次端到端测试。
下一步
先查看当前账户真实可用的模型和端点,再把模型 ID 填入客户端配置。
查看模型与参数 →