V2.0 List Certificate¶
显示设备绑定的证书列表。
该 API 支持在 EnOS 2.1.0 及以上环境中使用。
操作权限¶
使用此 API 前,确保服务账号已被授予包含下列服务和操作权限的策略。有关授权服务账号的更多信息,参见 管理服务账号。
需授权的服务 |
所需操作权限 |
---|---|
证书 |
Read |
请求格式¶
GET https://{apigw-address}/connect-service/v2.0/certificates?action=list
请求参数 (URI)¶
备注
以下非必需字段中,必须提供 assetId
或 productKey
+ deviceKey
的组合,用于指定设备。
名称 |
位置(Path/Query) |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
orgId |
Query |
必需 |
String |
资产所属的组织 ID。如何获取 orgId 信息>> |
assetId |
Query |
可选(见上述注解) |
String |
资产 ID。如何获取 assetId 信息>> |
productKey |
Query |
可选(见上述注解) |
String |
设备的 product key,需与 |
deviceKey |
Query |
可选(见上述注解) |
String |
设备的 device key,需与 |
响应参数¶
名称 |
数据类型 |
描述 |
---|---|---|
data |
DeviceCertDetailInfo 结构体数组 |
返回的证书列表。在大多数情况下,只有一个证书会被返回。如果资产有多个证书,只有一个是有效的。有关 DeviceCertDetailInfo 的定义,见 |
DeviceCertDetailInfo 结构体¶
名称 |
数据类型 |
描述 |
---|---|---|
certSN |
String |
证书编号。 |
cert |
String |
申请到的证书内容。 |
certStatus |
Integer |
证书状态: - 0: Valid - 1: Revoked - 2: Expired |
issuer |
String |
签发者信息。 |
subject |
String |
请求主体信息。 |
signDate |
long |
签发时间时间戳。 |
effectiveDate |
long |
证书开始生效的时间戳。 |
expireDate |
long |
证书过期的时间戳。 |
revoker |
String |
|
revokerReason |
String |
|
错误码¶
代码 |
类型 |
描述 |
解决方法 |
---|---|---|---|
99400 |
invalid argument: Device identifier is invalid |
设备标识符无效。 |
在请求中声明 |
99400 |
Call ca error!: Certificate service err info:, code: (code), message: (message content), detail message: (detailed message content) |
调用EnOS证书服务参数异常。 |
详细错误信息原因由message或 detail message给出。 |
99400 |
Query cert is failed!message: (message content), detail message: (detailed message content) |
查询证书失败。 |
详细错误信息原因由message或 detail message给出。 |
99400 |
When calling Certificate Services, the call parameters are invalid.message: (message content), detail message: (detailed message content) |
当调用证书服务时,调用参数无效。 |
详细错误信息原因由message或 detail message给出。 |
11404 |
Device cannot be found |
设备未找到。 |
确认该设备确实存在。 |
99500 |
Internal error of certificate service |
设备连接与管理证书服务内部错误。 |
联系管理员。 |
99500 |
Internal error of product service. |
设备连接与管理产品服务内部错误。 |
联系管理员。 |
99500 |
Internal error of IoT hub service |
设备连接与管理内部服务错误。 |
联系管理员。 |
示例¶
请求示例¶
url: https://{apigw-address}/connect-service/v2.0/certificates?action=list&assetId=yourAssetId&orgId=youOrgId
method: GET
响应示例¶
{
"code": 0,
"msg": "OK",
"requestId": "318d8b1f-1f27-4dd4-8299-b75a2015d425",
"data": [
{
"certSN": "52725",
"cert": "52725",
"certStatus": 1,
"issuer": "EMAILADDRESS=ca@eniot.io, CN=EnOS CA, OU=EnOS CA, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
"subject": "EMAILADDRESS=xT7EaR, OU=EnOS, CN=xMen1, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
"signDate": 1581216505000,
"effetiveDate": 1581216505000,
"expireDate": 1582080505000,
"revoker": "IoT_Hub",
"revokerReason": "KEY COMPROMISE",
"isEnosCert": true,
"issueAuthority": "RSA"
},
{
"certSN": "52726",
"cert": "52726",
"certStatus": 0,
"issuer": "EMAILADDRESS=ca@eniot.io, CN=EnOS ECC CA, OU=EnOS, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
"subject": "EMAILADDRESS=uKGdK, OU=EnOS, CN=yPI9z8z, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
"signDate": 1581218161000,
"effetiveDate": 1581218161000,
"expireDate": 1582082161000,
"audit": {
"createBy": "youOrgId",
"createTime": 1581218161773,
"updateBy": "youOrgId",
"updateTime": 1581218161773,
"ns": "youOrgId",
"deleted": false
},
"revoker": "",
"revokerReason": "",
"isEnosCert": true,
"issueAuthority": "ECC"
},
{
"certSN": "52727",
"cert": "52727",
"certStatus": 2,
"issuer": "EMAILADDRESS=ca@eniot.io, CN=EnOS ECC CA, OU=EnOS, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
"subject": "EMAILADDRESS=xT7EaR, OU=EnOS, CN=xMen1, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
"signDate": 1581234648000,
"effetiveDate": 1581234648000,
"expireDate": 1581493848000,
"revoker": "",
"revokerReason": "",
"isEnosCert": true,
"issueAuthority": "ECC"
}
]
}
SDK 示例¶
你可以在 Github 上获取接入服务的 SDK 示例: