Cómo ver y filtrar SBOM

En este documento, se describe cómo acceder a los registros de la lista de materiales del software (SBOM) y a los metadatos de dependencia relacionados para ayudarte a comprender los componentes de las imágenes de contenedor almacenadas en Artifact Registry.

Antes de comenzar

  1. Sign in to your Google Account.

    If you don't already have one, sign up for a new account.

  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Container Analysis, Artifact Registry APIs.

    Enable the APIs

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Container Analysis, Artifact Registry APIs.

    Enable the APIs

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. Tener los SBOM almacenados en Cloud Storage Consulta las instrucciones para generar SBOM.

Roles obligatorios

Para obtener los permisos que necesitas para ver los datos de la SBOM y filtrar los resultados, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

Cómo ver los SBOM en la consola de Google Cloud

Para ver los SBOM y los metadatos de dependencia relacionados de las imágenes de contenedores almacenadas en Artifact Registry, haz lo siguiente:

  1. Abre la página Repositorios de Artifact Registry.

    Abrir la página repositorios

    En la página, se muestra una lista de tus repositorios.

  2. En la lista de repositorios, haz clic en el nombre de un repositorio.

    Se abrirá la página Detalles del repositorio, en la que se mostrará una lista de tus imágenes.

  3. En la lista de imágenes, haz clic en el nombre de una imagen.

    En la página, se muestra una lista de tus resúmenes de imágenes.

  4. En la lista de resúmenes de imágenes, haz clic en el nombre de un resumen.

    La página muestra una fila de pestañas en la que está abierta la pestaña Descripción general, que muestra detalles como el formato, la ubicación, el repositorio, el tamaño virtual y las etiquetas.

  5. En la fila de pestañas, haz clic en la pestaña Dependencies.

    Se abrirá la pestaña Dependencias y se mostrará la siguiente información:

    • Sección del SBOM
    • Sección de licencias
    • Una lista de dependencias que se puede filtrar

SBOM

En la sección de resumen del SBOM, se muestra la siguiente información:

  • Archivo: Es un nombre de archivo de la SBOM en el que se puede hacer clic, que abre la ubicación en la que se guarda la SBOM en Cloud Storage.
  • Tipo: Es el tipo de estándar de SBOM que se usa, como Software Package Data Exchange (SPDX) o Cyclone.
  • Versión: Es la versión del estándar de la SBOM que se usa.
  • Generated by: Es el origen de los datos del SBOM, ya sea que los genere Artifact Analysis o se suban de forma manual.

Licenses (Licencias)

En la sección de resumen Licencias, se muestra un gráfico de barras llamado Licencias más comunes. Representa los tipos de licencias que aparecen con mayor frecuencia en la información de tus dependencias. Cuando colocas el puntero sobre una barra del gráfico, la consola muestra el recuento exacto de las instancias de ese tipo de licencia.

Dependencias

La lista de dependencias muestra el contenido del resumen de tu imagen, lo que incluye lo siguiente:

  • Nombre del paquete
  • Versión del paquete
  • Tipo de paquete
  • Tipo de licencia

Puedes filtrar la lista de dependencias por cualquiera de estas categorías.

Cómo ver los SBOM en Cloud Build

Si usas Cloud Build, puedes ver los metadatos de las imágenes en el panel lateral Estadísticas de seguridad de la consola de Google Cloud.

El panel lateral Estadísticas de seguridad proporciona una descripción general de alto nivel de la información de seguridad de la compilación para los artefactos almacenados en Artifact Registry. Para obtener más información sobre el panel lateral y cómo puedes usar Cloud Build para proteger tu cadena de suministro de software, consulta Cómo ver estadísticas de seguridad de la compilación.

Cómo ver los SBOM con gcloud CLI

Usa el comando gcloud artifacts sbom list para buscar SBOM almacenados en Cloud Storage. Esta búsqueda se aplica a todos tus SBOM en Cloud Storage, incluidos los que genera Artifact Analysis y los que elijas subir desde otra fuente con un formato compatible.

Puedes usar filtros con el comando gcloud para acotar los resultados y enfocarte en los SBOM más relevantes para una inquietud de seguridad o una solicitud de cumplimiento específicas.

Por ejemplo, el siguiente comando muestra cómo obtener información sobre el SBOM de una imagen de Docker my-image almacenada en Artifact Registry:

gcloud artifacts sbom list \
    --resource="us-east1-docker.pkg.dev/my-project/my-repo/my-image:1.0"

Aquí:

  • --resource especifica el URI del recurso de imagen para el que se enumeran las referencias de archivos de SBOM.

El resultado incluye lo siguiente:

  • La ubicación de Cloud Storage para el SBOM Con la ubicación de Cloud Storage, puedes ver el SBOM en gcloud CLI. Para ello, ejecuta el comando gcloud storage cat.
  • Si el SBOM aún está en el bucket de Cloud Storage o se quitó
  • Un hash del SBOM que puedes usar para verificar que no se haya modificado.

Filtros

Puedes filtrar SBOMs específicos con cualquiera de las siguientes marcas opcionales:

Marcar Objetivo Valor de entrada
--dependency Enumera todas las referencias de archivos de SBOM en las que un recurso tiene instalado el paquete especificado. Consulta los tipos de paquetes compatibles. El nombre de un paquete instalado
--resource Muestra una lista de referencias de archivos SBOM relacionadas con una imagen específica. El URI del recurso
--resource-prefix Enumera las referencias de archivos de SBOM relacionadas con el prefijo de ruta de acceso de recursos. Es una ruta de acceso al recurso que se usará como prefijo para la búsqueda.

Ejemplos de filtros

Filtra los resultados por URI de recurso:

gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/project/repo/my-image@sha256:88b205d7995332e10e836514fbfd59ecaf8976fc15060cd66e85cdcebe7fb356"

Filtrar por prefijo de recursos:

gcloud artifacts sbom list \
--resource-prefix="us-east1-docker.pkg.dev/project/repo"

Limitaciones

¿Qué sigue?