需要哪些 AWS 权限才能查看 ECR 增强图像扫描结果
Which AWS Permissions are needed to see ECR Enhanced Image Scan Findings
我最近在 AWS 上为我的一个 ECR 存储库启用了增强图像扫描。
我的用户可以看到存储库中的图像,每张图像旁边都有一个“查看结果”link。当我单击 link 时,会打开另一个页面,显示该图像的所有发现。
我正在尝试授予另一个 IAM 用户查看这些发现的权限。该用户已经可以看到存储库和图像。用户甚至可以看到每张图片的“查看结果”link。单击 link 会按预期打开新页面,但该页面是空的。它说“没有扫描结果”
我授予用户所有 ECR 列表和读取权限,如下所示:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ecr:GetRegistryPolicy",
"ecr:DescribeImageScanFindings",
"ecr:GetLifecyclePolicyPreview",
"ecr:GetDownloadUrlForLayer",
"ecr:DescribeRegistry",
"ecr:DescribePullThroughCacheRules",
"ecr:DescribeImageReplicationStatus",
"ecr:GetAuthorizationToken",
"ecr:ListTagsForResource",
"ecr:ListImages",
"ecr:BatchGetRepositoryScanningConfiguration",
"ecr:GetRegistryScanningConfiguration",
"ecr:BatchGetImage",
"ecr:DescribeImages",
"ecr:DescribeRepositories",
"ecr:BatchCheckLayerAvailability",
"ecr:GetRepositoryPolicy",
"ecr:GetLifecyclePolicy"
],
"Resource": "*"
}
]
}
请注意,这些权限已包含“ecr:DescribeImageScanFindings”,但用户仍然看不到结果。
我应该授予该用户哪些 IAM 权限才能使这些发现可见?
通过反复试验解决了它。结果还需要来自 inspector 和 inspector2 服务的一些权限。添加以下内容作为内联策略使调查结果可见:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"inspector2:ListCoverageStatistics",
"inspector2:ListFindings",
"inspector2:ListFindingAggregations",
"inspector2:ListCoverage",
"inspector2:GetFindingsReportStatus",
"inspector:ListFindings",
"inspector:DescribeFindings"
],
"Resource": "*"
}
]
}
请注意,我的 IAM 用户已经在 ECR 上拥有 read 和 list 权限。
如果您一直在努力确定脚本或应用程序正在使用哪些 IAM 操作,您始终可以使用“iamdump”作为开始:https://github.com/claranet/iamdump
我最近在 AWS 上为我的一个 ECR 存储库启用了增强图像扫描。
我的用户可以看到存储库中的图像,每张图像旁边都有一个“查看结果”link。当我单击 link 时,会打开另一个页面,显示该图像的所有发现。
我正在尝试授予另一个 IAM 用户查看这些发现的权限。该用户已经可以看到存储库和图像。用户甚至可以看到每张图片的“查看结果”link。单击 link 会按预期打开新页面,但该页面是空的。它说“没有扫描结果”
我授予用户所有 ECR 列表和读取权限,如下所示:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ecr:GetRegistryPolicy",
"ecr:DescribeImageScanFindings",
"ecr:GetLifecyclePolicyPreview",
"ecr:GetDownloadUrlForLayer",
"ecr:DescribeRegistry",
"ecr:DescribePullThroughCacheRules",
"ecr:DescribeImageReplicationStatus",
"ecr:GetAuthorizationToken",
"ecr:ListTagsForResource",
"ecr:ListImages",
"ecr:BatchGetRepositoryScanningConfiguration",
"ecr:GetRegistryScanningConfiguration",
"ecr:BatchGetImage",
"ecr:DescribeImages",
"ecr:DescribeRepositories",
"ecr:BatchCheckLayerAvailability",
"ecr:GetRepositoryPolicy",
"ecr:GetLifecyclePolicy"
],
"Resource": "*"
}
]
}
请注意,这些权限已包含“ecr:DescribeImageScanFindings”,但用户仍然看不到结果。
我应该授予该用户哪些 IAM 权限才能使这些发现可见?
通过反复试验解决了它。结果还需要来自 inspector 和 inspector2 服务的一些权限。添加以下内容作为内联策略使调查结果可见:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"inspector2:ListCoverageStatistics",
"inspector2:ListFindings",
"inspector2:ListFindingAggregations",
"inspector2:ListCoverage",
"inspector2:GetFindingsReportStatus",
"inspector:ListFindings",
"inspector:DescribeFindings"
],
"Resource": "*"
}
]
}
请注意,我的 IAM 用户已经在 ECR 上拥有 read 和 list 权限。
如果您一直在努力确定脚本或应用程序正在使用哪些 IAM 操作,您始终可以使用“iamdump”作为开始:https://github.com/claranet/iamdump