我想解决 EC2 Image Builder 中映像构建管道的“访问遭拒”错误。
简短描述
由于以下原因,您的映像构建管道可能会因 403 访问遭拒错误而失败:
- 实例配置文件没有访问 API 或组件资源所需的 AWS Identity and Access Management (IAM) 权限。
- 实例配置文件角色没有登录 Amazon Simple Storage Service (Amazon S3) 所需的 PutObject 权限。
- 当您在私有子网中构建时,Amazon S3 网关端点自定义策略不允许执行 GetObject 操作。
解决方法
将所需的权限添加到您的实例配置文件中
您必须将以下 IAM 策略添加到与您的实例配置文件关联的 IAM 角色中:
如果您使用自定义策略,则向您的自定义策略添加所需的权限。要附加策略,请参阅 AWS Identity and Access Management (IAM) 的附加策略部分。
添加 Amazon S3 所需的 PutObject 权限
在您的配置中指定的实例配置文件必须具有目标 Amazon S3 存储桶的 s3:PutObject 权限。将以下权限策略添加到目标 Amazon S3 存储桶:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": "arn:aws:s3:::example-bucket-name/*"
}
]
}
**注意:**在前面的命令中,将 example-bucket-name 替换为您的 Amazon S3 存储桶名称。
将所需的 GetObject 权限添加到您的 Amazon S3 网关端点自定义策略中
如果您的 Amazon S3 网关端点策略不允许 Image Builder 下载代码或访问日志,请将 GetObject 添加到自定义策略中:
{
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": "arn:aws:s3:::ec2imagebuilder*"
}