首页 > 解决方案 > AWS API Gateway 私有 API 自定义域名

问题描述

AWS 文档说,

私有 API 不支持自定义域名。

来源:https ://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-apis.html

这到底是什么意思?我可以将自定义域名附加到私有 API。

但是我面临 SSL 证书的问题。

标签: amazon-web-servicesaws-api-gatewayamazon-api-gateway

解决方案


API 网关有 4 个选项:

REST API Private 与 REST API 相同,只是它只能从 VPC 内访问。要从 VPC 内访问 REST API,需要接口 VPC 端点。如果您不使用接口 VPC 端点,那么您可以通过 NAT 访问 API Gateway 上的 REST API,该 NAT 通过 Internet 网关或仅通过 Internet 网关。无论哪种情况,这都是 Internet 上的公共 REST API。

使用 VPC 接口终端节点时,AWS 会生成自定义域名。此域名在 VPC 中用于定位终端节点并重定向到 REST API。因此,您目前无法指定您自己的自定义域名。您可以为面向公众的 REST API 指定自定义域名。

因为不能指定自己的自定义域名,所以不能使用自己的自定义证书。

因为 VPC 接口端点在内部称为 API Gateway ,所以使用 TLS 1.2这也不能改变

如果您想使用自己的证书,则需要定义自己的域名,并使用 API Gateway 中定义的面向公众的 REST API。

或者,您可以使用 VPC 内部的自定义域名,为该域名生成证书。将证书放在 NGINX 等代理服务器上,使用代理前端接口端点。接口端点使用弹性网络接口(ENI),因此具有安全组,您可以使用安全组限制来自代理的流量。在这种情况下,证书将驻留在代理服务器上,并且 TLS 将在代理服务器上终止。然后,代理服务器将通过新连接访问 REST API。


推荐阅读