Skip to content

三方登录

三方登录用于接入微信、企业微信、钉钉等外部身份平台,让用户通过授权码完成快捷登录或账号绑定。RuoYi Office 将三方登录拆成“社交客户端”和“社交用户”两类管理能力,并在认证接口中提供授权跳转和社交快捷登录。

本地实现位置

位置
社交客户端页面ruoyi-office-vben/apps/web-antd/src/views/system/social/client
社交用户页面ruoyi-office-vben/apps/web-antd/src/views/system/social/user
用户管理 DocAlertviews/system/user/index.vue
认证 ControllerAuthController.java
社交客户端 ControllerSocialClientController.java
社交用户 ControllerSocialUserController.java

注意:后端包路径中存在历史目录名 socail,这是代码标识符,文档中描述业务时统一写作“social / 社交”。

整体链路

社交客户端

社交客户端保存各平台应用配置。表单字段来自 views/system/social/client/data.ts

字段说明
name应用名,便于管理端识别
socialType社交平台,来自字典 SYSTEM_SOCIAL_TYPE
userType用户类型,区分后台管理员、会员等
clientId客户端编号,对应平台 appKey/appId
clientSecret客户端密钥,对应平台 appSecret
agentId企业微信等场景的网页应用 ID,有则填写
publicKey部分平台需要的公钥配置
status是否启用

管理接口:

操作接口权限标识
创建客户端POST /system/social-client/createsystem:social-client:create
更新客户端PUT /system/social-client/updatesystem:social-client:update
删除客户端DELETE /system/social-client/deletesystem:social-client:delete
客户端分页GET /system/social-client/page页面查询使用
发送订阅消息POST /system/social-client/send-subscribe-message测试小程序订阅消息

社交用户

社交用户是外部平台账号与系统用户的绑定记录。页面支持按社交平台、昵称、openid、创建时间筛选,并查看 token、原始用户数据、最后一次认证 code/state 等详情。

操作接口说明
社交用户分页GET /system/social-user/page管理端列表查询
社交用户详情GET /system/social-user/get查看 openid、token、原始数据等
绑定社交用户POST /system/social-user/bind登录后绑定当前管理员账号
取消绑定DELETE /system/social-user/unbind解绑当前管理员账号
我的绑定列表GET /system/social-user/get-bind-list个人中心展示当前账号绑定关系

登录与绑定接口

AuthController 提供未登录场景的三方登录入口:

接口用途
GET /system/auth/social-auth-redirect根据 typeredirectUri 生成第三方授权 URL
POST /system/auth/social-login使用授权 code 快捷登录,适合社交账号已绑定系统用户

SocialUserController#bind 用于已登录用户绑定社交账号;AuthController#social-login 用于未登录时直接通过已绑定社交账号登录。

接入步骤

  1. 在第三方平台创建应用,配置回调地址。
  2. 在 RuoYi Office 新建社交客户端,选择平台、用户类型并填写 appId/appSecret。
  3. 在登录页或个人中心触发 /system/auth/social-auth-redirect 获取授权 URL。
  4. 第三方平台回调后,前端携带 codestate 调用绑定或登录接口。
  5. 在“社交用户”页面确认 openid、昵称、头像和原始 token 信息是否写入。

排查清单

现象排查方向
获取授权 URL 失败检查社交客户端是否启用,socialTypeuserType 是否匹配
回调后登录失败检查该 openid 是否已经绑定系统用户,或改走绑定流程
绑定成功但快捷登录失败检查用户状态、社交客户端状态和绑定记录用户类型
平台提示 redirect_uri 不合法检查第三方平台后台和前端传入的 redirectUri 是否完全一致
头像或昵称异常查看社交用户详情中的原始 User 数据,确认平台返回字段
联系我们

获取报价、演示和二开方案

微信咨询二维码

微信咨询

17156169080

添加时备注「RuoYi Office」

在线体验商业版