Amazon web services 如何下载通过CloudFormation创建的IoT证书?
我正在使用AWS CloudFormation创建物联网内容、策略和证书。我的堆栈创建成功,但是,我无法访问CloudFormation创建的证书文件 查看aws文档,您可以通过CloudFormation从证书获得的唯一输出是ARN和证书ID。但是,无法使用我看到的ARN或证书ID检索您的证书 如果您通过AWS IoT控制台上传您的证书签名请求CSR,它将显示一个下载链接,您可以获取您的证书文件 不幸的是,我需要使用CloudFormation来创建IoT证书。但是,您可以在创建证书后下载它。它具体指出: 可以随时检索证书 我一直在搜索文档和web界面,想知道如何随时下载证书,但都没有成功。我对证书和私钥的整个世界都比较陌生,所以希望我错过了一些简单的东西Amazon web services 如何下载通过CloudFormation创建的IoT证书?,amazon-web-services,certificate,amazon-cloudformation,aws-iot,Amazon Web Services,Certificate,Amazon Cloudformation,Aws Iot,我正在使用AWS CloudFormation创建物联网内容、策略和证书。我的堆栈创建成功,但是,我无法访问CloudFormation创建的证书文件 查看aws文档,您可以通过CloudFormation从证书获得的唯一输出是ARN和证书ID。但是,无法使用我看到的ARN或证书ID检索您的证书 如果您通过AWS IoT控制台上传您的证书签名请求CSR,它将显示一个下载链接,您可以获取您的证书文件 不幸的是,我需要使用CloudFormation来创建IoT证书。但是,您可以在创建证书后下载它。
有人知道是否可以从CloudFormation创建的IoT证书获取您的证书吗?啊,我找到了一种使用AWS CLI的方法。但确实需要有一种方法通过云信息来实现:
通过CSR使用CloudFormation创建的证书可以通过以下方式检索 Aws物联网网页 只需导航到安全证书,单击。。。然后选择下载 AWS CLI 正如您所提到的,CLI也是一个选项
aws iot describe-certificate --certificate-id fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd3
会回来的
{
"certificateDescription": {
"certificateArn": "arn:aws:iot:eu-central-1:xxxxxx",
"status": "ACTIVE",
"certificateId": "fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd3",
"lastModifiedDate": 1519840881.49,
"certificatePem": "-----BEGIN CERTIFICATE-----\nMIIDsTCCApmg.....VsAzFQ==\n-----END CERTIFICATE-----\n",
"transferData": {},
"ownedBy": "123456789",
"creationDate": 1519840820.888
}
亚马逊物联网SDK
还可用于根据可通过cloudformation输出的证书ID以字符串形式检索证书内容PEM格式
import com.amazonaws.services.iot.AWSIot;
import com.amazonaws.services.iot.AWSIotClientBuilder;
import com.amazonaws.services.iot.model.DescribeCertificateRequest;
import com.amazonaws.services.iot.model.DescribeCertificateResult;
DescribeCertificateRequest describeCertificateRequest = new DescribeCertificateRequest();
describeCertificateRequest.setCertificateId("fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd371fcd3");
DescribeCertificateResult describeCertificateResult = awsIot.describeCertificate(describeCertificateRequest);
describeCertificateResult.getCertificateDescription().getCertificatePem();
AFAIK不可能将其作为cloudformation模板中的变量输出