如何在AWS中创建API密钥与密钥供Jenkins对接ECR
在AWS中创建用于Jenkins与ECR通信的API密钥凭证步骤
1. 创建专用IAM用户
- 登录AWS控制台,进入IAM服务
- 左侧导航栏选择「用户」,点击「添加用户」
- 输入用户名(例如
jenkins-ecr-push),勾选「访问密钥 - 编程访问」,点击「下一步」 - 权限配置:选择「直接附加现有策略」,搜索并勾选
AmazonEC2ContainerRegistryFullAccess(若需最小权限,可后续自定义策略),点击「下一步」 - 标签(可选):按需添加标签后点击「下一步」
- 确认用户信息无误,点击「创建用户」
2. 获取访问密钥与秘密密钥
- 用户创建完成后,页面会显示访问密钥ID和秘密访问密钥
- 务必立即点击「下载.csv文件」保存,或手动复制这两个值——秘密访问密钥仅在此页面显示一次,后续无法找回
3. 在Jenkins中配置凭证
- 进入Jenkins控制台,点击「管理Jenkins」→「管理凭证」
- 选择目标存储域(通常选「全局凭据」),点击「添加凭证」
- 凭证类型选择「AWS凭证」,填入刚才获取的访问密钥ID和秘密访问密钥
- 设置一个易识别的ID(例如
aws-ecr-credentials)和描述,点击「确定」
可选:自定义最小权限IAM策略
若不想给用户全ECR权限,可创建自定义策略并附加给IAM用户,示例策略仅允许推送指定ECR仓库:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:GetRepositoryPolicy", "ecr:DescribeRepositories", "ecr:ListImages", "ecr:BatchGetImage", "ecr:InitiateLayerUpload", "ecr:UploadLayerPart", "ecr:CompleteLayerUpload", "ecr:PutImage" ], "Resource": "arn:aws:ecr:你的AWS区域:你的AWS账户ID:repository/你的ECR仓库名" } ] }
内容的提问来源于stack exchange,提问作者Peter Penzov
相关产品推荐
相关产品推荐

