本文档介绍了如何查看和过滤 Artifact Analysis 通过自动扫描检测到的依赖项元数据。
当您启用扫描 API 来识别容器映像中的漏洞时,Artifact Analysis 还会收集有关映像中所用依赖项和许可的信息。
您可以使用这些元数据了解容器映像的组件并修复安全问题。
Artifact Analysis 可为存储在 Docker 格式 Artifact Registry 仓库中的容器映像中的操作系统软件包和受支持的语言软件包提供依赖项和许可检测。如需了解详情,请参阅容器扫描概览。
与漏洞信息一样,每次您将映像推送到 Artifact Registry 时,系统都会生成许可和依赖项元数据,然后将其存储在 Artifact Analysis 中。
Artifact Analysis 只会更新过去 30 天内推送或拉取的映像的元数据。30 天后,元数据将不再更新,结果将过时。此外,Artifact Analysis 会归档过时超过 90 天的元数据,这些元数据将无法在 Google Cloud 控制台、gcloud 或通过 API 中获取。如需重新扫描包含过时或归档元数据的映像,请拉取该映像。 刷新元数据最多可能需要 24 小时。
准备工作
-
Sign in to your Google Account.
If you don't already have one, sign up for a new account.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Container Analysis, Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Container Analysis, Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- 在 Artifact Registry 中拥有 Docker 代码库。请参阅有关生成 SBOM 的说明。
所需的角色
如需获得查看 SBOM 数据和过滤结果所需的权限,请让管理员向您授予项目的以下 IAM 角色:
-
Container Analysis Occurrences Viewer (
roles/containeranalysis.occurrences.viewer
) -
Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer
) -
Artifact Registry Reader (
roles/artifactregistry.reader
)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
在 Google Cloud 控制台中查看许可和依赖项
打开 Artifact Registry 的代码库页面。
该页面会显示您的代码库列表。
在代码库列表中,点击相应代码库的名称。
Repository details 页面随之打开,并显示您的映像列表。
在图片列表中,点击图片名称。
该页面会显示您的图片摘要列表。
在映像摘要列表中,点击摘要名称。
该页面会显示一排标签页,其中概览标签页处于打开状态,显示格式、位置、代码库、虚拟大小和标记等详细信息。
在标签页行中,点击 Dependencies(依赖项)标签页。
“依赖项”标签页随即会打开,并显示以下信息:
- SBOM 部分
- “许可”部分
- 可过滤的依赖项列表
SBOM
如果您使用 Artifact Analysis 生成或上传软件物料清单 (SBOM),您的 SBOM 详细信息会显示在此部分中。SBOM 不会像许可和依赖项信息那样自动生成。如需了解如何添加 SBOM,请参阅 SBOM 概览。
许可
许可摘要部分会显示一个名为最常见的许可的条形图。这表示依赖项信息中出现次数最多的许可类型。将指针悬停在图表中的某个柱形上时,控制台会显示该许可类型的实例的确切数量。
依赖项
依赖项列表会显示映像摘要的内容,包括:
- 软件包名称
- 软件包版本
- 软件包类型
- 许可类型
您可以按任一类别过滤依赖项列表。
在 Cloud Build 中查看许可和依赖项
如果您使用的是 Cloud Build,则可以在 Google Cloud 控制台的安全分析侧边栏中查看映像元数据。
安全性数据分析侧边栏概要介绍了存储在 Artifact Registry 中的工件的构建安全信息。如需详细了解侧边栏以及如何使用 Cloud Build 帮助保护软件供应链,请参阅查看 build 安全数据分析。
限制
只有在自动扫描时,系统才会提供有关许可和依赖项的信息。按需扫描不支持此功能。
后续步骤
- 生成软件物料清单 (SBOM),以满足合规性要求。
- 使用常见的查询模式调查漏洞。
- 创建 VEX 语句以证明映像的安全状况。