Octop v1.0.0 不原生支持 OAuth,采用本地账号体系以保障隐私与简化部署;可通过反向代理、SSO 集成或插件扩展实现外部认证,推荐使用本地账号+JWT 自动刷新等原生方案。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

Octop v1.0.0 当前不原生支持 OAuth 认证。它默认采用本地账号体系(用户名 + 密码 + 可选的 JWT Token),设计定位是“自托管、多用户、隐私优先”的家庭与团队助手,所有用户数据和身份状态默认保留在你自己的部署环境中。
为什么没有内置 OAuth
这是有意为之的设计选择:
- 避免将用户身份交由第三方平台(如微信、GitHub、Google)托管,契合“记不住你之外的人”的隐私原则;
- 简化初始部署路径,不需要申请 OAuth App ID / Secret 或配置回调域名;
- 为后续扩展留出空间——OAuth 属于可插拔能力,不是基础依赖。
如需对接外部身份源,可行路径
Octop 的架构支持通过反向代理或前置认证层实现 OAuth 集成,无需修改核心代码:
腾讯云通用文字识别(高精度版)技能包。用户发送/粘贴图片、提供图片URL或要求识别图片文字时自动调用。支持中文、英文、中英混合、数字及特殊符号的检测与识别,返回文字框位置与内容。适用于文字较多、版式复杂、准召率要求高的场景。
- 用 Nginx / Caddy 做前置认证:启用 auth_request 模块,将登录请求转发至你已有的 OAuth 网关(例如 Authelia、Ory Hydra 或自建 OIDC Provider),验证通过后再透传请求到 Octop 后端;
-
复用现有 SSO 会话:若团队已有企业微信/钉钉/腾讯云访问管理(CAM)单点登录体系,可在登录页嵌入跳转逻辑,用前端 JS 解析 SSO 返回的 token,并调用 Octop 的
/api/v1/auth/login-by-token(需自行启用并签名验证); -
贡献适配器(进阶):Octop 的
auth模块采用插件式接口,社区可开发oauth2-provider-plugin,实现 GitHub/企业微信等 provider 的用户映射与 session 同步——当前 GitHub 仓库中暂无官方维护的此类插件。
配置建议(轻量替代方案)
若目标是快速支持多成员免密协作,推荐更贴合 Octop 设计的原生方式:
- 管理员在后台创建多个本地账号,分配角色(
user/admin); - 开启
JWT_AUTO_REFRESH和SESSION_TIMEOUT=86400,提升登录体验; - 配合腾讯云 API 密钥或轻量 LDAP(通过
ldap-auth-proxy中间件)做统一凭证后端,而非直接走 OAuth 流程。
开源地址始终在 GitHub 主页更新:https://www.php.cn/link/ed565472d8ce021500229c77a0f731a1,关注 auth 目录下的 interface 定义和 docs/deployment.md 可获取最新集成指引。

















