用户异常信息通知
合作方接入天翼账号后,可免费获得登录用户异常登录状态,包括账号冻结、禁用、解冻,短时间内多次使用不同错误密码尝试登录、是否需要验证新设备、异地登录等账号的状态,天翼账号会将账号的异常消息主动通知给合作方,让合作方可以更好的为用户提供服务。
登录用户的异常信息通知能力,是为合作方提供的差异化能力,主要是将账号异常消息以异步推送的方式通知给合作方,异常信息主要包括:
(1) 用户在非常用地进行登录,触发异地登录消息
(2) 短时间内多次使用不同错误密码尝试登录,“最后一次”错误密码登录在合作方的产品端,触发多次密码错误的信息
(3) 用户修改密码,触发改密的信息
(4) 用户开启了合作方产品的设备锁功能,并在新设备上登录合作方产品,触发账号登录的二次短信验证身份流程的信息
(5) 用户在新设备上登录合作方产品并验证身份,触发验证身份成功的信息
(6) 账号状态变更,触发系统冻结、系统禁用、解冻等的账号状态变更的信息
当用户登录了合作方的产品并触发了以上异常信息,天翼账号会将消息推送给合作方。
合作方需按照如下接口要求定义通知接口,给予天翼账号进行消息推送的对接:
| 接口名称 | accountExOperNotifyToProduct |
| 接口描述 | 账号操作通知到个产品端 |
| 承载协议 | HTTP |
| 承载网络 | 内网 |
| 请求方式 | POST |
| 数据格式 | 请求参数以form表单形式提交,返回数据类型为:Json |
| 接口URL | http://****/notify/accountExOperNotifyToProduct.do(合作方按照此接口形式定义通知接口,带*号的地方可变动) |
3.1.2 合作方通知接口的请求参数
合作方通知接口的请求参数如下:
| 字段标识 | 说明 | 数据类型 | 长度(字节) | 可空 |
|---|---|---|---|---|
| userId | 综合平台账号标识 | Long | 18 | N |
| userName | 用户名(手机、用户名、邮箱、别名等) | String | 30 | N |
| operateType | 账号操作类型未知:0异地登录:1二次认证:2多次密码错误:3改密:4账号状态变更:5 | Integer | 4 | N |
| otherInfo | 不同operateType对应不同的json | JSON | Y |
参数(otherInfo)详情:
异地登录(operateType == 1)
| 字段标识 | 说明 | 数据类型 | 长度(字节) | 可空 |
|---|---|---|---|---|
| userIp | 用户登录ip | String | 30 | N |
| loginSrc | 登录来源未知:0手机/电脑的Web/Wap端: 1客户端:2邮箱协议登录:3 | String | 4 | N |
| country | 国家名称,参考值:中国(userIp归属地) | String | 30 | N |
| province | 省份名称,参考值:广东(userIp归属地) | String | 30 | Y |
| city | 城市名称,参考值:广州(userIp归属地) | String | 30 | Y |
二次认证相关(operateType == 2)
| 字段标识 | 说明 | 数据类型 | 长度(字节) | 可空 |
|---|---|---|---|---|
| userIp | 用户登录ip | String | 30 | Y |
| loginSrc | 登录来源未知: 0手机/电脑的Web/Wap端: 1客户端:2邮箱协议登录:3 | String | 4 | N |
| country | 国家名称,参考值:中国(userIp归属地) | String | 30 | Y |
| province | 省份名称,参考值:广东(userIp归属地) | String | 30 | Y |
| city | 城市名称,参考值:广州(userIp归属地) | String | 30 | Y |
| mobileBrand | 移动设备品牌,参考值:Meizu[预留使用] | String | 30 | Y |
| mobileModel | 移动设备型号,参考值:MX6[预留使用] | String | 30 | Y |
| operateSystem | 操作系统,参考值:Window 8.1[预留使用] | String | 30 | Y |
| browerType | 浏览器类型,参考值:Chrome[预留使用] | String | 30 | Y |
| status | 二次认证状态1: 二次认证需验证新设备2:二次认证完成新设备验证 | int | 4 | N |
多次不同密码错误(operateType == 3)
| lastLoginSrc | 最近一次错误密码登录登录来源登录来源:未知:0手机/电脑的Web/Wap端: 1客户端:2邮箱协议登录:3 | String | 4 | N |
| userIp | 最近一次错误密码登录ip | String | 30 | Y |
用户改密(operateType == 4)
| masterName | 主帐号(手机/邮箱) | String | 30 | N |
| type | 改密类型说明:"000";//未知"002";//改密"003";//找回密码"004";//短信上行 | String | 10 | N |
| userIp | 用户ip | String | 30 | Y |
帐号状态变更(operateType == 5)
| userIp | 用户ip | String | 30 | Y |
| status | 状态变更说明说明:1: 系统冻结2:系统禁用3: 帐号解冻 | int | 4 | N |
| 字段标识 | 说明 | 数据类型 | 长度(字节) | 可空 |
|---|---|---|---|---|
| msg | 返回信息说明,UTF-8编码。 | String | N | |
| result | 10000表示操作成功,其他返回表示出错 | int | N | |
| detail | String | String | Y |
成功返回结果
Json示例:
{
"result":10000,
"detail":null,
"msg":"操作成功"
}
错误返回结果
{
"result":-10000,
"detail":null,
"msg":"操作失败"
}