docs: 核查并润色文档,对齐项目实际实现

- 删除未经验证的环境要求(Docker 版本号、浏览器条目)与括号废话
- 故障排查改为真实处理路径(升级→重新发布→强制同步→重建 Agent→提交 issue),删除仅开发时用的排障章节
- 删除设计文档中的测试与验收、实现检查清单、贡献者阅读建议等开发内容
- 修正与代码不符的事实:reset-passwd 命令名、证书续签窗口 7 天、Pages 检查间隔 1440 分钟、Relay vhost 端口 8080、SSO 仅支持 OIDC 等
- 去除口语化表述与无意义括号,改写「不是…而是…」句式
- 同步修正文档站链接锚点,构建验证通过
This commit is contained in:
ryan
2026-08-16 17:49:57 +08:00
parent 4e3d79c001
commit 600a7acdfb
37 changed files with 275 additions and 517 deletions
+23 -44
View File
@@ -1,72 +1,51 @@
# SSO 登录配置
你会学到:如何为 OpenFlare 配置 GitHub OAuth 或标准 OIDC 登录入口,如何填写回调地址,以及第三方账号如何绑定本地用户。
你会学到:如何为 OpenFlare 配置 OIDC 第三方登录入口、填写回调地址,以及第三方账号如何绑定本地用户。
OpenFlare 支持通过认证源配置第三方登录入口。当前支持 GitHub OAuth 与标准 OIDC Provider,例如 Logto、authentik、Keycloak、Casdoor 等。
OpenFlare 通过 OIDC 认证源接入第三方登录。任意提供标准 OIDC Discovery 的服务(如 Google、Keycloak、authentik、Logto、Casdoor 等)都可以接入。
认证源配置完成并启用后,会显示在登录页的第三方账号登录区域。用户可以通过第三方账号登录,也可以在已登录状态下把第三方账号绑定到当前本地账号。
## 使用前准备
你需要先准备:
| 项目 | 说明 |
| --- | --- |
| OpenFlare 访问地址 | 用户浏览器实际访问的地址,例如 `https://openflare.example.com` |
| 认证源名称 | OpenFlare 内部唯一标识,例如 `github`、`company-oidc` |
| 服务器访问地址 | 在管理端「系统设置」->「系统设置」选项卡 ->「通用设置」中配置,须与用户浏览器实际访问的地址一致(协议、域名、端口) |
| 认证源名称 | OpenFlare 内部唯一标识,例如 `company-oidc` |
| Client ID | 第三方平台创建应用后提供 |
| Client Secret | 第三方平台创建应用后提供 |
| OIDC Discovery URL | 仅 OIDC 需要,例如 `https://idp.example.com/.well-known/openid-configuration` |
| OIDC Discovery URL | 例如 `https://idp.example.com/.well-known/openid-configuration` |
**确认系统设置->通用设置->服务器地址能正确和域名匹配**
认证源名称只能包含字母、数字、短横线或下划线,并且必须以字母或数字开头。认证源名称会出现在回调地址中,保存后如需修改名称,也必须同步修改第三方平台中的回调地址。
认证源名称只能包含字母、数字、短横线或下划线,并且必须以字母或数字开头。
## 回调地址
第三方平台中的 Redirect URI / Callback URL 填写格式为:
第三方平台中的 Redirect URI / Callback URL 固定填写:
```text
<OpenFlare 访问地址>/oauth/<认证源名称>
<服务器访问地址>/login
```
示例:
例如服务器访问地址为 `https://openflare.example.com` 时:
```text
https://openflare.example.com/oauth/github
https://openflare.example.com/oauth/company-oidc
https://openflare.example.com/login
```
在管理端新增或修改认证源时,表单会根据当前浏览器访问地址和你输入的认证源名称自动显示应填写的回调地址。
## 配置 GitHub 登录
1. 在 GitHub 创建 OAuth App。
2. `Homepage URL` 填写 OpenFlare 访问地址。
3. `Authorization callback URL` 填写 OpenFlare 显示的回调地址,例如 `https://openflare.example.com/oauth/github`。
4. 复制 GitHub 提供的 Client ID 和 Client Secret。
5. 登录 OpenFlare 管理端,进入左侧导航 **「系统设置」** (Settings),选择 **「安全设置」** 选项卡,在 **「认证源管理」** 栏目中进行配置。
6. 新增认证源,类型选择 `GitHub`。
7. 填写认证源名称、展示名称、Client ID、Client Secret。
8. Scope 默认使用 `user:email`,通常无需修改。
9. 保存并启用认证源。
启用后,登录页会显示对应的 GitHub 登录按钮。
回调地址只与「服务器访问地址」相关,不包含认证源名称。第三方平台授权完成后会跳转到该地址,OpenFlare 登录页携带授权码完成登录或绑定。
## 配置 OIDC 登录
1. 在 OIDC Provider 中创建应用或客户端。
2. 应用类型选择 Web / Confidential Client。
3. Redirect URI / Callback URL 填写 OpenFlare 显示的回调地址,例如 `https://openflare.example.com/oauth/company-oidc`。
4. 复制 Client ID 和 Client Secret。
5. 获取 Provider 的 Discovery URL,通常以 `/.well-known/openid-configuration` 结尾。
6. 登录 OpenFlare 管理端,进入左侧导航 **「系统设置」** (Settings),选择 **「安全设置」** 选项卡,在 **「认证源管理」** 栏目中进行配置。
7. 新增认证源,类型选择 `OIDC`。
8. 填写认证源名称、展示名称、Client ID、Client Secret、OIDC Discovery URL。
9. Scope 默认使用 `openid profile email`。如果 Provider 限制了 scope,请按 Provider 允许的值调整。
10. 保存并启用认证源。
1. 在 OIDC Provider 中创建应用或客户端,应用类型选择 Web / Confidential Client。
2. Redirect URI / Callback URL 填写 `<服务器访问地址>/login`。
3. 复制 Client ID 和 Client Secret。
4. 获取 Provider 的 Discovery URL,通常以 `/.well-known/openid-configuration` 结尾。
5. 登录 OpenFlare 管理端,进入左侧导航 **「系统设置」**,选择 **「安全设置」** 选项卡,在 **「认证源管理」** 栏目中新增认证源。
6. 类型选择 `OIDC`,填写认证源名称、展示名称、Client ID、Client Secret、OIDC Discovery URL。
7. Scope 默认使用 `openid profile email`。如果 Provider 限制了 scope,请按 Provider 允许的值调整。
8. 保存并启用认证源。
启用后,登录页会显示对应的 OIDC 登录按钮。
启用后,登录页会显示对应的第三方登录按钮。
## 登录与绑定行为
@@ -85,17 +64,17 @@ https://openflare.example.com/oauth/company-oidc
修改认证源时,Client Secret 输入框留空表示保留已有密钥;填写新值则会覆盖保存。
如果修改了认证源名称,回调地址也会随之变化。你必须到第三方平台同步修改 Redirect URI / Callback URL,否则第三方平台会拒绝回调或返回错误。
修改认证源名称不会影响回调地址,无需同步修改第三方平台配置。
## 常见问题
### 返回 `invalid_scope`
说明第三方平台不允许当前配置的 Scope。OIDC 默认 Scope 是 `openid profile email`,GitHub 默认 Scope 是 `user:email`。请到认证源编辑页调整 Scope,或在第三方平台放行对应 Scope。
说明第三方平台不允许当前配置的 Scope。OIDC 默认 Scope 是 `openid profile email`。请到认证源编辑页调整 Scope,或在第三方平台放行对应 Scope。
### 提示回调地址不匹配
检查第三方平台中配置的 Redirect URI / Callback URL 是否与 OpenFlare 表单提示完全一致。协议、域名、端口和路径都必须一致。
检查第三方平台中配置的 Redirect URI / Callback URL 是否与 `<服务器访问地址>/login` 完全一致。协议、域名、端口和路径都必须一致。
### 登录页没有显示第三方登录按钮