【问题标题】:Timeout calling PRIVATE API Gateway from another AWS account从另一个 AWS 账户调用 PRIVATE API Gateway 超时
【发布时间】:2020-07-22 18:54:35
【问题描述】:

我正在尝试从另一个 AWS 账户中的 lambda 函数调用我的私有 API 网关。但是我在拨打电话时遇到了超时(实际上,http 调用只是卡住了并达到了我的客户端超时)。

在托管私有 AWS 账户的 AWS 账户中,我执行了以下操作 * 在 API 后面创建了我的私有 API 网关和 lambda

  • 创建资源策略并提供对其他 AWS 调用者(调用者)的 VPC 端点的访问权限
  • 创建启用私有 DNS 的 VPC 终端节点。
  • 将策略附加到具有完全访问权限的 VPC 端点、具有所有流量访问权限的安全组。

在第二个 AWS 账户(调用者)中,我执行了以下操作 * 为具有完全访问权限的 API 网关创建 VPC 和 VPC 端点。

  • 在具有访问所有流量(入站和出站)的安全组的 VPC 中创建了 lambda
  • 在 lambda 中,我使用 VPC 端点(帐户 1)的公共 DNS 并使用标头“x-apigw-api-id”

我已经尝试过本页https://aws.amazon.com/premiumsupport/knowledge-center/api-gateway-private-endpoint-connection/ 中提到的调试步骤。 还尝试了基于 VPC ID 而不是 VPC 终端节点 ID 的白名单。

解决此问题的任何建议。

【问题讨论】:

  • 嗨。因此,您有 2 个帐户和 2 个 vpc(每个帐户一个)。根据您的描述,我在 2 个 VPC 之间看不到任何跨账户对等连接。你有这样的联系吗?
  • @Marcin 不,我没有 VPC 对等连接。这是必需的吗?在 AWS 文档 aws.amazon.com/premiumsupport/knowledge-center/… 中,它说只有当 API 位于不同区域时我们才需要对等连接
  • 你是对的。如果是同一个帐户,则不需要对等连接。
  • 调用者账户中的Lambda是否有proper execution role用于vpc访问?
  • 哇,感谢您的试用。我刚刚想通了这个问题。我在拨打电话时使用了另一个帐户的 VPC 终端节点。这解决了问题

标签: amazon-web-services aws-lambda aws-api-gateway


【解决方案1】:

刚刚发现问题。我在拨打电话时使用了另一个 aws 帐户的 VPC 端点。当我使用同一帐户的 VPC 端点时,它起作用了。

【讨论】:

    猜你喜欢
    • 2021-06-10
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多