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

无AWS组织架构情况下,将成员账户AWS Cost & Usage Report共享至主账户的简便方法咨询

直接跨账户导出成员账户CUR到主账户S3桶(无需Lambda)

当然有更省心的方案!你之前用Lambda跨账户传输CUR的方法确实可行,但AWS原生就支持直接把独立成员账户的Cost & Usage Report(CUR)导出到主账户的S3桶,全程不用维护额外代码,稳定性和效率都更高。下面是具体步骤:

1. 主账户S3桶配置跨账户写入权限

首先要给主账户的目标S3桶添加桶策略,允许成员账户的CUR服务角色写入文件:

  • 登录主账户S3控制台,找到你要接收CUR的桶,进入「权限」>「桶策略」
  • 粘贴以下策略代码,替换占位符(如果有多个成员账户,可复制Statement块重复添加):
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "cur.amazonaws.com"
      },
      "Action": ["s3:PutObject", "s3:ListBucket"],
      "Resource": [
        "arn:aws:s3:::你的主账户S3桶名/*",
        "arn:aws:s3:::你的主账户S3桶名"
      ],
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "成员账户ID"
        }
      }
    }
  ]
}
  • 注意:保持桶的「阻止公共访问」默认配置即可,无需开放公共权限。

2. 成员账户配置CUR目标为跨账户S3桶

每个成员账户单独配置CUR直接导出到主账户桶:

  • 登录成员账户的「Billing and Cost Management」控制台,进入「Cost & Usage Reports」
  • 点击「Create report」,填写报告名称,勾选你需要的报告字段(比如Include resource IDs)
  • 到「Delivery options」步骤:
    1. 选择「Amazon S3」作为交付目标
    2. 在「S3 bucket」栏输入主账户的桶名(不用加s3://前缀)
    3. 选择「CSV」作为输出格式,设置交付频率(每日/每月等)
    4. 点击「Verify access」,AWS会自动验证权限是否生效,验证通过后完成报告创建
  • 之后AWS会定期把生成的CUR CSV文件直接上传到主账户的S3桶,默认路径是主账户桶名/你的报告名/YYYY-MM-DD/,你也可以设置自定义前缀来区分不同成员账户的报告。

3. 主账户QuickSight对接CUR数据

现在主账户S3桶里已经有成员账户的CUR数据了,直接在QuickSight配置数据源即可:

  • 登录主账户QuickSight控制台,进入「Manage data」>「New data set」
  • 选择「S3」数据源,输入名称后,在「S3 manifest file」处填写CUR文件的存储前缀(比如s3://你的主账户桶名/成员账户报告前缀/)
  • 配置QuickSight的IAM角色(自动创建的角色会默认添加S3访问权限)
  • 完成数据源创建后,就可以构建数据集、制作可视化报表了。

额外小贴士

  • 多个成员账户只需重复步骤2,无需额外配置主账户桶策略以外的内容
  • CUR服务角色是创建报告时自动生成的,无需手动调整权限
  • 可以给不同成员账户的CUR设置不同的报告前缀,方便在主账户S3桶里分类管理

这种方案完全替代了Lambda传输的方式,是AWS原生支持的功能,不用维护代码,也不会有Lambda执行故障的风险,更适合长期使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 22:22:52