本文档介绍了如何启用和停用自动扫描。
Artifact Analysis 通过 Container Scanning API 为 Artifact Registry 中的容器映像提供自动漏洞扫描。 平台管理员和应用开发者可以使用扫描结果来识别和降低软件供应链的风险。
默认情况下,当您启用 Container Scanning API 时,Artifact Analysis 会扫描项目中的所有受支持的软件包类型。如需降低费用并减少扫描发现结果中的干扰,您可以针对各个代码库停用扫描。如需了解详情,请参阅 控制单个代码库的扫描设置。
如需了解价格 信息,请参阅价格页面。
限制
Artifact Registry 虚拟代码库不支持扫描。
启用 Container Scanning API
您可以为现有项目启用 Container Scanning API,也可以先新建一个项目,然后再启用此 API。启用 Container Scanning API 还会启用 Container Analysis API,以便进行元数据存储和检索。
如需在 Artifact Registry 中为项目启用漏洞扫描,请完成以下步骤:
在 Google Cloud 控制台中,打开启用对 API 的访问权限 页面:
控制单个代码库的扫描设置
本部分介绍了如何控制单个代码库的扫描设置。此功能仅在 Artifact Registry 中受支持。
默认情况下,启用 Container Scanning API 会针对您推送到 Artifact Registry 中的标准和远程 Docker 代码库的所有映像启用扫描。以下代码库格式也支持自动扫描;不过,扫描功能默认处于停用状态,必须手动启用:
- Maven
- Npm
- Python
通过 Artifact Analysis 进行扫描可以提供有关软件供应链潜在威胁的全面信息。您还可以根据需要针对各个代码库停用扫描。
您可以针对代码库停用扫描,以:
- 在项目中管理扫描费用。您无需针对整个项目关闭扫描,也无需创建新项目来隔离代码库。
- 减少收到的漏洞发现结果数量。您可以专注于修复特定代码库中的漏洞。
如需更改现有 Artifact Registry 代码库的扫描设置,请执行以下操作:
控制台
在 Google Cloud 控制台中打开代码库页面。
在代码库列表中,选择代码库,然后点击修改代码库 。
启用 或停用 漏洞扫描。
点击保存 。
gcloud
如需针对代码库停用扫描,请执行以下操作:
gcloud artifacts repositories update REPOSITORY \
--project=PROJECT-ID \
--location=LOCATION \
--disable-vulnerability-scanning
如需允许针对代码库进行扫描,请执行以下操作:
gcloud artifacts repositories update REPOSITORY \
--project=PROJECT-ID \
--location=LOCATION \
--allow-vulnerability-scanning
其中:
如需为新的 Artifact Registry 代码库配置扫描设置,请参阅 创建标准代码库 或 创建远程代码库。
停用 Container Scanning API
本部分介绍了如何在 Artifact Registry 中为项目停用漏洞扫描。
停用 Container Scanning API 后,系统会停止扫描项目中的所有代码库。各个代码库的扫描设置会保留。如果您之前针对某些代码库停用了扫描,然后在稍后为项目重新启用了 API,则这些代码库仍会被排除在扫描之外。
如需更新各个代码库的扫描设置,请参阅 更新代码库。
控制台
打开 Artifact Registry 的设置 页面:
在漏洞扫描 部分中,点击停用 。
gcloud
运行以下命令:
gcloud services disable containerscanning.googleapis.com
延长监控时间范围
Artifact Analysis 会持续监控 Artifact Registry 中已扫描映像的漏洞元数据。 默认的持续监控时间范围为 30 天。在此时间段之后,您的映像将过期,并且漏洞扫描结果将不再更新。
如需延长监控时间范围,您必须在 30 天内拉取或推送映像。建议您创建计划任务,以重新推送不需要频繁更新的容器,例如 Istio 和代理映像。