全部产品
云市场

用户一致性验证

更新时间:2020-03-20 16:43:08

背景

某些业务场景对同步的数据有很高的安全性要求,为了确保推送的目标用户就是当前登录的用户而没有被伪造,需要进行用户一致性验证。而数据同步服务就提供了这样的高级功能,供用户开启使用。其基本原理是:

  • 当客户端连接到服务器端时,上报用户标示和授权 token(如 sessionId)数据。
  • 服务器端可以调用一个由租户实现的一致性验证接口,通过这个接口,由租户来控制是否一致。数据同步服务会记录下是否一致的标识。
  • 对于高安全要求的同步配置,租户可以开启一致性验证,数据只会推送到通过一致性验证的用户设备上。对于未开启一致性验证的同步配置,则会忽略一致性验证结果。

配置一致性验证接口

操作入口

选定 App 的 后台服务管理 > 移动网关 页面,添加API,详情参见 移动网关 > API 管理

接口名称

添加 API 的 operationType 必须为 com.antcloud.session.validate。请求参数配置如下:

名称 类型及长度要求 是否必须 示例 描述
instanceId String workspaceId_appId 的字符串。
userId String 20880939 用户 ID。
sessionId String 客户端携带的授权 token。

返回参数

实现一个一致性检验逻辑,需要返回数据格式为 JSON 格式,示例如下:

  1. {
  2. "response": {
  3. "resultCode": "OK",
  4. "resultMsg": "Operation is done successfuly",
  5. "success": "true",
  6. "result": {
  7. "sid": "kkdddd",
  8. "valid":"true/false",
  9. }
  10. }
  11. }

各属性含义解释:

名称 类型 示例 描述
success boolean true/false 业务调用是否成功,成功返回 true,失败返回 false。失败的情况下,通过 returnCode 查看失败原因,可参考下方的 业务结果码
returnCode String ERROR 结果码。
resultMsg String SYSTEM-ERROR 结果信息。
sid String kkdddd 授权 token,或者 sessionId。
valid boolean true/false 验证结果。

业务结果码

结果 结果码 含义
true OK 业务成功。
false OPERATION_ERROR OPERATION 错误, 只处理 com.antcloud.session.validate 接口。