调用CreateClientCertificateWithCsr,基于自定义的CSR签发单个客户端证书。
使用说明
调用本接口前,您必须已经调用CreateRootCACertificate创建了根CA证书,并且调用CreateSubCACertificate创建了子CA证书。只有子CA证书才能签发客户端证书。
QPS限制
本接口的单用户QPS限制为10次/秒。超过限制,API调用将会被限流,这可能影响您的业务,请合理调用。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateClientCertificateWithCsr |
要执行的操作。取值:CreateClientCertificateWithCsr。 |
Csr | String | 是 | -----BEGIN CERTIFICATE REQUEST----- ...... -----END CERTIFICATE REQUEST----- |
CSR内容。您可以通过OpenSSL工具或者Keytool工具生成CSR。更多信息,请参见如何制作CSR文件。 您也可以通过SSL证书控制台创建CSR。更多信息,请参见创建CSR。 |
SanType | Integer | 否 | 2 |
客户端证书的扩展信息SAN(Subject Alternative Name)的类型。取值:
|
SanValue | String | 否 | aliyundoc.com |
客户端证书的具体扩展信息。支持输入多个扩展信息,如果您需要输入多个扩展信息,请用半角逗号(,)将其隔开。 |
Days | Integer | 否 | 365 |
客户端证书的有效期。单位:天。 Days、BeforeTime、AfterTime参数不能同时为空,同时BeforeTime和AfterTime参数必须同时为空或者同时设置。该参数具体设置说明如下:
说明
|
ParentIdentifier | String | 是 | 270ae6bb538d538c70c01f81fg3**** |
签发该证书的子CA证书的唯一识别码。 说明 您可以调用DescribeCACertificateList查询子CA证书的唯一识别码。
|
BeforeTime | Long | 否 | 1634283958 |
客户端证书的签发时间,使用时间戳格式,默认为您调用该接口的时间。单位:秒。 说明 BeforeTime和AfterTime参数必须同时为空或者同时设置。
|
AfterTime | Long | 否 | 1665819958 |
客户端证书的服务到期时间,使用时间戳格式。单位:秒。 说明 BeforeTime和AfterTime参数必须同时为空或者同时设置。
|
调用API时,除了本文中该API的请求参数,还需加入阿里云API公共请求参数。公共请求参数的详细介绍,请参见公共参数。
调用API的请求格式,请参见本文示例中的请求示例。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Identifier | String | 200ae6bb538d538c70c01f81dcf2**** |
客户端证书的唯一识别码。 |
RootX509Certificate | String | -----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE----- |
根CA证书的内容。 |
ParentX509Certificate | String | -----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE----- |
子CA证书的内容。 |
RequestId | String | 31C66C7B-671A-4297-9187-2C4477247A74 |
本次调用请求的ID,是由阿里云为该请求生成的唯一标识符,可用于排查和定位问题。 |
X509Certificate | String | -----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE----- |
客户端证书的内容。 |
CertificateChain | String | -----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE-----\n |
CA证书链。 |
示例
请求示例
http(s)://[Endpoint]/?Action=CreateClientCertificateWithCsr
&Csr=-----BEGIN CERTIFICATE REQUEST----- ...... -----END CERTIFICATE REQUEST-----
&SanType=2
&SanValue=aliyundoc.com
&Days=365
&ParentIdentifier=270ae6bb538d538c70c01f81fg3****
&BeforeTime=1634283958
&AfterTime=1665819958
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateClientCertificateWithCsrResponse>
<Identifier>200ae6bb538d538c70c01f81dcf2****</Identifier>
<RootX509Certificate>-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
</RootX509Certificate>
<ParentX509Certificate>-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
</ParentX509Certificate>
<RequestId>31C66C7B-671A-4297-9187-2C4477247A74</RequestId>
<X509Certificate>-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
</X509Certificate>
<CertificateChain>-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
</CertificateChain>
</CreateClientCertificateWithCsrResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"Identifier" : "200ae6bb538d538c70c01f81dcf2****",
"RootX509Certificate" : "-----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE-----",
"ParentX509Certificate" : "-----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE-----",
"RequestId" : "31C66C7B-671A-4297-9187-2C4477247A74",
"X509Certificate" : "-----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE-----",
"CertificateChain" : "-----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\n......\n-----END CERTIFICATE-----\n"
}
错误码
访问错误中心查看更多错误码。