用户异常信息通知
合作方接入天翼账号后,可免费获得登录用户异常登录状态,包括账号冻结、禁用、解冻,短时间内多次使用不同错误密码尝试登录、是否需要验证新设备、异地登录等账号的状态,天翼账号会将账号的异常消息主动通知给合作方,让合作方可以更好的为用户提供服务。
登录用户的异常信息通知能力,是为合作方提供的差异化能力,主要是将账号异常消息以异步推送的方式通知给合作方,异常信息主要包括:
(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":"操作失败" }