设备接入 IOTDA-HTTPS协议接入:设备鉴权接口说明
设备鉴权接口说明
设备鉴权接口鉴权通过后才能建立设备与平台间的业务处理连接。鉴权成功后平台返回access_token,调用属性上报、消息上报等其他接口时,都需要携带access_token信息。如果access_token超期,需要重新认证设备获取access_token。如果access_token未超期重复获取access_token,原access_token在未超期前保留30s,30s之后失效。
请求方法 |
POST |
---|---|
URI |
/v5/device-auth |
传输协议 |
HTTPS |
名称 |
必选 |
类型 |
位置 |
说明 |
---|---|---|---|---|
device_id |
是 |
String |
Body |
参数说明: 设备ID,用于唯一标识一个设备。在注册设备时直接指定,或者由 物联网平台 分配获得。由物联网平台分配时,生成规则为"product_id" + "_" + "node_id"拼接而成。 取值范围:长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 取值范围: 长度1-128 |
sign_type |
是 |
Integer |
Body |
参数说明: 密码校验方式: 0 代表HMA CS HA256校验时间戳时不会校验消息时间戳与平台时间是否一致,仅判断密码是否正确; 1 代表HMACSHA256校验时间戳时会先校验消息时间戳与平台时间是否一致,再判断密码是否正确。 取值范围: 大小0~1 |
timestamp |
是 |
String |
Body |
参数说明: 时间戳:为设备连接平台时的UTC时间,格式为YYYYMMDDHH,如UTC 时间2018/7/24 17:56:20 则应表示为2018072417。 取值范围: 固定长度10 |
password |
是 |
String |
Body |
参数说明: password的值为使用“HMACSHA256”算法对secret进行签名后的密钥(以时间戳为key,对平台返回的secret进行签名后的值,参考密钥生成工具)。secret为注册设备时平台返回的secret。 取值范围: 固定长度64 |
名称 |
类型 |
说明 |
---|---|---|
access_token |
String |
参数说明: 设备token,用于设备鉴权。 取值范围: 长度32-256 |
expires_in |
Integer |
参数说明: 鉴权信息的剩余有效时间, 单位:秒。 |
请求示例如下:
POST https://{endpoint}/v5/device-auth Content-Type: application/json { "device_id" : "********", "sign_type" : 0, "timestamp" : "2019120219", "password" : "********" }
响应示例如下:
Status Code: 200 OK
Content-Type: application/json { "access_token" : "********", "expires_in" : 86399 }
HTTP状态码 |
HTTP状态码描述 |
错误码 |
错误码描述 |
错误码中文描述 |
---|---|---|---|---|
200 |
OK |
- |
- |
- |
400 |
Bad Request |
IOTDA.000006 |
Invalid input data. |
请求参数不合法 |
401 |
Unauthorized |
IOTDA.000002 |
Authentication failed. |
鉴权失败 |
403 |
Forbidden |
IOTDA.021101 |
Request reached the maximum rate limit. |
请求已经达到限制速率 |
IOTDA.021102 |
The request rate has reached the upper limit of the tenant, limit %s. |
请求已经达到租户的限制速率 |