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

启用AWS跨账号S3读写且桶所有者保留全部对象所有权的故障排查

遗漏配置排查清单
  • 账号B侧SageMaker执行角色未配置对应S3权限
    你在账号C侧的桶策略仅向账号B的根用户开放了权限,但SageMaker Notebook实际运行时使用的是绑定的IAM执行角色,而非账号B根身份。你需要登录账号B的IAM控制台,找到该Notebook对应的执行角色,为其添加如下权限策略:
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "s3:PutObject",
                    "s3:PutObjectAcl",
                    "s3:GetObject*",
                    "s3:GetBucket*",
                    "s3:List*"
                ],
                "Resource": [
                    "arn:aws:s3:::<Bucket Q name>",
                    "arn:aws:s3:::<Bucket Q name>/*"
                ]
            }
        ]
    }
    
  • 存储桶Q的对象所有权配置不匹配
    检查账号C侧存储桶Q的对象所有权设置:
    • 如果设置为Bucket owner enforced(桶所有者强制),该模式会禁用所有ACL配置,你代码中传入的ACL='bucket-owner-full-control'参数以及桶策略中的s3:x-amz-acl条件都会触发权限拒绝,需删除代码中的ACL参数、移除桶策略里的Condition块即可,该模式下上传的对象所有权会自动归属账号C
    • 如果设置为Bucket owner preferred(桶所有者优先),原有桶策略和代码参数配置才生效,不要使用*Object writer(对象写入者)*模式
  • KMS加密权限缺失
    如果存储桶Q开启了KMS客户托管密钥(CMK)加密,你需要在账号C侧的KMS密钥策略中,添加账号B的SageMaker执行角色的kms:GenerateDataKey、kms:Decrypt权限,否则加密对象的读写操作都会被拒绝
  • VPC端点策略限制
    如果你的SageMaker Notebook部署在VPC内、通过VPC端点访问S3,需要检查VPC端点的访问策略是否允许访问账号C下的存储桶Q

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 14:24:02