该命令delete-server-certificate
适用于 ACM 之前的一组不同的证书——IAM 服务器证书。所以这是 ACM 证书的错误命令。
aws acm delete-certificate
在将证书与任何关联资源(例如 ALB 或 ELB)分离后,请改用。
示例:查找与您的 ACM 证书关联的 ELB
ACM 证书只能与 Application Load Balancer、Elastic Load Balancer 或 CloudFront Distributions 关联。您可以使用 AWS CLI 列出您的资源并在结果中搜索您的 ACM 证书的 arn。
由于您提到这是使用 ELB,我们可以通过工作流程在 ELB 上查找和删除证书。此示例列出了您的所有负载均衡器,并查找包含正在使用您的证书 arn 的侦听器的负载均衡器:
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 证书并按 ARN 删除证书
aws acm list-certificates # List certificates to get ARN
aws acm delete-certificate --certificate-arn <value> # Delete certificate with ARN
延伸阅读