获取授权令牌
# 获取授权令牌
下章节API列表的调用都需要身份认证鉴权,采用OAuth2.0客户端模式Client Credentials授权。
具体介绍详见OAuth2.0官网 https://oauth.net/2/
即采用appKey、appSecret获取accessToken
# 身份鉴权流程

# 鉴权API
接口地址: https://api.zkbiocloud.com/open/oauth/v1/token/business?appKey=XXXXXXXX&unitId=XXXXXXXX×tamp=XXXXXXXX&nonce=XXXXXXXX&sign=XXXXXXXX
请求方式: GET
请求参数:
| 属性名称 | 属性描述 | 类型 | 是否必填 | 备注 |
|---|---|---|---|---|
| appKey | 应用Key | String | 是 | 开发者创建应用AppKey。 |
| unitId | 主体Id | String | 是 | 开通熵基智联,返回主体Id:unitId。详见 开通熵基智联 |
| timestamp | 时间戳 | Long | 是 | 当前时间,Unix毫秒时间戳,用于防止请求重放攻击(时间戳有效期为5分钟)。 |
| nonce | 随机数 | String | 是 | 8位长度字符串随机数。与timestamp结合使用,用于防止请求重放攻击。 |
| sign | 签名 | String | 是 | 签名:MD5-32 (appKey + unitId + secureCode + timestamp + nonce)MD5加密,32位小写. secureCodes是开通熵基智联,返回主体安全码:secureCode。详见 开通熵基智联 |
返回数据:
| 属性名称 | 类型 | 是否必填 | 属性描述 |
|---|---|---|---|
| code | String | 是 | 错误编码, 0000。 |
| accessToken | String | 是 | 获取到凭证,最长为512字节。 |
| expiresIn | Long | 是 | 过期时间(秒)。 |
请求报文示例:
POST /open/oauth/v1/token HTTP/1.1
Host: api.zkbiocloud.com
Content-Type:application/json
appKey=a4f********b324×tamp=1607328210999&nonce=123412323&sign=a4f********b324
1
2
3
4
5
2
3
4
5
成功数据包返回样例:
{
"code" : "00000000",
"accessToken" :"7A2C8DcpDQO4QCyTJT67zxSjytsfOV4u3Ogi6cGognaIdCulxXuqDL4KPlCjL8zQ",
"expiresIn" : 7200
}
1
2
3
4
5
2
3
4
5
异常码说明:
- 如果返回code不等于 ”00000000“,则调用失败,返回错误信息msg。
- 具体异常码,请查阅统一异常码说明。
注意事项:
开发者需要缓存AccessToken,用于后续接口的调用。
(注意:不能频繁调用该接口,否则会受到频率拦截)。
当access_token失效或过期时,需要重新获取。
AccessToken的有效期通过返回的expiresIn来传达,正常情况下为7200秒(2小时)。
过期后需要重新获取,返回新的AccessToken。
所有API接口(获取token的接口除外),头部都需要放入Authorization属性。
格式规范 Authorization: “Bearer ” + accessToken。