You need to enable JavaScript to run this app. 使用VPC端点登录Amazon ECR报403错误的技术问询
优惠活动
大模型
产品
解决方案
定价
更多

使用VPC端点登录Amazon ECR报403错误的技术问询

私有VPC内EC2通过VPC端点访问ECR报403问题记录

基础环境

  • SDK版本:aws-cli/1.18.147 Python/2.7.18 Linux/4.14.203-156.332.amzn2.x86_64 botocore/1.18.6
  • 运行系统:Amazon Linux 2

已完成配置与正常验证项

已按ECR VPC端点配置要求创建对应服务的VPC端点,所有端点使用默认策略,涉及的端点服务包含:

com.amazonaws.us-east-1.ecr.api
com.amazonaws.us-east-1.ecr.dkr
com.amazonaws.us-east-1.s3

以下操作均可正常执行无报错:

# 获取ECR登录密码
aws --region us-east-1 ecr get-login-password
# 公网域名下完成docker登录
aws --region us-east-1 ecr get-login --no-include-email | bash
# 调用ECR API创建测试仓库
aws --region us-east-1 ecr create-repository --repository-name test/alpine2 --endpoint-url https://api.ecr.us-east-1.amazonaws.com
# 公网Dkr域名下验证registry授权
TOKEN=$(aws --region us-east-1 ecr get-authorization-token --output text --query 'authorizationData[].authorizationToken')
curl -i -H "Authorization: Basic $TOKEN" https://<账号ID>.dkr.ecr.us-east-1.amazonaws.com/v2/test/alpine2/tags/list

异常表现

尝试通过VPC端点域名完成docker登录ECR时,返回403错误:

# 执行的登录命令
docker login -u AWS -p $(aws --region us-east-1 ecr get-login-password) api.ecr.us-east-1.amazonaws.com
# 命令输出
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: login attempt to https://api.ecr.us-east-1.amazonaws.com/v2/ failed with status: 403 Forbidden

# 同域名下curl授权测试
curl -i -H "Authorization: Basic $TOKEN" https://api.ecr.us-east-1.amazonaws.com/v2/test/alpine2/tags/list 
# 响应头
HTTP/1.1 403 Forbidden
x-amzn-RequestId: f7c5f001-ce49-4cb9-ae9a-8301701db80d
Date: Tue, 1 Dec 2020 13:53:07 GMT
Content-Length: 7402
# 响应体报错
<IncompleteSignatureException>
  <Message>'%LONG_TOKEN_FROM_PREVIOUS_COMMAND%' not a valid key=value pair (missing equal-sign) in Authorization header: 'Basic %LONG_TOKEN_FROM_PREVIOUS_COMMAND%'.</Message>
</IncompleteSignatureException>

补充说明

EC2实例运行在私有VPC内,通过ECR公网域名可正常完成镜像推送,说明实例本身已具备ECR操作权限,当前怀疑问题与VPC端点配置相关,需要定位根因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.15 05:24:05