

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

# 使用 Amazon Inspector 扫描 Amazon Elastic Container Registry 容器映像
<a name="scanning-ecr"></a>

 Amazon Inspector 会扫描存储在 Amazon Elastic Container Registry 中的容器映像是否存在软件漏洞，以生成[程序包漏洞调查发现](https://docs.aws.amazon.com/)。激活 Amazon ECR 扫描后，会将 Amazon Inspector 设置为私有注册表的首选扫描服务。

**注意**  
 Amazon ECR 使用注册策略向 AWS 委托人授予权限。该委托人拥有致电 Amazon Inspect APIs or 进行扫描所需的权限。设置注册表策略的范围时，不得在 `deny` 中添加 `ecr:*` 操作或 `PutRegistryScanningConfiguration`。在启用和禁用 Amazon ECR 扫描时，这样会导致在注册表级别出现错误。

 通过基本扫描，可以将存储库配置为在推送时扫描，也可以执行手动扫描。使用增强扫描，可以在注册表级别扫描操作系统和编程语言程序包漏洞。要 side-by-side比较基本扫描和增强扫描之间的区别，请参阅 [Amazon Inspector 常见问题解答](https://aws.amazon.com/inspector/faqs/)。

**注意**  
 基本扫描服务通过 Amazon ECR 提供并进行计费。有关更多信息，请参阅 [Amazon Elastic Container Registry 定价](https://aws.amazon.com/ecr/pricing/)。增强型扫描通过 Amazon Inspector 提供并进行计费。有关更多信息，请参阅 [Amazon Inspector 定价](https://aws.amazon.com/inspector/pricing/)。

 有关如何激活 Amazon ECR 扫描的信息，请参阅[激活扫描类型](https://docs.aws.amazon.com/inspector/latest/user/activate-scans.html)。有关如何查看调查发现的信息，请参阅[查看 Amazon Inspector 调查发现](https://docs.aws.amazon.com/inspector/latest/user/findings-understanding-locating-analyzing.html)。有关如何在映像级别查看 Amazon ECR 内的调查发现的信息，请参阅《Amazon Elastic Container Registry 用户指南》**中的[映像扫描](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html)。您可以使用 “ AWS 服务 不可用于基本扫描”（例如[AWS Security Hub CSPM 和 Amazon](https://docs.aws.amazon.com/inspector/latest/user/integrations.html)）来管理调查结果 EventBridge。

 您可以通过报道页面和，在 Amazon Inspector 中查看每个存储库的扫描配置 APIs。但是，只能在 Amazon ECR 中修改基本扫描与连续扫描的配置设置。Amazon Inspector 提供对这些设置的可见性，但不提供直接修改功能。有关更多信息，请参阅《Amazon ECR 用户指南》**中的[在 Amazon ECR 中扫描映像是否存在软件漏洞](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html)。

 本节提供了有关 Amazon ECR 扫描的信息，并介绍了如何为 Amazon ECR 存储库配置增强扫描。

## Amazon ECR 扫描的扫描行为
<a name="ecr-scan-behavior"></a>

 首次激活 Amazon ECR 扫描时，Amazon Inspector 会检测过去 14 天内推送的映像。然后，Amazon Inspector 会扫描这些映像，并将扫描状态设置为 `ACTIVE`。Amazon Inspector 将仅扫描 ECR 中处于活动状态的图像（`imageStatus`字段为`ACTIVE`）。Amazon Inspector 不会扫描状态为 ECR（`imageStatus`字段为`ARCHIVED`）的图片。

 如果启用连续扫描，Amazon Inspector 将监控图像在 14 天内（默认）、 last-in-use日期在 14 天内（默认）或在配置的重新扫描持续时间内扫描图像。对于 2025 年 5 月 16 日之前创建的 Amazon Inspector 账户，默认配置是重新扫描以监控映像是否在过去 90 天内被推送或拉取。有关更多信息，请参阅[配置 Amazon ECR 重新扫描持续时间](https://docs.aws.amazon.com/inspector/latest/user/scanning_resources_configure_duration_setting_ecr.html)。

对于连续扫描，Amazon Inspector 会对以下情况中的容器映像启动新的漏洞扫描：
+ 每当推送新的容器映像时。
+ 每当 Amazon Inspector 在其数据库中添加新的常见漏洞和风险（CVE）项目，并且 CVE 与该容器映像相关时（仅限持续扫描）。
+ 每当容器镜像在 ECR 中从存档转换为活动镜像时。

如果您将存储库配置为推送扫描，则只有在推送映像时才会对其进行扫描。

您可以通过**账户管理**页面的**容器映像**选项卡或使用 [https://docs.aws.amazon.com/inspector/v2/APIReference/API_ListCoverage.html](https://docs.aws.amazon.com/inspector/v2/APIReference/API_ListCoverage.html) API 来查看上次检查容器映像是否存在漏洞的时间。发生以下事件时，Amazon Inspector 会更新 Amazon ECR 映像的**上次扫描时间**字段：
+ Amazon Inspector 完成对容器映像的初始扫描时。
+ 由于 Amazon Inspector 数据库中添加了影响该容器映像的新的常见漏洞和风险（CVE）项目，因此 Amazon Inspector 重新扫描容器映像时。

### 已存档的 ECR 容器镜像
<a name="archived-ecr-images"></a>

 Amazon Inspector 不扫描存档在 ECR (`imageStatus`is`ARCHIVED`) 中的容器图像。当 ECR 中的活动图像转换为存档图像时，Amazon Inspector 会自动关闭调查结果，然后在 3 天后删除调查结果。如果存档的容器镜像在 ECR 中变为活动镜像，Amazon Inspector 会触发新的扫描。

## 将容器映像映射到正在运行的容器
<a name="ecr-mapping-container-images"></a>

 Amazon Inspector 通过将容器映像映射到 Amazon Elastic Container Service（Amazon ECS）和 Amazon Elastic Kubernetes Service（Amazon EKS）中正在运行的容器，来提供全面的容器安全管理。这些映射可让您深入了解正在运行的容器上映像的漏洞。

**注意**  
 仅使用托管式策略 `AWSReadOnlyAccess` 无法提供查看 Amazon ECR 映像与正在运行的容器之间映射的足够权限。要查看容器映像映射信息，您需要同时使用 `AWSReadOnlyAccess` 和 `AWSInspector2ReadOnlyAccess` 托管式策略。

 您可以根据运营风险确定修复工作的优先级，并在整个容器生态系统中保持安全覆盖范围。您可以查看当前正在使用的容器映像数量，以及过去 24 小时内在 Amazon ECS 或 Amazon EKS 集群上最后使用的具体容器映像。您还可以查看部署了多少 Amazon ECS 任务和 Amazon EKS 容器组（pod）。可以在 Amazon Inspector 控制台的容器映像调查发现的详细信息屏幕上并对 [https://docs.aws.amazon.com/inspector/v2/APIReference/API_FilterCriteria.html](https://docs.aws.amazon.com/inspector/v2/APIReference/API_FilterCriteria.html) 数据类型使用 `ecrImageInUseCount` 和 `ecrImageLastInUseAt` 筛选条件来找到此信息。对于新的容器映像或账户，数据可能需要长达 36 小时才能使用。之后，此数据每 24 小时更新一次。有关更多信息，请参阅[查看 Amazon Inspector 调查发现](https://docs.aws.amazon.com/inspector/latest/user/findings-understanding-locating-analyzing.html)和[查看 Amazon Inspector 调查发现的详细信息](https://docs.aws.amazon.com/inspector/latest/user/findings-understanding-details.html)。

**注意**  
 激活 Amazon ECR 扫描并将存储库配置为连续扫描时，会将这些数据自动发送到 Amazon ECR 调查发现。必须在 Amazon ECR 存储库级别配置连续扫描。有关更多信息，请参阅《Amazon Elastic Container Registry 用户指南》**中的[增强扫描](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning-enhanced.html)。

 您也可以根据集群中的[容器镜像的 last-in-use日期重新扫描](https://docs.aws.amazon.com/inspector/latest/user/scanning_resources_configure_duration_setting_ecr.html)这些镜像。

 搭载 Amazon ECS 和 Amazon EKS 的 Fargate 也支持此功能。

## 支持的操作系统和媒体类型
<a name="ecr-supported-media"></a>

 有关支持的操作系统的信息，请参阅[支持的操作系统：使用 Amazon Inspector 执行 Amazon ECR 扫描](supported.md#supported-os-ecr)。

 Amazon Inspector 对 Amazon ECR 存储库的扫描涵盖以下支持的媒体类型：

**映像清单**
+  `"application/vnd.oci.image.manifest.v1+json"` 
+  `"application/vnd.docker.distribution.manifest.v2+json"` 

**映像配置**
+  `"application/vnd.docker.container.image.v1+json"` 
+  `"application/vnd.oci.image.config.v1+json"` 

**映像层**
+  `"application/vnd.docker.image.rootfs.diff.tar"` 
+  `"application/vnd.docker.image.rootfs.diff.tar.gzip"` 
+  `"application/vnd.docker.image.rootfs.foreign.diff.tar.gzip"` 
+  `"application/vnd.oci.image.layer.v1.tar"` 
+  `"application/vnd.oci.image.layer.v1.tar+gzip"` 
+  `"application/vnd.oci.image.layer.v1.tar+zstd"` 
+  `"application/vnd.oci.image.layer.nondistributable.v1.tar"` 
+  `"application/vnd.oci.image.layer.nondistributable.v1.tar+gzip"` 

**注意**  
 Amazon Inspector 不支持使用 `"application/vnd.docker.distribution.manifest.list.v2+json"` 媒体类型来扫描 Amazon ECR 存储库。

# 配置 Amazon ECR 重新扫描持续时间
<a name="scanning_resources_configure_duration_setting_ecr"></a>

 Amazon ECR 重新扫描持续时间设置决定了 Amazon Inspector 持续监控存储库中的容器映像的时间。您可以为图像 last-in-use日期、上次提取日期和推送日期配置重新扫描持续时间。最佳做法是，根据您的环境配置最合适的重新扫描持续时间。

 如果您经常构建映像，请选择较短的扫描持续时间。对于长时间使用的映像，请选择更长的扫描持续时间。新帐户（包括添加到组织中的新帐户）的默认扫描持续时间为 14 天。

 只要映像在集群上的上次使用或推送时间在 14 天内（默认情况下），Amazon Inspector 就会继续监控和重新扫描映像。如果映像在配置的推送日期和上次使用日期内未被推送或未在运行的容器上使用，则 Amazon Inspector 将停止对其进行监控。如果需要，可以选择将设置更改为按上次拉取日期监控映像，而不是按上次使用日期监控映像。当 Amazon Inspector 停止监控映像时，它会将映像扫描状态代码设置为非活动，并将原因代码设置为已过期。然后，Amazon Inspector 会计划关闭所有相关的映像调查发现。

 例如，如果延长拉取日期持续时间，Amazon Inspector 会将更改应用于配置为持续扫描的存储库中所有正在主动扫描的映像。但是，即使您在新的持续时间内推送了非活动映像，它们仍处于非活动状态。

 通过委派管理员账户配置重新扫描持续时间时，Amazon Inspector 会将该设置应用于组织中的所有成员账户。如果委派管理员账户未启用 Amazon ECR 扫描，则无法查看 API 映像的集群。

 对于多架构映像，不支持 last-in-use日期跟踪。使用多架构映像时，我们建议您根据图像拉取或推送事件而不是 last-in-use日期来配置扫描，以确保正确的重新扫描行为。

**注意**  
 2025 年 5 月 16 日之前配置的所有重新扫描持续时间设置将保持不变。您可以继续使用先前配置的任何默认设置。

**映像重新扫描持续时间**  
 映像重新扫描持续时间决定了 Amazon Inspector 监控映像的时间长度。图像重新扫描持续时间包括两种模式：**上次使用日期**（默认）或**上次提取日期**。如果您想**使用 Amazon E ECS/Amazon KS 集群活动中的上次使用日期**，请选择上次使用日期（默认）。如果您想使用 Amazon ECR 映像的上次拉取日期来重新扫描映像，请选择**上次拉取日期**。可选择以下重新扫描持续时间选项：
+  14 天（默认） 
+  30 天 
+  60 天 
+  90 天 
+  180 天 

**映像推送日期持续时间**  
 映像推送日期持续时间决定了 Amazon Inspector 在将映像推送到存储库之后会持续监控映像的时间长度。可选择以下重新扫描持续时间选项：
+  14 天（默认） 
+  30 天 
+  60 天 
+  90 天 
+  180 天 
+  生命周期 

**配置 Amazon ECR 重新扫描持续时间**

1.  使用您的凭证登录，然后在 [https://console.aws.amazon.com/inspector/v2/](https://console.aws.amazon.com/inspector/v2/home) home 中打开 Amazon Inspector 控制台。

1.  选择您要配置 Amazon ECR 重新扫描持续时间 AWS 区域 的位置。

1.  在导航窗格中，依次选择**常规设置**和 **ECR 扫描设置**。

1.  在 **ECR 重新扫描持续时间**下，选择映像重新扫描模式，然后选择相应的持续时间。

1.  在**映像推送日期**下，选择映像推送日期。

1.  选择**保存**。

## 了解 ECR 容器镜像状态
<a name="ecr-image-states"></a>

 Inspector 仅扫描 ECR 容器镜像中的`ACTIVE`图像。不扫描处于`ARCHIVED`状态的 ECR 容器映像。要了解有关扫描行为的更多信息，请参阅[Amazon ECR 扫描的扫描行为](scanning-ecr.md#ecr-scan-behavior)。

 当 ECR 容器镜像在 ECR 中的图像状态转换为，`ACTIVE`Inspector 会使用该`lastActivatedAt`字段来监控重新扫描的持续时间。