AWS API Gateway绑定自定义域名时无法选择已签发的ACM证书
问题排查与解决步骤
针对你遇到的API Gateway无法选择ACM已签发证书的问题,可按以下步骤排查:
确认自定义域名类型与证书区域匹配
如果你的API Gateway自定义域名是「边缘优化型」,即使API Gateway部署在eu-west-3,ACM证书必须存储在us-east-1区域——这是AWS的硬性要求,因为边缘优化型域名依赖CloudFront,而CloudFront只能使用us-east-1的ACM证书。如果是这种情况,需要在us-east-1重新申请匹配的证书,或者将自定义域名改为「区域型」。检查证书的域名覆盖范围
确认你的子域名完全被ACM证书覆盖:- 如果证书是通配符证书(例如
*.example.com),子域名api.example.com可匹配; - 如果证书是单域名证书,必须与你要绑定的子域名完全一致(例如证书是
api.example.com才能绑定该子域名); - 避免证书仅覆盖主域名(
example.com),这种情况无法匹配子域名。
- 如果证书是通配符证书(例如
验证域名解析与证书有效性
即使ACM显示「已签发」,仍需确认:- DNS验证的解析记录(CNAME或TXT)在Google域名管理后台已正确配置,且全球解析生效(可通过
nslookup或dig命令验证); - 证书未过期,且没有被吊销。
- DNS验证的解析记录(CNAME或TXT)在Google域名管理后台已正确配置,且全球解析生效(可通过
排除控制台缓存问题
刷新API Gateway控制台页面,或退出AWS账号重新登录,有时候控制台缓存会导致证书无法正常加载。检查IAM权限配置
确保API Gateway服务角色拥有访问ACM证书的权限,可通过IAM控制台查看是否存在允许acm:DescribeCertificate、acm:ListCertificates等操作的策略。不过通常默认权限已足够,若之前修改过权限则需重点排查。
内容的提问来源于stack exchange,提问作者axelrogg
相关产品推荐
相关产品推荐

