AWS ACM证书管理删除正在使用的证书

时间:2017-04-03 15:31:48

标签: amazon-web-services ssl 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": []
}

无论如何我可以删除这个证书吗?

1 个答案:

答案 0 :(得分:3)

命令delete-server-certificate用于一组不同的证书 - IAM Server Certificates - 早于ACM。所以这是ACM证书的错误命令。

在从任何关联资源(例如ALB或ELB)分离证书后,请使用aws acm delete-certificate

示例:查找与ACM证书相关联的ELB

ACM证书只能与应用程序负载均衡器,弹性负载均衡器或CloudFront分配相关联。您可以使用AWS CLI列出您的资源并搜索ACM Cert的结果。

由于您提到这是使用ELB,我们可以通过工作流程在ELB上查找和删除证书。此示例列出了所有负载均衡器,并查找包含使用证书的侦听器的负载均衡器:

aws elb describe-load-balancers --query "LoadBalancerDescriptions[? ListenerDescriptions [? Listener.SSLCertificateId =='ACMArnHere' ]]"

示例:从ELB中删除证书

找到关联资源后,只需更换/分离证书,或者只是删除资源(如果已完成)。从ELB分离证书的最简单方法是删除关联的侦听器,稍后使用新的或不同的证书重新创建它。

以下是将删除指定负载均衡器上的HTTPS侦听器的示例:

aws elb delete-load-balancer-listeners --load-balancer-name my-load-balancer --load-balancer-ports 443

示例:列出ACM Certs并通过ARN

删除证书
aws acm list-certificates                             # List certificates to get ARN

aws acm delete-certificate --certificate-arn <value>  # Delete certificate with ARN

进一步阅读