View a markdown version of this page

¿Qué es una URL de paquete? - Amazon Inspector

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

¿Qué es una URL de paquete?

Una URL de paquete o PURL es un formato estandarizado que se utiliza para identificar paquetes, componentes y bibliotecas de software en diferentes sistemas de administración de paquetes. El formato facilita el seguimiento, el análisis y la gestión de las dependencias en los proyectos de software, especialmente al generar una lista de materiales de software (SBOMs).

Estructura de la PURL

La estructura de la PURL es similar a la de una URL y se compone de varios componentes:

  • pkg: el prefijo literal

  • type: el tipo de paquete

  • namespace: la agrupación

  • name: el nombre del paquete

  • version: la versión del paquete

  • qualifiers: pares clave-valor adicionales

  • subpath: la ruta del archivo del paquete

PURL de ejemplo

A continuación, se muestra un ejemplo del aspecto que podría tener una PURL.

pkg:<type>/<namespace>/<name>@<version>?<qualifiers>#<subpath>

La PURL genérica

Una PURL genérica se utiliza para representar paquetes y componentes de software que no se ajustan a los ecosistemas de paquetes establecidos, como npm, pypi o maven. Identifica los componentes de software y captura los metadatos que podrían no estar alineados con sistemas de administración de paquetes específicos. Una PURL genérica es útil para una variedad de proyectos de software, desde binarios compilados hasta plataformas, como Apache y WordPress. Permite aplicarlo en una amplia gama de casos de uso, incluidos binarios compilados, plataformas web y distribuciones de software personalizadas.

Casos de uso clave

  • Es compatible con binarios compilados y es útil para Go y Rust

  • Es compatible con plataformas web, como Apache y WordPress, en las que un paquete puede no estar asociado a los administradores de paquetes tradicionales.

  • Es compatible con el software heredado personalizado, ya que permite a las organizaciones hacer referencia a software o sistemas desarrollados internamente que carecen de paquetes formales.

Formato de ejemplo

A continuación, se muestra un ejemplo del formato de PURL genérico.

pkg:generic/<namespace>/<name>@<version>?<qualifiers>

Ejemplos adicionales del formato de PURL genérico

A continuación, se muestran ejemplos adicionales del formato de PURL genérico.

Binario de Go compilado

A continuación, se representa el inspector-sbomgen binary compilado con Go.

pkg:generic/inspector-sbomgen?go_toolchain=1.22.5
Binario de Rust compilado

A continuación, se representa el binario de myrustapp compilado con Rust.

pkg:generic/myrustapp?rust_toolchain=1.71.0
Proyecto de Apache

Lo siguiente se refiere a un proyecto http en el espacio de nombres de Apache.

pkg:generic/apache/httpd@1.0.0
Software de WordPress

Lo siguiente se refiere a un software de WordPress básico.

pkg:generic/wordpress/core/wordpress@6.0.0
Tema de WordPress

Lo siguiente se refiere a un tema de WordPress personalizado.

pkg:generic/wordpress/theme/mytheme@1.0.0
Complemento de WordPress

Lo siguiente se refiere a un complemento de WordPress personalizado.

pkg:generic/wordpress/plugin/myplugin@1.0.0