调用RegisterCaCertificate接口将指定CA证书注册到云消息队列 MQTT 版服务端。

使用场景

云消息队列 MQTT 版支持X.509证书认证,客户端可通过设备证书完成接入认证。CA证书用于为客户端签发设备证书,并验证设备证书的正确性,您需要先将申请的CA证书注册到云消息队列 MQTT 版的服务端上,才能用于认证设备证书。更多信息,请参见客户端证书认证

使用限制

  • 仅铂金版实例支持使用RegisterCaCertificate接口。
  • 单用户请求频率限制为500次/秒。如有特殊需求,请联系云消息队列 MQTT 版技术支持,钉钉群号:35228338。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String RegisterCaCertificate

系统规定参数。取值:RegisterCaCertificate

MqttInstanceId String post-cn-7mz2d******

云消息队列 MQTT 版的实例ID。注册CA证书时,需要指定一个实例进行绑定。

CaName String mqtt_ca

待注册CA证书的名称。

CaContent String -----BEGIN CERTIFICATE-----\nMIIDuzCCAqdGVzdC5jbi1xaW5n******\n-----END CERTIFICATE-----

待注册CA证书的内容。

说明 示例中的\n表示换行。
VerificationContent String -----BEGIN CERTIFICATE-----\nMIID/DCCAu+Y5sRMpp9tnd+4s******\n-----END CERTIFICATE-----

待注册CA证书的验证证书的内容。和CA证书的注册码一起使用,用于验证用户拥有该CA证书的私钥。

说明 示例中的\n表示换行。

返回数据

名称 类型 示例值 描述
RequestId String 020F6A43-19E6-4B6E-B846-44EB31DF****

公共参数,每个请求的ID都是唯一的,可用于排查和定位问题。

Sn String 007269004887******

已注册的CA证书的SN序列号,用于唯一标识一个CA证书。

示例

请求示例

http(s)://onsmqtt.cn-hangzhou.aliyuncs.com/?Action=RegisterCaCertificate
&MqttInstanceId=post-cn-7mz2d******
&CaName=mqtt_ca
&CaContent=-----BEGIN CERTIFICATE-----\nMIIDuzCCAqdGVzdC5jbi1xaW5n******\n-----END CERTIFICATE-----
&VerificationContent=-----BEGIN CERTIFICATE-----\nMIID/DCCAu+Y5sRMpp9tnd+4s******\n-----END CERTIFICATE-----
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<RegisterCaCertificateResponse>
    <RequestId>020F6A43-19E6-4B6E-B846-44EB31DF****</RequestId>
    <Sn>007269004887******</Sn>
</RegisterCaCertificateResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "020F6A43-19E6-4B6E-B846-44EB31DF****",
  "Sn" : "007269004887******"
}

错误码

HttpCode 错误码 错误信息 描述
400 ParameterFieldCheckFailed Failed to validate the parameters. The parameters may be missing or invalid. 参数校验失败,可能缺失或者传入值非法。
500 RegisterCodeError Register code error in verification certificate. 注册码错误
500 RegisterCodeUsed Register code has been used. 注册码已经被使用过
500 GetCaNumError Failed to get ca num. Try again later. 获取CA数量错误
500 CaNumExceed CA certificate num exceed CA数量超出限制
500 CertificateContentError Certificate content error, please check ca/verification certificate content. BasicConstraints extension should be set to true in CA certificate 用户CA证书或者验证证书内容错误
500 SnNotUnique Sn is not unique in gloabal SN 不是全局唯一的

访问错误中心查看更多错误码。

控制台操作

除了调用RegisterCaCertificate接口,您还可以通过微消息队列MQTT版控制台注册CA证书。具体操作,请参见CA证书管理