我们的api运行在AWS EC2实例上。我们对AWS API网关感兴趣,该网关使用Cognito和版本控制来验证API调用。
有人能告诉我如何在不公开的情况下允许访问EC2实例上托管的API吗?我只想让API网关访问那个API。
我在文档中找不到任何解决方案。
以前的答案:
您的服务器必须是公共的,API网关才能访问它。此时的最佳解决方案是使用客户端SSL证书,这样您的服务器就可以轻松拒绝任何非源自API网关的流量。
http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html
更新答案:
现在,您可以在VPC中放置一个不可公开访问的专用网络负载平衡器,并在API网关中启用VPCLink,以允许API网关向专用NLB发送请求。