当前位置: 首页 > 知识库问答 >
问题:

AWS API网关专用API自定义域名

太叔志尚
2023-03-14

AWS文件说,

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

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

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

然而,我面临着SSL证书的问题。

共有1个答案

郎泰平
2023-03-14

API网关有4个选项:

  • HTTP API
  • WebSockets API
  • REST API
  • REST API专用

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

当使用VPC接口endpoint时,AWS生成自定义域名。此域名在VPC中用于定位endpoint并重定向到REST API。由于这个原因,此时您不能指定自己的自定义域名。您可以为面向公共的REST API指定自定义域名。

由于无法指定自己的自定义域名,因此无法使用自己的自定义证书。

因为VPC接口endpoint在内部称为API网关,所以使用TLS1.2。这一点也无法改变。

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

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

 类似资料:
  • 我有设置香港API网关以下留档在这里。通过下面的curl命令,我可以确认Kong已经启动并通过localhost响应。 我的问题是,对于生产,如何配置Kong以响应DNS/URL? 我已经在AWS路由53上设置了一个DNS记录,以将流量指向部署Kong的此服务器的IP。有了一个独立的应用程序——一个节点/快递应用程序,我将设置一个反向代理,即NGINX,将收到的请求从网址路由到服务器,再到应用程序

  • 我们正在尝试从C#Windows服务调用AWS API网关来执行后台作业。哪个应该触发API网关定期初始化请求? 我们使用RestSharp调用APIendpoint,该类称为AwsAuthenticator,它继承自RestSharp.Authenticators.IAAuthenticator。但当我们调用API Gateway时,收到的错误是“我们计算的请求签名与您提供的签名不匹配。请检查您

  • 我是API网关的新手。我尝试使用“自定义授权程序”。我遵循了下面的文档,并使用了网站提供的示例代码。https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html “令牌类型的lambda授权者”是工作的。 但是... 我对“请求类型”感到困惑,不知道如何将quer

  • 我的VPC中有Public和Pvt子网。我在Pvt子网上有一些运行在EC2上的服务,需要通过外部/移动资源访问。我如何做到这一点-是VPCLink和NLB的方式来做到这一点,还是任何其他方式,创建一些访问点在公共子网(??)。Lambda似乎是答案(现在AWS中几乎所有的东西)--甚至不确定那种访问对于Pvt子网中的资源是如何工作的。 同样,同一个Pvt子网可以访问外部资源(在AWS之外)-我如何

  • Mono Apr 10 09:42:35 UTC 2017:转换后的endpoint请求主体:{“Type”:“Token”,“AuthorizationToken”:“ABC123”,“MethodArn”:“arn:aws:execute-api:ap-southeast-1:007183653813:OHLQXU9P57/null/Get/”}Mono Apr 10 09:42:36 UTC

  • 我希望为AWS Lambda/zappa使用一些“无服务器api服务器”,它使用自定义api网关授权器进行用户身份验证。在无服务器AWS lambda服务中,使用自定义授权器而不是直接在代码控制器中检查发布的JWT令牌是否有相当大的安全性或成本效益?对我来说,用代码检查可能更方便。 更新我去了预请求钩子,但是有头级授权器,它更容易用于CORS,但它不支持的zappa我相信。也可以通过swagger