# 服务端API访问鉴权
# 1. 接口访问
- toB的接口访问需要鉴权,授权申请联系王智涛处理
- 调用方需要提供出口ip进行授权
- 授权开通后,接口访问时,按下述2~4进行加签访问
# 2. 签名必须参数
字段名 | 含义 | 备注 |
---|---|---|
merchant_name | 接入用户名 | 盛趣游戏分配 |
signature_method | 签名方法 | 固定MD5 |
signature | 签名 | 使用签名密钥按照签名算法计算获得 |
timestamp | 时间戳 | 1970年以来的秒数 |
# 3. 签名算法
(1) 除signature外,其它参数包括merchant_name、 signature_method和timestamp,按照当前请求参数名的字母序进行升序排列(排序时区分大小写,如果参数名[key]相等则按value排序)
(2) 将所有参数-值组合以key=value(使用未做urlencode的value原值)的形式拼成签名原串,不同参数值之间没有任何分隔符,如:key1=value1key2=value2
(3) 签名原串最后加上merchant_name对应的secret_key,如:key1=value1key2=value2secret_key
(4) 通过(3)步产出的字符串计算出32位md5值(大小写不敏感),即为signature的值
# 4. 签名示例
(1) 请求接口路径:https://test.sdo.com/calcSign
(2) 商户名(merchant_name)为:1_22_333
(3) 签名密钥(secret_key)为:e3XttFRQd
(4) 入参:a=123&s=789&c=456
(5) 按1中方法生成的签名原串如下: a=123b=456merchant_name=1_22_333s=789signature_method=MD5timestamp=1649818786e3XttFRQd
(6) 对(5)中生成的原串进行md5计算,得:184193d993e0aa3b3633d1bbdfe875e5
(7) 最终请求串为: https://test.sdo.com/calcSign?a=123&b=456&merchant_name=1_22_333&s=789&signature_method=MD5×tamp=1649818786&signature=184193d993e0aa3b3633d1bbdfe875e5
# 5. 鉴权错误
错误码 | 错误描述 | 详细说明 |
---|---|---|
-10250031 | Server reject, no authority, remote ip is xxx.xxxx.xxx.xxx | 访问ip未授权 |
-10250017 | Server reject, no authority | 接口未对访问商户授权 |
-10250018 | Server reject, check signature failed | 算出来的签名串signature不对 |
← SDO 统一注册 SDO 服务端API →