AWS API 具有资源策略 V.S 的网关。使用 VPC 端点

AWS API Gateway with resource policy V.S. with VPC Endpoint

我正在尝试使用 AWS API 网关创建私有 API。据我所知,我有 2 个选项来实现私有 API 网关,1) 使用 API 网关资源策略限制源,以及 2) 使用 VPC 端点限制 VPC 内的源。

我的问题是:对于选项 1,我能否在资源策略中设置条件以仅允许来自特定 VPC 的流量并获得与选项 2 相同的结果?

# API Gateway resource policy
{
  ...

  "Condition": {
    "StringEquals: {
      "aws:sourceVpc": "vpc-123abc"
    }
  }
}

如果是,它们之间有什么不同?采用VPC Endpoint实现私有API网关有什么优势?

您可以通过以下方式访问私有 API 网关:How to invoke a private API

在您的情况下,与 VPC 端点一起使用的条件是 aws:SourceVpce,这里是您在 aws 帐户中部署的 execute-api 端点的 ID .您可以在此处找到 AWS 全局条件上下文键列表:AWS global condition context keys.