1.App内免认证对接
- SourceId免认证方案之前有做过基于oauth协议的免认证,对接支持welink、企业微信、微信企业号、微哨、飞书等等,这些在1.9.1版本都支持。
- 在1.9.1p1版本之后sourceId新增了一种基于token的免认证方案。
2.方案简介
标准对接
- App内部嵌入一个链接,在点击链接后会重定向到SourceId 类似 https://sso.xxxx.com.cn/login?token=xxxx&service=xxxx
- App需要支持一个接口,为Sourceid返回用户信息,参数就是上面重定向的token信息。比如:https://app.xxx.com.cn/app/auth/token?token=xxxx&service=xxxx
- 完成上述两步操作即能享受与SourceId对接的所有应用的免认证操作
定制对接
App内部嵌入一个链接,在点击链接后会重定向到SourceId 类似 https://sso.xxxx.com.cn/login?token=xxxx&service=xxxxx (token参数可变)
App内有现成的接口能根据某种加密字符串返回用户信息,可能一个接口,可能两个三个接口,无所谓。只要最终能返回用户信息。都能对接
完成上述两步操作即能享受与SourceId对接的所有应用的免认证操作
学在浙江App对接
- 可以理解为一个定制对接的成功实例
3.对接步骤
3.1 根据上面介绍确定对接模式
- 确定对接方式,标准模式还是定制模式还是学在浙江对接
- 如何区分是标准模式?
- 判断APP是否支持这种模式通过token获取用户信息 https://app.xxx.com.cn/app/auth/token?token=xxxx&service=xxxx
- 当然token在header中传输也是可以的,要改下自定义脚本
- 主要判断他们的接口是一个的还是多个的。标准就支持一个接口。多个的就走定制吧
- token换用户信息的核心不会变
3.2 管理端配置入口
认证-APP认证管理-新增配置
注:对接参数要有一个固定的参数 userId-xxxx 这个参数的意思就是对端的哪个字段作为sourceId的账号,比如他们可以返回的属性id是账号,就需要配置userId-id的映射
3.3启用配置
启用后,带参数访问Sourceid才会被识别,未启用带参数访问,会被拦截。
3.4 标准对接
app实现接口根据token获取用户信息
使用access_token获取用户信息。
请求⽅式: GET/POST(HTTPS或HTTP)
请求地址: http://app.xxx.com/app/oauth/token?token=xxxxx
注:https方式类似。
请求头(header):
Content-Type:form-data
注:使用get请求时,不用添加请求头。
请求参数:
url get请求
http://app.xxx.com/app/oauth/token?token=xxxxx
参数说明:
参数 | 是否必须 | 说明 |
---|---|---|
token | 是 | 访问令牌 |
返回结果:
{
"userId": "20042020",
"name": "zhangsan",
...
}
参数说明:
参数 | 是否必须 | 说明 |
---|---|---|
userId | 是 | app返回的账号 |
3.5 定制对接
- 与app确定好对接参数
- 配置对接参数
- 编写脚本
- 开启对接
3.5 学在浙江对接
- 选择即可
- 参数和脚本会自动带出
- 开启对接