You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让无VPC的Lambda部署在VPC可访问的私用APIGateway后端?

解决方案

核心方案:使用API Gateway私有端点+VPC端点(VPCE)

这是完全匹配你需求的方案,既遵循Lambda不部署在VPC内的最佳实践,又实现VPC内服务器安全访问API且不暴露公网:

  • 创建私有类型的API Gateway:在控制台创建API时选择「私有」类型,此时API不会生成公网端点,仅允许通过VPC端点访问。
  • 配置VPC端点(VPCE):在VPC控制台创建针对API Gateway的VPC端点(服务类型为com.amazonaws.<你的区域>.execute-api),关联目标VPC的子网和安全组,确保VPC内服务器所在安全组允许访问该VPCE的443端口。
  • 配置API Gateway资源策略:添加策略限制仅指定VPC的流量能调用API,防止未授权访问。核心策略示例:
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": "*",
          "Action": "execute-api:Invoke",
          "Resource": "arn:aws:execute-api:<区域>:<账号ID>:<API ID>/*",
          "Condition": {
            "StringEquals": {
              "aws:SourceVpc": "<你的VPC ID>"
            }
          }
        }
      ]
    }
    
  • 关联Lambda到API Gateway:将部署在VPC外的Lambda设为API的集成目标,确保Lambda的IAM角色授予API Gateway调用权限(可通过控制台「集成请求」自动配置,或手动添加lambda:InvokeFunction权限)。

验证要点

  • VPC内服务器可通过私有API的域名(格式:<API ID>.execute-api.<区域>.amazonaws.com)访问,流量全程在AWS内部网络传输,无需NAT网关或公网出口。
  • 保持Lambda在VPC外运行,完全符合Serverless Lens的最佳实践,避免VPC部署带来的冷启动延迟和额外网络配置成本。

内容的提问来源于stack exchange,提问作者Ramón J Romero y Vigil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 15:55:20