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

跨AWS账号Lambda触发:从账号A的Lambda触发账号B的Lambda并实现数据传递的配置咨询

嘿,我来帮你搞定这个跨账号Lambda调用的问题——完全不用额外加API Gateway,直接调用就行,权限配置其实两边都要弄,我给你一步步讲清楚~

跨账号直接调用Lambda的实现方案

1. 先给账号B的Lambda开权限(允许账号A调用)

首先得在账号B的目标Lambda上开个口子,允许账号A的实体来调用它,这就得靠基于资源的策略(resource-based policy)来实现:

  • 登录账号B的AWS控制台,找到你要触发的那个Lambda函数
  • 切到「配置」→「权限」标签,拉到最下面的「资源策略」板块,点「添加权限」
  • 主体类型选「AWS账户」,输入账号A的12位ID
  • 操作选lambda:InvokeFunction,保存就搞定了

嫌控制台麻烦的话,也可以用AWS CLI(在账号B的环境下执行):

aws lambda add-permission \
  --function-name <账号B的Lambda函数名/完整ARN> \
  --statement-id allow-account-a-invoke \
  --action lambda:InvokeFunction \
  --principal <账号A的12位ID>

2. 给账号A的Lambda执行角色加调用权限

接下来要在账号A这边,给你的源Lambda的执行角色加权限,让它有权限去调用账号B的Lambda:

  • 登录账号A的AWS控制台,找到源Lambda的执行角色(在「配置」→「权限」里能看到角色名)
  • 进入这个IAM角色,点「添加权限」→「创建内联策略」
  • 选「JSON」模式,粘贴下面的策略内容(记得替换成账号B的Lambda ARN):
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "lambda:InvokeFunction",
      "Resource": "<账号B的Lambda函数完整ARN>"
    }
  ]
}
  • 给策略起个好记的名字(比如AllowInvokeAccountBLambda),保存就行

3. 账号A的Lambda代码里直接调用目标Lambda

最后一步,在账号A的Lambda函数里,用AWS SDK直接调用账号B的Lambda,把你拿到的数据传过去就行。比如用Python的boto3示例:

import boto3
import json

lambda_client = boto3.client('lambda', region_name='<你的AWS区域,比如us-east-1>')

def lambda_handler(event, context):
    # 这里是你从数据源获取数据的逻辑,替换成你自己的代码
    fetched_data = {"user_id": 123, "data_content": "your-fetched-data-here"}
    
    # 调用账号B的Lambda函数
    response = lambda_client.invoke(
        FunctionName='<账号B的Lambda函数完整ARN>',
        InvocationType='RequestResponse', # 同步调用,要异步的话改成Event
        Payload=json.dumps(fetched_data).encode('utf-8')
    )
    
    # 如果需要处理账号B Lambda的返回结果,就加这段
    result = json.loads(response['Payload'].read())
    return {
        'statusCode': 200,
        'body': result
    }

几个关键注意点

  • 两个Lambda最好在同一个AWS区域,如果不在的话,要在boto3客户端里指定账号B Lambda所在的区域
  • 要是想更精确控制权限,资源策略里的主体可以直接写账号A的Lambda执行角色ARN,而不是整个账号A的ID,这样就只有这个特定的Lambda能调用
  • 异步调用的话,把InvocationType改成Event就行,账号A的Lambda不用等结果,直接继续执行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 18:07:27