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

AWS第三方Lambda访问配置:权限获取与专属授权问询

刚好之前做过类似的跨账户Lambda调用场景,给你梳理下:

第三方需要提供的核心信息

要让你的服务能调用第三方的Lambda函数,对方至少需要提供以下关键信息:

  • Lambda函数ARN:这是AWS中唯一标识该Lambda函数的资源名称,格式通常是 arn:aws:lambda:区域ID:第三方账户ID:function:函数名称,你的服务必须通过这个ARN指定调用目标。
  • (可选但建议)第三方AWS账户ID:虽然ARN里已经包含了账户ID,但单独提供可以方便你在配置自身IAM权限时做校验,避免输入错误。

如果对方的Lambda函数部署在VPC私有子网中,可能还需要确认是否配置了VPC端点或者NAT网关允许外部调用,但这类场景属于特殊情况,最简调用场景下ARN是核心必备项。

仅允许我方服务调用的最简方式

要实现仅你的服务能调用对方Lambda,最直接且安全的方式是通过Lambda资源-based策略(也就是在第三方的Lambda上配置权限,开放给你的服务对应的IAM实体),步骤如下:

  1. 你需要提供给第三方你的服务使用的IAM执行角色ARN(或者专门用于调用Lambda的IAM用户/角色ARN)——这个是你方服务发起调用时的身份标识。
  2. 第三方登录AWS控制台,找到他们的Lambda函数,进入「配置」→「权限」→「资源-based策略」,添加一条授权策略,允许你的IAM实体执行lambda:InvokeFunction动作。
  3. 示例策略代码如下:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "替换为你方IAM角色/用户的ARN"
      },
      "Action": "lambda:InvokeFunction",
      "Resource": "替换为第三方Lambda函数的ARN"
    }
  ]
}
  1. 同时,你需要在自己的IAM策略中给服务的执行角色添加权限,允许调用该第三方Lambda的ARN,示例策略片段:
{
  "Effect": "Allow",
  "Action": "lambda:InvokeFunction",
  "Resource": "替换为第三方Lambda函数的ARN"
}

这种方式的优势是权限最小化:只有你指定的IAM实体能调用对方的Lambda,第三方不需要额外管理复杂的访问控制列表,配置起来也最直接。

内容的提问来源于stack exchange,提问作者ovg

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 07:17:06