簡體   English   中英

AWS API 網關私有 API 自定義域名

[英]AWS API Gateway Private API Custom Domain Name

AWS 文件說,

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

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

這到底是什么意思? 我可以將自定義域名附加到私有 API。

但是我面臨 SSL 證書的問題。

API 網關有 4 個選項:

REST API Private 與 REST API 相同,只是它只能從 VPC 內訪問。 要從 VPC 內訪問 REST API,需要一個接口 VPC 端點 如果您不使用接口 VPC 端點,則可以通過 NAT 訪問 REST API 網關,該網關通過 Internet 網關或僅通過 Internet 網關。 無論哪種情況,這都是 Internet 上的公共 REST API。

使用 VPC 接口終端節點時,AWS 會生成自定義域名。 此域名在 VPC 內用於定位端點並重定向到 REST API。 因此,您目前無法指定您自己的自定義域名。 您可以為面向公眾的 REST API 指定自定義域名。

因為不能指定自己的自定義域名,所以不能使用自己的自定義證書。

因為 VPC 接口端點稱為 API 網關內部使用TLS 1.2 這也不能改變

如果要使用自己的證書,則需要定義自己的域名,並使用在 API 網關中定義的面向公眾的 REST API。

或者,您可以使用 VPC 內部的自定義域名,為該域名生成證書。 將證書放在像 NGINX 這樣的代理服務器上,使用代理在接口端點前面。 接口端點使用彈性網絡接口(ENI),因此具有安全組,您可以使用安全組限制來自代理的流量。 在這種情況下,證書將駐留在代理服務器上,並且 TLS 將在代理服務器上終止。 然后,代理服務器將通過新連接訪問 REST API。

為專用端點使用自定義域的一種選擇是在 API 網關前面放置一個(面向內部的)應用程序負載平衡器。 將偵聽器添加到 ALB 時,您可以選擇指定證書。 然后使用您的域作為 Route53 中的別名指向您的 ALB。 總結一下:

  1. 創建指向com.amazonaws.eu-west-1.execute-api的 ENI IP 地址的目標組
  2. 創建面向內部的 Application Load Balancer
  3. 將目標組添加為偵聽器,為您的域指定默認 SSL/TLS 證書。
  4. 將您的域指向 Route53 中的 ALB 別名
  5. 或者,如果您需要為 ALB 提供一些本地地址,您可以在 ALB 前面放置一個網絡負載均衡器。 在這種情況下,您將域指向本地(私有)地址而不是 ALB 別名。 創建一個指向您的 ALB 的新目標組,並將其添加為 NLB 中的偵聽器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM