模块说明
1.9.0版本对应用开放实名核身接口,包括第三方身份源实名核身
一、获取第三方身份源跳转url(1.9版本)
功能介绍:
- 应用需要对接到sso开启单点登录和实名服务配置
- 根据应用的clientId和clientSecret获取应用token 参考 获取Token方式一:获取access_token
- 调用该接口返回应用调用链接
请求方式: POST(HTTPS或HTTP)
请求地址: https://{selfServer}/linkid/public/api/aggregate/realname/auth
请求头信息:
Content-Type: application/json; charset=utf-8
Authorization: Bearer xxxx
请求参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
type | String | 是 | 认证类型 2-第三方身份源 |
data | Map | 是 | 类型对应的参数 |
name | String | 是 | (放data里)姓名 |
certType | String | 是 | (放data里)证件类型 1:居民身份证 15:港澳居民来往内地通行证 16:港澳居民居住证 17:台湾居民居住证 8:台湾居民来往内地通行证 A:护照 Z:其他 |
certNo | String | 是 | (放data里)证件号 |
redirectUri | String | 是 | 认证后跳转地址要encode |
第三方身份源核身请求实例:
{
"type": "2",
"data": {
"param1": "参数1",
"param2": "参数2"
},
"redirectUri": "认证后跳转地址"
}
响应实例:
{
"code": 200,
"message": "OK",
"data": "https://{selfServer}/public/xxx.html"
}
二、应用请求上一步返回的url(1.9版本)
地址实例
调用逻辑
- 启动摄像头,活体检测,拍照,人脸比对是否本人
- 下发st到应用即第一步传的 redirectUri 如: http://{redirectUri}/callback?at=xxxxx
查询认证结果
请求方式: GET(HTTPS或HTTP)
请求地址: https://{selfServer}/linkid/public/api/aggregate/realname/query/{at}
请求头信息:
Content-Type: application/json; charset=utf-8
Authorization: Bearer xxxx
请求参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
at | String | 是 | 上一步返回的at |
请求实例:
https://{server}/linkid/public/api/aggregate/realname/query/ec2c944bb8624d6ab00bbec4fea7993b
响应参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
realNameResult | boolean | 是 | true 成功 false 失败 |
registerData | Object | 是 | 上一步的data字段中的数据 |
响应实例:
{
"code": 200,
"message": "OK",
"data": {
"realNameResult":true,
"registerData": {
"name": "xxx",
"certType": "",
"certNo": "",
"param1": "参数1",
"param2": "参数2"
}
}
}
三、实名核身对外的接口(1.9版本)
请求方式: POST(HTTPS或HTTP)
请求地址: https://{server}/linkid/public/api/aggregate/realname/validate
请求头信息:
Content-Type: application/json; charset=utf-8
Authorization: Bearer xxxx
请求参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
parameters | object | 是 | 认证数据: 第三方数据源: name-姓名, certType-证件类型, certNo-证件号, idPicture-人脸照片, base64 北京ca(待补充): |
type | int | 是 | 认证类型:2-第三方身份源 |
请求示例:
{
"type":2,
"parameters": {
"name": "xxx",
"certType": "",
"certNo": "",
"idPicture": "xxxxxxx/xxx/jpg"
}
}
// 证件类型字典说明,目前身份证件类型支持“居民身份证”
{
"label" : "居民身份证",
"value" : "1"
},
{
"label" : "港澳居民来往内地通行证",
"value" : "15"
},
{
"label" : "港澳居民居住证",
"value" : "16"
},
{
"label" : "台湾居民居住证",
"value" : "17"
},
{
"label" : "台湾居民来往内地通行证",
"value" : "8"
},
{
"label" : "护照",
"value" : "A"
},
{
"label" : "其他",
"value" : "Z"
}
返回参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
realNameResult | boolean | 是 | 实名验证结果, true成功, false失败 |
返回示例:
{
"code": 200,
"message": "OK",
"data": {
"realNameResult":true
}
}
四、第三方数据源验证需要提供的能力接口(1.9版本)
请求方式: POST(HTTPS或HTTP)
请求地址: 需要第三方数据源提供
请求头信息:
Content-Type: application/json; charset=utf-8
Authorization: Bearer xxxx
请求参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
metaData | Map |
true | 配置数据 eg:应用id,公钥,私钥 |
parameters | Map |
true | 请求参数 eg:姓名,证件类型,证件号码,照片 |
请求实例:
{
"metaData": {
"appId": "xxx",
"privateKey": "xxx",
"publicKey": ""
},
"parameters": {
"name": "xxx",
"certType": "",
"certNo": "",
"face": ""
}
}
响应参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
result | boolean | 是 | true 成功 false 失败 |
failReason | String | 否 | 失败原因 |
bsn | String | 否 | 业务流水号 |
响应实例:
{
"code": 200,
"message": "OK",
"data": {
"result": true,
"failReason": "",
"bsn": ""
}
}
五、应用实名核身接口(1.9.1版本)
应用从ldap等查询需要实名核身,可以请求下面接口完成实名核身
请求方式: GET(HTTPS或HTTP)
请求地址: https://sso.xxx.edu.cn/appreal/public/start/{appId}?service=xxxxx&userId=xxxx&platform=xxxx
请求参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
appId | String | true | 应用id |
service | String | true | 应用地址 |
userId | String | true | 用户账号 |
platform | String | true | PC还是PHONE |
请求实例:
https://sso.xxx.edu.cn/appreal/public/start/{appId}?service=https://id26.rghall.com.cn/&userId=admin&platform=xxxx
响应参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
realNameUrl | String | true | 实名核身地址 |
qrUrl | String | true | 二维码跳转地址 |
appUrl | String | true | 应用地址 |
appId | String | true | 应用id |
reason | String | true | 失败原因 |
userId | String | true | 账号 |
响应实例:
是一个跳转地址,成功的话应用重定向到应用
https://s10sso.rghall.com.cn/public/client/realname/pc/intercept?realNameUrl=&qrUrl=https:%2F%2Fs10sso.rghall.com.cn%2Fappreal%2Fpublic%2Fstart%2F62397d04cf978600013ee242%3Fservice%3Dhttp%253A%252F%252F172.17.9.115%252Feportal%252Findex.jsp&appUrl=http:%2F%2F172.17.9.115%2Feportal%2Findex.jsp&appId=62397d04cf978600013ee242&platform=PC&reason=%E5%AE%9E%E5%90%8D%E6%A0%B8%E8%BA%AB%EF%BC%8C%E8%AF%81%E4%BB%B6%E7%B1%BB%E5%9E%8B%E4%B8%8D%E8%83%BD%E4%B8%BA%E7%A9%BA&userId=admin
查询实名核身结果日志
请求方式: GET(HTTPS或HTTP)
请求地址: https://sso.xxx.edu.cn/appreal/public/result/{appId}?platform=xxxx
请求参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
appId | String | true | 应用id |
platform | String | true | PC还是PHONE |
请求实例:
https://sso.xxx.edu.cn/appreal/public/start/{appId}?platform=xxxx
响应参数:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
realNameUrl | String | true | 实名核身地址 |
qrUrl | String | true | 二维码跳转地址 |
appUrl | String | true | 应用地址 |
appId | String | true | 应用id |
reason | String | true | 失败原因 |
userId | String | true | 账号 |
响应实例:
是一个跳转地址,成功的话应用重定向到应用
https://s10sso.rghall.com.cn/public/client/realname/pc/intercept?realNameUrl=&qrUrl=https:%2F%2Fs10sso.rghall.com.cn%2Fappreal%2Fpublic%2Fstart%2F62397d04cf978600013ee242%3Fservice%3Dhttp%253A%252F%252F172.17.9.115%252Feportal%252Findex.jsp&appUrl=http:%2F%2F172.17.9.115%2Feportal%2Findex.jsp&appId=62397d04cf978600013ee242&platform=PC&reason=%E5%AE%9E%E5%90%8D%E6%A0%B8%E8%BA%AB%EF%BC%8C%E8%AF%81%E4%BB%B6%E7%B1%BB%E5%9E%8B%E4%B8%8D%E8%83%BD%E4%B8%BA%E7%A9%BA&userId=admin
接口调用失败请查看开发指南-Token与Api调用失败须知