【问题标题】:How to define a public API end point for private lambda如何为私有 lambda 定义公共 API 端点
【发布时间】:2021-05-26 00:53:21
【问题描述】:

我正在运行在 VPC 下运行的 RDS 实例。我有一个连接到 RDS 实例以进行读/写操作的 lambda。现在我想在同一个 VPC 中分配 lambda,以便它能够与 RDS 连接,但我不希望我的 lambda 具有公共访问权限。

现在,我想使用 API 网关定义一个公共 API 端点,它可以连接到我在 VPC 中的私有 lambda。我已经阅读了多篇文章和 AWS 文档,但无法获得实现这一目标的确切步骤。那可能吗?感谢您提前提供任何指示。

【问题讨论】:

  • 你到底在纠结什么?创建 api 网关,将其连接到 vpc 中的 lambda,将 lambda 放入 vpc 或让 lambda 与 RDS 对话?
  • 我正在努力将 api 网关连接到 vpc 中的 lambda。
  • 为什么?不应该有什么特别的事情要做。 lambda 应该像非 vpc lambda 一样被集成。
  • 您只需将资源(路径)和方法(即 GET)添加到您的 API Gateway API,然后将 Lambda 集成分配给此方法。这是非常直接的。您使用什么机制来配置 API 网关? CloudFormation、CDK、Terraform 还是通过控制台(web ui)手动?
  • 当我在 vpc 中使用 lambda 配置 API 时,它会给我超时。我正在使用控制台方式。

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


【解决方案1】:

您可以从此屏幕在 VPC 中指定 lambda 函数,就像 lambda 不驻留在 VPC 中一样。

【讨论】:

  • 谢谢,但它不起作用。它给了我一个超时错误。
  • @Aarkan “它给了我一个超时错误。”不是正确的错误描述,it 是什么?你得到什么超时,lambda真的被调用了吗? API 网关是否有权调用 lambda 等!?请注意,所有这些都应该是原始问题的一部分。
猜你喜欢
  • 1970-01-01
  • 2018-07-23
  • 2011-06-18
  • 1970-01-01
  • 2013-07-27
  • 1970-01-01
  • 2021-06-28
  • 2019-06-05
  • 1970-01-01
相关资源
最近更新 更多