背景:部分第三方平台需要作为独立登录源对接教育号登录,使用自己用户密码登录平台派发自己的code,然后到教育号对接第三方登录,需要教育号支持指定应用和带redirect_uri进行跳转。
数字基座应用跳转登录对接流程
sequenceDiagram
participant user as 第三方平台前端
participant 第三方平台 as 第三方平台后端
participant thirdApp as 数字基座应用
participant openidaas as 教育号
user ->> 第三方平台: 用户在第三方平台侧登录
第三方平台 -->> user: 登录成功
user ->> 第三方平台: 获取用户在第三方平台侧的code
第三方平台 -->> user: 返回第三方平台的code
user ->> openidaas: 调用pass/third_account_login消费code
openidaas ->> 第三方平台: code换token
openidaas ->> 第三方平台: token查询用户信息
openidaas ->> openidaas: 创建用户(可选),根据用户映射完成登录
openidaas -->> user: 带着教育号的code跳转到第三方应用在教育号配置的应用首页,或者通过redirect_uri跳转指定地址
opt 跳转到其余教育号应用
user ->> user: 用户点击应用
user ->> openidaas: 点击教育号应用进行跳转(open/oauth2/authorize?base_appid={第三方平台应用}&appid={targetAppId})
openidaas -->> thirdApp: 带着教育号code跳转应用首页
end