首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS-对于对外部服务的传出请求,我应该使用API网关还是NAT Gateway从私有子网调用外部web服务?

AWS-对于对外部服务的传出请求,我应该使用API网关还是NAT Gateway从私有子网调用外部web服务?
EN

Stack Overflow用户
提问于 2019-01-26 05:38:16
回答 1查看 4K关注 0票数 5

使用AWS API网关的场景?这也是只适用于进出服务吗?NAT网关是通过internet网关调用外部服务的首选方式吗?这能被AWS API网关取代吗?后者会提供更多的安全保障吗?

调用外部服务的两种方法--选项1- a)通过路由表将私有子网组件配置为NAT网关。( b)请求将从私有子网-> NAT网关-> Internet网关->外部服务路由?

选项2- a)将私有子网配置为通过路由表b在公共子网中调用AWS网关(请求将通过私有子网-> AWS网关->外部服务?

请告诉我哪种选择更好?

EN

回答 1

Stack Overflow用户

发布于 2019-01-26 12:03:42

你把事情搞混了。

如果实例/服务位于私有子网中,并且需要此实例才能对Internet进行出站访问,则需要一些NATing/PATing服务。在AWS的情况下,您可以将NAT网关附加到您的VPC上,或者在同一VPC中的公共子网中启动NAT实例,并相应地配置路由表。API网关与此无关。

API网关帮助您构建无服务器、安全和高度可用的REST,您可以将HTTP/HTTPS请求发送到这些API。您能配置一些API网关资源/方法来指向外部服务吗?你当然可以。但是,您的路由表中不能针对API网关。为什么?仅仅因为路由表操作在ISO OSI模型的第三层(通过IP地址进行路由)和API网关在ISO OSI模型(应用层)的第7层上操作。

这里有一些你可以做的事。

  1. 实例(私有子网) -> NAT实例-> Internet网关->外部服务
  2. 实例(私有子网) -> NAT网关-> Internet网关->外部服务
  3. 实例(私有子网) -> NAT实例/网关-> Internet网关-> API网关->外部服务

或者,您甚至可以启动一个只在VPC内部运行的私有API网关,但这与授予对Internet的访问无关。

关于安全性,我们在这里谈论的不是试图访问您的资源的人(入站访问),而是您/您的资源试图访问某些外部服务。您可以并且应该通过防火墙(如NACL、Security甚至OS级防火墙)来控制这一点。API网关的安全性相反,它保护您免受恶意传入请求/DDOS攻击和未经授权使用您的资源。

简而言之,如果已经存在一个您知道要从您的私有子网内部访问的外部服务,那么API网关对您来说是完全无用的。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54375955

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档