受信第三方免密登录
第三方可以通过免密登录生成特定 tenantId, teacherId 的免密登录 code,使用该 code 进入飞象星球应用后,自动获得飞象星球的登录态。
- 第三方仅可对有权限访问的 tenantId, teacherId 生成免密登录 code,无权限时免密登录将会失败。
免密登录流程
- 第三方使用 appId, appSecret, tenantId, teacherId计算出此次免密登录请求的 Code。
- 第三方携带免密登录 Code 和 redirectUrl 打开飞象提供的中间页,验证通过后飞象负责跳转到实际的飞象功能页。
- 免密登录中间页对免密登录 Code 进行校验,成功获得飞象星球登录态后,自动跳转至 redirectUrl。
免密登录 Code 计算方式
- 使用 appId, tenantId, teacherId, requestTimestampInSecond 计算规范请求串
requestStr = base64Encode(requestTimestampInSecond + '\n' +appId + '\n' + teacherId + '\n' + tenantId)
- 使用 appSecret 计算签名
sign = HexEncode(HMAC_SHA256(appSecret, requestStr))
- 拼接 Code
Code = sign + '_' + requestStr
免密登录中间页
地址:https://login.feixiangxingqiu.com/#/nydus?code={Code}&redirectUrl={redirectUrl}
参数说明:
参数名 | 说明 |
---|---|
code | 前一步骤计算出的免密登录 Code |
redirectUrl | 免登完成后要跳转的飞象星球应用地址 |
注意事项
注意
如果使用 iframe 的方式嵌套接入,由于 cookie 的跨域限制,需要保证 login.feixiangxingqiu.com
和 redirectUrl
均使用 https 协议。
如果使用的是 safari 浏览器,还需要保证偏好设置中没有禁用第三方 cookie,具体步骤为:
1、点击屏幕左上角的“Safari浏览器”,选择“偏好设置”
2、打开偏好设置后,选择“隐私”
3、打开隐私设置后,取消“阻止所有Cookie”前面的勾选。
注意:如果该选项本来就没有勾选,可以按照下面的步骤操作
4、如果上面的选项本来就没有勾选,则取消“阻止跨站跟踪”前面的勾选。
5、接下来点击选择“管理网站数据”
6、打开对话框后,在右上角的搜索框中输入 feixiangxingqiu
。
7、在搜索到的列表中,把所有带有 feixiangxingqiu
的网址选项全部选中,然后点击左下角的“移除”
8、最后点击右下角的“完成”,关闭即可。