如何设置具有静态外向IP和自定义域的REST API?

0

【以下的问题经过翻译处理】 您好,

我试图使用API Gateway作为Lambda函数的触发器。我需要从函数中进行外部API调用,并且需要将我的IP地址添加到服务提供商的白名单中,因此它应该是静态的。我还需要向他们提供API调用的来源主机名,因此API网关将使用自定义域。我在Godaddy上注册了域名,并且希望在此API Gateway上使用子域名。

目前,我所做的是:

  1. 创建了一个具有该地区所有可用区子网的VPC端点。
  2. 创建了一个私有的Rest API,并将以上VPCE分配给它。
  3. 创建了与可用区相同数量的弹性IP。
  4. 从ACM请求了子域的新证书,将CNAME记录放在Godaddy上,并获得了证书。
  5. 创建了一个目标组,目标类型为IP,协议为TLS,健康检查协议为HTTPS,并注册了每个可用区的默认子网IP。我将403用作健康检查状态,因为这将是在使用NLB的DNS进行健康检查时调用API时的状态。健康检查结果为正。
  6. 创建了一个面向Internet的IPv4网络负载均衡器。侦听器使用TLS协议进行设置。我将上述创建的EIP分配给此负载均衡器,同时也分配了上述生成的证书。

这样,我就能够成功地使用NLB域调用私有API网关。但是,我收到了一个安全警告,因为为其颁发证书的域没有用于调用API。我为API创建了一个自定义域,并为其分配了相同的证书。但是,客户那里得到了同样的警告。如果我试图用自定义域名调用API,我根本没有得到响应,因为名称没有得到解析。

如果我在AWS Route 53上注册了我的域,我就可以创建一个指向NLB的Alias记录。我用外部域名注册商能实现么?

1 Antwort
0

【以下的回答经过翻译处理】 1、对于函数中进行外部API调用,并且需要将我的IP地址添加到服务提供商的白名单中,建议件lambda设置为vpc内服务,然后使用私有subnet,并将私有subnet的出网设置为NAT网关,向您的供应商提供私有NAT网关的地址。 2、对于在APIgateway中使用自己的域名,建议参考这个文档

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen