Octop v0.9.24 是 OAuth Client 而非 Provider,支持通过内置 OAuth 网关代表用户接入腾讯文档、微博等第三方服务,需在对应平台注册应用获取 client_id/client_secret,并配置一致的 redirect_uri;不原生支持微信扫码登录 Octop 管理界面,该功能需通过反向代理前置认证或自研插件实现。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

Octop v0.9.24 支持通过内置的 OAuth 网关 接入第三方服务(如腾讯文档、微博、微信开放平台等),但它本身不提供用户登录认证的 OAuth Server 功能——也就是说,Octop 不是用来让你“用 GitHub 或微信扫码登录 Octop”的系统;它的 OAuth 是为 让 Octop 代表你去访问其他平台的数据 而设计的。
明确角色:Octop 是 OAuth Client,不是 OAuth Provider
你在配置时要清楚:
- Octop 需要作为“客户端”向目标平台(如腾讯云、微博开放平台)申请权限;
- 你需要提前在对应平台注册应用,获取 App ID / Client ID 和 App Secret / Client Secret;
- 回调地址(Redirect URI)必须设为
https://your-octop-domain.com/oauth/callback(或本地开发时用http://localhost:3000/oauth/callback); - Octop 会自动处理授权码交换、token 刷新和作用域(scope)管理。
配置步骤(以腾讯文档 Connector 为例)
Octop 的 OAuth 配置集中在 config.yaml 中的 connectors 区块:
- 启用对应 connector,例如
qcloud-doc; - 填入平台分配的
client_id和client_secret; - 指定
redirect_uri(需与平台后台登记的一致); - 可选设置
scopes,如["doc.read", "doc.write"]; - 重启 Octop 后,首次使用该 connector 时会跳转到腾讯登录页完成授权。
微信扫码登录?需额外对接
如果你希望用户通过微信扫码登录 Octop 管理界面(即让 Octop 成为 OAuth Provider),这不在 Octop v0.9.24 原生支持范围内。当前版本未内置用户身份认证模块。可行路径是:
- 在反向代理层(如 Nginx + Authelia)前置统一认证;
- 或基于 Octop 的插件机制,自行开发一个 WebAuthn / 微信 OAuth2 Provider 插件(需实现授权码流程、PKCE、token endpoint 等);
- 参考微信 OAuth3.0 流程:获取 code → 换取 access_token → 拉取用户信息 → 映射为 Octop 内部用户(需扩展 user store)。
安全提醒
所有 client_secret 必须存于环境变量或密钥管理服务中,切勿硬编码在 config.yaml 里。Octop 支持通过 ENV_${KEY} 占位符读取,例如:
client_secret: ENV_QCLOUD_DOC_SECRET











