当 AWS Private CA 有效期低于 13 个月时,如何使用 ACM 控制台请求私有证书?
2 分钟阅读
0
我请求了 AWS Certificate Manager (ACM) 私有证书,但收到了“失败”错误或证书状态为“失败”。
简短描述
您可以使用 ACM 控制台来颁发和管理证书,证书的有效期为 395 天(13 个月)。如果您使用 ACM 控制台请求的证书的有效期不是正好 395 天,则会收到“失败”错误。
要解决此错误,请使用 IssueCertificate API(AWS Private Certificate Authority 的一项功能)来请求有效期较短的私有证书。然后,将证书导入 ACM 以用于集成服务。
**注意:**如果您使用 IssueCertificate API 请求证书,则此证书在 ACM 控制台中不可见。
解决方法
使用 IssueCertificate API 颁发有效期短于 CA 有效期的新私有证书
**注意:**如果在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请参阅对 AWS CLI 错误进行故障排除。此外,请确保您使用的是最新版本的 AWS CLI。
使用 issue-certificate 命令颁发有效期短于 CA 有效期的私有证书:
aws acm-pca issue-certificate --certificate-authority-arn arn:aws:acm-pca:us-west-2:123456789012:certificate-authority/12345678-1234-1234-1234-123456789012 --csr fileb://cert_1.csr --signing-algorithm "SHA256WITHRSA" --validity Value=300,Type="DAYS" --idempotency-token 1234
**注意:**您必须为私有证书生成自己的 CSR 和私钥。
从 AWS Private CA 获取私有证书正文和证书链,并将它们导入 ACM
-
使用 get-certificate 命令获取私有证书正文和证书链:
aws acm-pca get-certificate \--certificate-authority-arn arn:aws:acm-pca:region:account:\ certificate-authority/12345678-1234-1234-1234-123456789012 \ --certificate-arn arn:aws:acm-pca:region:account:\ certificate-authority/12345678-1234-1234-1234-123456789012/\ certificate/6707447683a9b7f4055627ffd55cebcc \ --output textget-certificate 命令显示了 base64 编码的 PEM 格式证书和证书链:
-----BEGIN CERTIFICATE-----...base64-encoded certificate... -----END CERTIFICATE---- -----BEGIN CERTIFICATE----- ...base64-encoded certificate... -----END CERTIFICATE---- -----BEGIN CERTIFICATE----- ...base64-encoded certificate... -----END CERTIFICATE---- -
使用以下命令将证书正文和证书链另存为 .pem 文件:
证书链:
aws acm-pca get-certificate --certificate-authority-arn arn:aws:acm-pca:Region:Account:certificate-authority/12345678-1234-1234-1234-123456789012 --certificate-arn arn:aws:acm-pca:Region:Account:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/66506378eb4e296c59b41bbb7b8dd068 --output text --query CertificateChain > certchain.pem证书正文:
aws acm-pca get-certificate --certificate-authority-arn arn:aws:acm-pca:Region:Account:certificate-authority/12345678-1234-1234-1234-123456789012 --certificate-arn arn:aws:acm-pca:Region:Account:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/66506378eb4e296c59b41bbb7b8dd068 --output text --query Certificate > certfile.pem -
使用 import-certificate 命令将证书导入到 ACM:
**注意:**将 certfile.pem、privately.key 和 certchain.pem 替换为您的文件名。
aws acm import-certificate --certificate fileb://certfile.pem --private-key fileb://privatekey.key --certificate-chain fileb://certchain.pem
已导入证书的 Amazon 资源名称 (ARN) 将成功返回。
相关信息
没有评论

