

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 排查 Amazon ECR 中的映像扫描问题
<a name="image-scanning-troubleshooting"></a>

以下是常见的镜像扫描失败。您可以在 Amazon ECR 控制台中显示图片详情、通过 API 或使用 API 查看此类错误。 AWS CLI ` DescribeImageScanFindings`

UnsupportedImageError  
尝试对使用 Amazon ECR 不支持其基础镜像扫描的操作系统构建的镜像进行基础扫描时，您可能会得到 `UnsupportedImageError` 错误。Amazon ECR 支持 Amazon Elastic Container Storage Storage Simple Storage、Amazon Linux 2、Debian、Ubuntu、CentOS、Oracle Linux、Alpine 和 RHEL Linux 发行版的主要版本。一旦分发失去其供应商的支持，Amazon ECR 可能不再支持扫描它是否存在漏洞。Amazon ECR 不支持扫描从 [Docker scratch](https://hub.docker.com/_/scratch) 镜像构建的镜像。  
使用增强型扫描时，Amazon Inspector 支持扫描特定操作系统和媒体类型。有关完整列表，请参阅 *Amazon Inspector 用户指南*中的[支持的操作系统和媒体类型](https://docs.aws.amazon.com/inspector/latest/user/enable-disable-scanning-ecr.html#ecr-supported-media)。

返回 `UNDEFINED` 严重性级别  
您可能会收到严重性级别为 ` UNDEFINED` 的扫描结果。造成这种情况的常见原因如下：  
+ CVE 源未向该漏洞分配优先级。
+ 该漏洞被分配了一个 Amazon ECR 无法识别的优先级。
要确定漏洞的严重性和描述，您可以直接从源查看 CVE。

## 了解扫描状态 `SCAN_ELIGIBILITY_EXPIRED`
<a name="image-scanning-troubleshooting-eligibility"></a>

如果您的私有注册表启用了使用 Amazon Inspector 的增强扫描，并且您正在查看扫描漏洞，则可能会看到扫描状态为 ` SCAN_ELIGIBILITY_EXPIRED`。造成这种情况的常见原因如下。
+ 当您为私有注册表初始开启增强扫描时，Amazon Inspector 将仅根据映像推送时间戳识别过去 30 天内推送到 Amazon ECR 的映像。更早映像的扫描状态将为 ` SCAN_ELIGIBILITY_EXPIRED`。如果您需要让 Amazon Inspector 扫描这些映像，则应将其重新推送到您的存储库。
+ 如果在 Amazon Inspector 控制台中更改了 **ECR 重新扫描持续时间**并且该时间已过，则镜像的扫描状态将会更改为 ` inactive` 并显示原因代码 `expired`，并且将会计划关闭该镜像的所有关联调查结果。这会导致 Amazon ECR 控制台将扫描状态列为 ` SCAN_ELIGIBILITY_EXPIRED`。