| 序号 | 条件 | 说明 |
|---|---|---|
| 1 | OAuth 2.0 提供方 | 已部署或注册支持 OAuth 2.0 授权码模式的应用或服务 |
| 2 | Authorization URL | OAuth 2.0 授权端点地址 |
| 3 | Token URL | OAuth 2.0 Token 端点地址 |
| 4 | UserInfo URL | OAuth 2.0 用户信息端点地址 |
| 5 | Client ID | 在 OAuth 2.0 提供方注册应用后获得的客户端标识 |
| 6 | Client Secret | 在 OAuth 2.0 提供方注册应用后获得的客户端密钥 |
| 7 | 回调地址 | 专属集成平台的回调地址,格式为 {平台域名}/api/auth/callback/oauth2 |
提示:OAuth2 认证源支持多种社交登录场景,如 Github、GitLab、微信开放平台等。 不同提供方的参数取值请参照其开发者文档。
| 参数 | 必填 | 说明 | 示例 |
|---|---|---|---|
| 认证源名称 | 是 | 在登录页显示的认证源名称 | Github登录 |
| Authorization URL | 是 | OAuth 2.0 授权端点,用户将跳转至此进行授权 | https://github.com/login/oauth/authorize |
| Token URL | 是 | OAuth 2.0 Token 端点,用于用授权码换取 Access Token | https://github.com/login/oauth/access_token |
| UserInfo URL | 是 | 用户信息端点,用于获取当前授权的用户基本信息 | https://api.github.com/user |
| Client ID | 是 | 注册应用后获得的 Client ID | abc123def456 |
| Client Secret | 是 | 注册应用后获得的 Client Secret | ******** |
| Scopes | 否 | 请求的授权范围,多个以空格分隔 | read:user user:email |
| 认证源图标 | 否 | 上传图标文件,支持 PNG/JPG,建议 64×64px | — |
重要:OAuth 2.0 认证源默认使用授权码模式(Authorization Code Grant),这是 OAuth 2.0 中安全性最高的授权方式。请勿使用隐式模式或密码模式配置。
注意:Scopes 参数为可选,具体取值取决于 OAuth 2.0 提供方支持的范围。留空表示使用提供方默认 scope。
{平台域名}/api/auth/callback/oauth2)。警告:回调地址必须与 OAuth 2.0 提供方配置完全一致。部分提供方(如 Github)会严格校验回调地址的前缀匹配,请确保配置准确无误。
| 提供方属性 | 平台字段 | 必填 | 说明 |
|---|---|---|---|
id 或 sub | username | 是 | 用户在 OAuth 2.0 提供方的唯一标识 |
email | email | 是 | 用户邮箱地址 |
name 或 display_name | display_name | 是 | 用户显示名称 |
login 或 username | nickname | 否 | 用户昵称 |
avatar_url | avatar | 否 | 用户头像 URL |
提示:不同 OAuth 2.0 提供方返回的用户信息字段名称可能不同,请参照提供方的 API 文档调整属性映射 key 名称。
提示:创建后可随时点击认证源对应行的 编辑 测试属性映射是否正确。
| 测试项 | 验证方法 | 预期结果 |
|---|---|---|
| 认证源连通性 | 在认证源列表中点击 测试连接 | 提示连接成功 |
| 登录跳转 | 打开登录页,点击该认证源图标 | 正确跳转至 OAuth 2.0 提供方授权页面 |
| 用户授权 | 在提供方页面完成授权 | 成功跳回平台并完成登录 |
| 属性映射 | 登录后查看用户中心个人信息 | 用户名、邮箱、显示名称与提供方一致 |
| 拒绝授权 | 在提供方页面拒绝授权 | 平台显示"授权已取消"提示,不创建用户 |