API 接口鉴权规范

设计原则:接口无状态(幂等),兼容各个客户端(app-ios/app-android/mweb/小程序等等)

Api 接口鉴权规范-1.0-md5签名

 

Api 登录,采用Auth鉴权方式验证API请求合法性,即所有API Http Header请求需包含以下公共参数:

1. Epay-Auth-User-Id 用户Id

2. Epay-Auth-Timestamp 请求时客户端时间错,以此设置过期时间

3. Epay-Auth-Type 授权类型(AUTH_BASE[无需登录]/AUTH_USER)

4. Epay-Auth-Sign 客户端根据签名规则生成的加密串

5. appSecret(该字段不在Http header 传输,由客户端和服端约定好,版本一旦发布,不可更换)Api交互的通讯密钥,比如:“AWRDuwh!@!#!asd” 区分大小写

 

签名规则:

AUTH_BASE

MD5(SECRET_KEY + timestamp + userId + getToken(Long.parseLong(userId)))

AUTH_USER 

MD5(SECRET_KEY + timestamp)

 

Api 接口鉴权规范-2.0-jwt-token

 

Api 登录,采用Auth鉴权方式验证API请求合法性,即所有API Http Header请求需包含以下公共参数:

1. Epay-Auth-User-Id 用户Id

2. Epay-Auth-Timestamp 请求时客户端时间错,以此设置过期时间

3. Epay-Auth-Type 授权类型(AUTH_BASE[无需登录]/AUTH_USER)

4. Epay-Auth-Token 客户端根据签名规则生成的加密串

5. 登录成功之后服务端会返回token(jwt-token),AUTH_USER 所有请求都带着该token

6. 其他参数channel(ios/android...)/sys-version/sys-model/geo/deviceid/area

 

你可能感兴趣的:(技术总结)