En este documento se describe cómo acceder a los registros de la lista de materiales de software (SBOM) y a los metadatos de dependencia relacionados para que pueda conocer los componentes de las imágenes de contenedor almacenadas en Artifact Registry.
Antes de empezar
-
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.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Container Analysis, Artifact Registry APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Container Analysis, Artifact Registry APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init
- Tener las listas de materiales de software almacenadas en Cloud Storage. Consulta las instrucciones sobre cómo generar listas de materiales (SBOMs).
-
Lector de repeticiones de Container Analysis (
roles/containeranalysis.occurrences.viewer
) -
Consumidor de uso del servicio (
roles/serviceusage.serviceUsageConsumer
) -
Lector de Artifact Registry (
roles/artifactregistry.reader
) -
Para verificar las listas de materiales de software:
Lector de objetos de Storage (
roles/storage.objectViewer
): un segmento de Cloud Storage específico Abre la página Repositorios de Artifact Registry.
En la página se muestra una lista de tus repositorios.
En la lista de repositorios, haz clic en el nombre de un repositorio.
Se abrirá la página Detalles del repositorio, donde se mostrará una lista de tus imágenes.
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.
En la lista de resúmenes de imágenes, haz clic en el nombre de un resumen.
En la página se muestra una fila de pestañas en la que está abierta la pestaña Resumen, que muestra detalles como el formato, la ubicación, el repositorio, el tamaño virtual y las etiquetas.
En la fila de pestañas, haz clic en Dependencias.
Se abre la pestaña Dependencias y se muestra la siguiente información:
- Sección de la lista de materiales de software
- Sección Licencias
- Lista de dependencias que se puede filtrar
- Archivo: nombre de archivo de la lista de materiales de software en el que se puede hacer clic para abrir la ubicación donde se guarda en Cloud Storage.
- Tipo: el tipo de estándar de lista de materiales de software utilizado, como Software Package Data Exchange (SPDX) o Cyclone.
- Versión: la versión del estándar de la lista de materiales de software que se ha usado.
- Generado por: el origen de los datos de la lista de materiales de software, ya sea generados por Análisis de artefactos o subidos manualmente.
- Nombre del paquete
- Versión de paquete
- Tipo de paquete
- Tipo de licencia
--resource
especifica el URI del recurso de imagen para enumerar las referencias de archivos de la lista de materiales (SBOM).- Ubicación de Cloud Storage del SBOM. Con la ubicación de Cloud Storage, puedes ver la lista de materiales en la CLI de gcloud ejecutando el comando gcloud storage cat.
- Indica si la lista de materiales (SBOM) sigue en el segmento de Cloud Storage o se ha quitado.
- Un hash de la lista de materiales que puedes usar para verificar que no se ha modificado.
- La información de la licencia solo se proporciona para los paquetes de SO y los paquetes de idiomas admitidos.
- Generar SBOMs.
- Consulta cómo usar las declaraciones VEX.
Roles obligatorios
Para obtener los permisos que necesitas para ver los datos de la lista de materiales de software y filtrar los resultados, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto:
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Ver las listas de materiales de software en la consola de Google Cloud
Para ver las listas de materiales de software y los metadatos de dependencias relacionados de las imágenes de contenedor almacenadas en Artifact Registry, sigue estos pasos:
SBOM
En la sección de resumen de SBOM se muestra la siguiente información:
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 más frecuencia en la información de tus dependencias. Si mantienes el puntero sobre una barra del gráfico, la consola muestra el recuento exacto de las instancias de ese tipo de licencia.
Dependencias
En la lista de dependencias se muestra el contenido del digest de la imagen, que incluye lo siguiente:
Puede filtrar la lista de dependencias por cualquiera de estas categorías.
Ver las listas de materiales de software en Cloud Build
Si usas Cloud Build, puedes ver los metadatos de las imágenes en el panel lateral Información de seguridad de la Google Cloud consola.
El panel lateral Información de seguridad ofrece una vista general de la información de seguridad de las compilaciones de 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 Ver información valiosa sobre la seguridad de las compilaciones.
Ver las listas de materiales de software con la CLI de gcloud
Usa el comando gcloud artifacts sbom list
para buscar las listas de materiales de software almacenadas en Cloud Storage. Esta búsqueda se aplica a todas tus SBOMs de Cloud Storage, incluidas las generadas por Artifact Analysis y las que decidas subir desde otra fuente con un formato compatible.
Puedes usar filtros con el comando gcloud para acotar los resultados y centrarte en las listas de materiales de software que sean más relevantes para un problema de seguridad o una solicitud de cumplimiento específicos.
Por ejemplo, el siguiente comando muestra cómo obtener información sobre la lista de materiales 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"
Donde:
La salida incluye lo siguiente:
Filtros
Puede filtrar SBOMs específicos mediante cualquiera de las siguientes marcas opcionales:
Bandera | Finalidad | Valor de entrada |
---|---|---|
--dependency |
Lista todas las referencias de archivos de la lista de materiales de software en las que un recurso tiene instalado el paquete especificado. Consulta los tipos de paquetes admitidos. | El nombre de un paquete instalado |
--resource |
Lista las referencias de archivos de la lista de materiales de software relacionadas con una imagen específica. | El URI del recurso |
--resource-prefix |
Lista las referencias de archivos de la lista de materiales de software relacionadas con el prefijo de ruta del recurso. | Una ruta de recursos que se usará como prefijo de la búsqueda |
Ejemplos de filtrado
Filtrar 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 recurso:
gcloud artifacts sbom list \
--resource-prefix="us-east1-docker.pkg.dev/project/repo"