djd*_*es7 7 ssl amazon-web-services aws-cli aws-certificate-manager
我想删除 AWS Certificate Manager 中正在使用的 AWS 证书。为此,我使用建议的 AWS CLI 和以下命令:
aws iam delete-server-certificate --server-certificate-name <name>
问题是,我尝试删除的相关证书没有“名称”,并且没有其他标志可用于删除它,例如使用其 ID。
jake@serenity ~ $ aws iam list-server-certificates
{
"ServerCertificateMetadataList": []
}
Run Code Online (Sandbox Code Playgroud)
我可以删除这个证书吗?
该命令delete-server-certificate适用于ACM 之前的一组不同的证书 - IAM 服务器证书。因此,对于 ACM 证书来说,这是错误的命令。
aws acm delete-certificate请在将证书与任何关联资源(例如 ALB 或 ELB)分离后使用。
ACM 证书只能与应用程序负载均衡器、弹性负载均衡器或 CloudFront 分配关联。您可以使用 AWS CLI 列出您的资源并搜索 ACM 证书 arn 的结果。
由于您提到这是使用 ELB,因此我们可以完成在 ELB 上查找和删除证书的工作流程。此示例列出了所有负载均衡器,并查找包含正在使用您的证书 arn 的侦听器的负载均衡器:
aws elb describe-load-balancers --query "LoadBalancerDescriptions[? ListenerDescriptions [? Listener.SSLCertificateId =='ACMArnHere' ]]"
Run Code Online (Sandbox Code Playgroud)
找到关联的资源后,只需替换/分离证书,或者在使用完毕后删除该资源。从 ELB 分离证书的最简单方法是删除关联的侦听器,然后使用新的或不同的证书重新创建它。
以下是删除指定负载均衡器上的 HTTPS 侦听器的示例:
aws elb delete-load-balancer-listeners --load-balancer-name my-load-balancer --load-balancer-ports 443
Run Code Online (Sandbox Code Playgroud)
aws acm list-certificates # List certificates to get ARN
aws acm delete-certificate --certificate-arn <value> # Delete certificate with ARN
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8666 次 |
| 最近记录: |