OAuth2
cloud-r2pan 内置两套相互独立的 OAuth2 体系:
| 体系 | 作用 | 支持平台 |
|---|---|---|
| 下载鉴权 OAuth2 | 访客下载前需先登录第三方账号 | GitHub / Google / Microsoft / Discord / 自定义 |
| 管理员第三方登录 | 管理员免密登录后台(绑定后) | GitHub / Google / Microsoft |
下载鉴权 OAuth2
管理后台 → 设置 → OAuth2 区块。
配置项
| 字段 | 默认值 | 说明 |
|---|---|---|
| 启用 OAuth2 验证 | 关闭 | 开启后访客需完成第三方授权才能下载 |
| Provider | github | github / google / microsoft / discord / custom |
| Client ID | 空 | OAuth 应用的 Client ID(明文存,可公开) |
| Client Secret | 空 | OAuth 应用的密钥(AES-GCM 加密存) |
| Scope | user:email | 授权范围,按 Provider 要求填写 |
自定义 Provider
Provider 选 custom 时,额外填写:
| 字段 | 说明 |
|---|---|
| Authorize URL | 授权跳转地址 |
| Token URL | 换取 access_token 的地址 |
| Userinfo URL | 获取用户信息的地址 |
| Token 字段名 | token 响应中的字段名,默认 access_token |
任何标准 OAuth2 服务(Gitee、Linux Do、自建 Keycloak 等)均可通过此方式接入。
回调地址
在对应平台创建 OAuth App 时,回调地址填:
https://<你的 Worker 域名>/oauth/callback管理员第三方登录
管理后台 → 管理员登录方式 标签页(独立标签页),支持绑定 GitHub / Google / Microsoft 三家。
绑定步骤
- 前往对应平台创建 OAuth App,回调地址同上
- 在标签页中填入该平台的 Client ID 与 Client Secret,保存
- 点击 绑定,跳转平台授权后完成绑定(记录账号 ID / 用户名 / 头像)
- 开启该平台的「允许登录」开关
绑定后,后台登录页会出现对应平台的图标按钮,点击即可免密登录。登录动作与密码登录一样会写入登录审计日志。
TIP
- 未绑定的平台即使开启开关也无法登录
- 第三方登录与密码登录、2FA 并存:第三方登录不需要输 2FA 码