本文为您介绍使用OpenAPI查询DV证书的申请状态的完整示例。
查看OpenAPI文档
通过阅读API概览得知,查询DV证书的申请状态的OpenAPI为DescribeCertificateState。请您根据文档,了解调用该接口需要准备的数据和权限。
创建RAM用户并授权
身份
您可以使用阿里云账号(主账号)、RAM用户、RAM角色调用该接口,有关各种身份的差异,请参见身份、凭据、授权。本案例中,我们使用RAM用户进行接口调用。
登录RAM访问控制,创建一个仅允许API调用的RAM用户,并记录AccessKey信息。具体操作,请参见创建RAM用户。
授权
访问RAM用户列表,单击目标RAM用户操作列的添加权限。
在权限策略区域搜索并选择AliyunYundunCertFullAccess权限(管理云盾证书服务的权限),单击确认新增授权,完成授权操作。
凭证
在创建RAM用户时会默认生成一个AccessKey,可直接使用。您也可以进入到对应的RAM用户详情页面,在认证管理页签,单击创建AccessKey,创建一个新的AccessKey。具体操作,请参见创建AccessKey。
调用OpenAPI
本文以Java语言为例,为您介绍OpenAPI的调用方法。
准备Java开发环境
环境要求
已下载并安装JDK1.8或以上版本。JDK1.8下载地址
已下载并安装开发者工具IDEA。IDEA下载地址
验证版本
打开终端,输入java -version
,查看Java(JDK)版本。
配置环境变量
为避免将AccessKey硬编码到业务代码中带来的安全风险,本示例采用配置环境变量的方法管理AccessKey。不同操作系统的环境变量配置方法不同,具体操作,请参见在Linux、macOS和Windows系统配置环境变量。
安装依赖
SDK依赖
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>cas20200407</artifactId>
<version>1.0.13</version>
</dependency>
身份验证依赖
推荐使用Credentials最新版本。
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>credentials-java</artifactId>
<version>LATEST</version>
</dependency>
下载示例代码
在OpenAPI门户,访问DescribeCertificateStateAPI调试入口。
在参数配置区域,输入OrderId(要查询的证书申请订单的ID)。
按照下图指引,单击下载完整工程,下载Java示例代码包。
在本地解压示例代码包,并打开开发者工具IDEA,导入解压后的工程。
运行代码
在IDEA中运行Java代码,得到如下输出结果:
{
"Type": "domain_verify",
"Domain": "www.example.com",
"RecordType": "TXT",
"Certificate": "-----BEGIN CERTIFICATE----- …… -----END CERTIFICATE-----",
"RequestId": "082FAB35-6AB9-4FD5-8750-D36673548E76",
"RecordDomain": "_dnsauth",
"PrivateKey": "-----BEGIN RSA PRIVATE KEY-----…… -----END RSA PRIVATE KEY-----",
"ValidateType": "FILE",
"RecordValue": "20200420000000223erigacv46uhaubchcm0o7spxi7i2isvjq59mlx9lucnkqcy",
"Content": "http://example.com/.well-known/pki-validation/fileauth.txt",
"Uri": "/.well-known/pki-validation/fileauth.txt"
}