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

如何将AWS中账号A的EC2实例文件复制到账号B的S3存储桶?

AWS跨账号从EC2复制文件到S3的配置与操作步骤

一、IAM策略配置

1. 账号A:用户A的IAM权限策略

给账号A下的用户A附加以下IAM策略,允许其向账号B的目标S3桶上传文件:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": "arn:aws:s3:::目标桶名称/*"
        }
    ]
}

说明:PutObjectAcl为可选权限,若无需设置文件ACL可移除;替换目标桶名称为账号B的实际S3桶名。

2. 账号B:S3桶的桶策略

在账号B的目标S3桶上配置桶策略,允许账号A的用户A写入数据:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::账号A数字ID:user/用户A"
            },
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": "arn:aws:s3:::目标桶名称/*"
        }
    ]
}

说明:替换账号A数字ID为账号A的12位数字ID,用户A为账号A中用户的名称,目标桶名称为实际桶名。若需要列出桶内容,可添加s3:ListBucket动作,对应的Resource设为arn:aws:s3:::目标桶名称。

二、操作步骤

1. 配置账号A的用户A权限

  • 登录账号A的IAM控制台,找到用户A。
  • 点击「添加权限」→「附加现有策略直接」→「创建策略」,选择JSON模式粘贴上述策略,完成创建后附加给用户A。
  • 若用户A未生成Access Key,进入用户A的「安全凭证」页面,生成并保存Access Key和Secret Access Key。

2. 配置账号B的S3桶权限

  • 登录账号B的S3控制台,打开目标桶的「权限」标签页。
  • 找到「桶策略」并点击「编辑」,粘贴上述桶策略,替换对应参数后保存。

3. 在EC2实例中执行文件上传

  • 登录账号A的EC2实例,确保AWS CLI已安装:
    • Amazon Linux/RHEL:sudo yum install aws-cli -y
    • Ubuntu/Debian:sudo apt update && sudo apt install aws-cli -y
  • 配置用户A的凭证:执行aws configure,依次输入Access Key、Secret Access Key、默认区域(建议与目标桶区域一致)、输出格式(选json即可)。
  • 上传文件:
    • 单个文件:aws s3 cp /本地文件路径 s3://目标桶名称/目标路径/
    • 整个目录:aws s3 sync /本地目录路径 s3://目标桶名称/目标目录路径/

注意事项

  • 确认EC2实例的安全组允许出站访问S3(默认放行,自定义安全组需检查)。
  • 若使用EC2实例角色而非用户A的Access Key,需将账号A的用户策略附加到实例角色,同时桶策略中Principal改为实例角色的ARN。
  • 大文件上传可使用aws s3 cp --multipart-chunk-size 100MB参数优化传输效率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 12:22:56