注册保护

登录保护

最近更新时间:2020-06-22 08:00:22

1. 接口描述

接口请求域名: lp.tencentcloudapi.com 。

登录保护服务(LoginProtection,LP)针对网站和 APP 的用户登录场景,实时检测是否存在盗号、撞库等恶意登录行为,帮助开发者发现异常登录,降低恶意用户登录给业务带来的风险。

默认接口请求频率限制:5000次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:QueryLoginProtection。
Version String 公共参数,本接口取值:2020-02-24。
Region String 公共参数,详见产品支持的 地域列表
LoginIp String 登录来源的外网 IP。
Uid String 用户 ID 不同的 accountType 对应不同的用户 ID。如果是 QQ,则填入对应的 openid,微信用户则填入对应的 openid/unionid,手机号则填入对应真实用户手机号(如13123456789)。
LoginTime String 登录时间戳,单位:秒。
AccountType String 用户账号类型(QQ 开放帐号、微信开放账号需要 提交工单 由腾讯云进行资格审核):
1:QQ 开放帐号。
2:微信开放账号。
4:手机号。
0:其他。
10004:手机号 MD5。
AppIdU String accountType 是 QQ 或微信开放账号时,该参数必填,表示 QQ 或微信分配给网站或应用的 AppID,用来唯一标识网站或应用。
AssociateAccount String accountType 是 QQ 或微信开放账号时,用于标识 QQ 或微信用户登录后关联业务自身的账号 ID。
NickName String 昵称,UTF-8 编码。
PhoneNumber String 手机号:国家代码-手机号, 如0086-15912345687(0086前不需要+号)。
EmailAddress String 用户邮箱地址(非系统自动生成)。
RegisterTime String 注册来源的外网 IP。
Address String 地址。
CookieHash String 用户 HTTP 请求中的 cookie 进行2次 hash 的值,只要保证相同 cookie 的 hash 值一致即可。
LoginSource String 登录来源:
0:其他
1:PC 网页
2:移动页面
3:App
4:微信公众号
LoginType String 登录方式:
0:其他
1:手动帐号密码输入
2:动态短信密码登录
3:二维码扫描登录
Referer String 用户 HTTP 请求的 referer 值。
JumpUrl String 登录成功后跳转页面。
UserAgent String 用户 HTTP 请求的 userAgent。
XForwardedFor String 用户 HTTP 请求中的 x_forward_for。
MouseClickCount String 用户操作过程中鼠标单击次数。
KeyboardClickCount String 用户操作过程中键盘单击次数。
Result String 注册结果:
0:失败
1:成功
Reason String 失败原因:
0:其他
1:参数错误
2:帐号冲突
3:验证错误
LoginSpend String 登录耗时,单位:秒。
MacAddress String MAC 地址或设备唯一标识。
VendorId String 手机制造商 ID,如果手机注册,请带上此信息。
AppVersion String App 客户端版本。
Imei String 手机设备号。
BusinessId String 业务 ID 网站或应用在多个业务中使用此服务,通过此 ID 区分统计数据。
WxSubType String 1:微信公众号
2:微信小程序
RandNum String Token 签名随机数,微信小程序必填,建议16个字符。
WxToken String 如果是微信小程序,该字段为以 ssesion_key 为 key 去签名随机数radnNum得到的值(hmac_sha256 签名算法)。
如果是微信公众号或第三方登录,则为授权的 access_token(注意:不是普通 access_token,具体看 微信官方文档)。

3. 输出参数

参数名称 类型 描述
CodeDesc String AssociateAccount

accountType 是 QQ 或微信开放账号时,用于标识 QQ 或微信用户登录后关联业务自身的账号 ID。
LoginTime

操作时间。
Uid

用户 ID 不同的 accountType 对应不同的用户 ID。如果是 QQ,则填入对应的 openid,微信用户则填入对应的 openid/unionid,手机号则填入对应真实用户手机号(如13123456789)。
LoginIp

登录 IP。
Level

0:表示无恶意。
1 - 4:恶意等级由低到高。
RiskType

风险类型。
出参不用填"Req业务侧错误码。成功时返回 Success,错误时返回具体业务错误原因。uestId"等公共出参, 详细解释>>>
注意:此字段可能返回 null,表示取不到有效值。
AssociateAccount String accountType 是 QQ 或微信开放账号时,用于标识 QQ 或微信用户登录后关联业务自身的账号 ID。
注意:此字段可能返回 null,表示取不到有效值。
LoginTime String 操作时间。
注意:此字段可能返回 null,表示取不到有效值。
Uid String 用户 ID 不同的 accountType 对应不同的用户 ID。如果是 QQ,则填入对应的 openid,微信用户则填入对应的 openid/unionid,手机号则填入对应真实用户手机号(如13123456789)。
注意:此字段可能返回 null,表示取不到有效值。
LoginIp String 登录 IP。
注意:此字段可能返回 null,表示取不到有效值。
Level Integer 0:表示无恶意。
1 - 4:恶意等级由低到高。
RiskType Array of Integer 风险类型。
RootId String accountType 是 QQ 或微信开放账号时,用于标识 QQ 或微信用户登录后关联业务自身的账号 ID。
注意:此字段可能返回 null,表示取不到有效值。
RequestId String 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 登录保护接口示例

输入示例

https://lp.tencentcloudapi.com/?Action=QueryLoginProtection
&AccountType=10004
&Uid=bfd81ee3ed27ad31c95ca75e21365973
&LoginIp=101.231.62.66
&LoginTime=1582029456
&<公共请求参数>

输出示例

{
  "Response": {
    "Level": 1,
    "LoginIp": "101.231.62.66",
    "LoginTime": "1582029456",
    "RiskType": [
      1,
      22
    ],
    "CodeDesc": "Success",
    "Uid": "bfd81ee3ed27ad31c95ca75e21365973"
  }
}

5. 开发者资源

API Explorer

该工具提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力,能显著降低使用云 API 的难度,推荐使用。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
AuthFailure.CapSigError 验证码签名错误。
AuthFailure.Expired 请求过期。
InternalError 内部错误。
InternalError.BackendLogicError 业务系统逻辑错误。
InternalError.SignBackendError Sign后端错误。
InvalidParameter.CapSigError 验证码签名错误。
InvalidParameter.ParamError 参数错误。
InvalidParameter.UrlError URL错误。
InvalidParameter.VersionError 版本错误。
InvalidParameterValue.BadBody BadBody。
InvalidParameterValue.BodyTooLarge 请求包过大。
InvalidParameterValue.CapMisMatch 验证码不匹配。
InvalidParameterValue.HttpMethodError HTTP方法错误。
LimitExceeded.FreqCnt 超过配额。
LimitExceeded.IpFreqCnt 超过配额(用户IP)。
LimitExceeded.KeyFreqCnt 关键词频控限制。
LimitExceeded.ReplayAttack 重放攻击。
ResourceNotFound.InterfaceNotFound 接口不存在。
ResourceUnavailable.PermissionDenied 未开通服务权限。
UnauthorizedOperation.AuthFailed 鉴权失败。
UnknownParameter.SecretIdNotExists 密钥不存在。
目录