VPC模式下使用SageMaker JumpStart遇S3授权错误求助
在VPC模式下使用SageMaker Studio,已配置默认SageMaker全访问策略,且为执行角色添加了S3全访问权限,但仍触发如下错误:
Something went wrong. please ensure that your account is authorized to read from S3.
(错误截图显示上述权限提示内容)
当前环境中S3可通过VPC终端节点访问,咨询SageMaker JumpStart是否需要特定的S3权限。
是的,SageMaker JumpStart需要访问AWS管理的特定S3存储桶,即便已有S3全访问权限,也可能因VPC配置或权限细节缺失导致报错,核心排查点如下:
明确JumpStart所需的S3权限
JumpStart依赖AWS维护的aws-jumpstart-*前缀S3桶(存储预训练模型、数据集、示例代码等资源),需确保执行角色的权限策略中包含对这些桶的访问权限,示例权限片段:{ "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::aws-jumpstart-*", "arn:aws:s3:::aws-jumpstart-*/*" ] }即便角色已有S3全访问策略,若VPC终端节点策略限制了这些桶的访问,仍会触发权限错误。
检查S3 VPC终端节点配置
S3仅支持网关型VPC终端节点,需确认:- 终端节点已关联到Studio所在子网的路由表,且路由表中添加了指向S3终端节点的前缀列表条目;
- 终端节点策略允许访问
aws-jumpstart-*桶,示例终端节点策略:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::aws-jumpstart-*", "arn:aws:s3:::aws-jumpstart-*/*" ] } ] }
验证VPC DNS配置
确保Studio所在VPC已启用enableDnsHostnames和enableDnsSupport属性,否则VPC内资源无法正确解析S3终端节点域名,导致访问失败。确认角色信任关系
检查SageMaker Studio执行角色的信任策略,确保允许sagemaker.amazonaws.com扮演该角色,避免因信任关系错误导致权限无法生效。
内容的提问来源于stack exchange,提问作者durga_sury

