Este documento apresenta os conceitos de SBOM e descreve os recursos Artifact Analysis disponíveis para ajudar você a entender as dependências na cadeia de suprimentos de software.
Ao armazenar uma imagem de contêiner no Artifact Registry, é possível criar uma lista de materiais de software (SBOM, na sigla em inglês) que descreve o conteúdo dessa imagem. Conhecer as dependências do software pode ajudar a melhorar sua postura de segurança. Um SBOM também pode ajudar a atestar a composição do software para cumprir regulamentações de segurança, como a Ordem Executiva (EO) 14028.
SBOMs
Um SBOM é um inventário legível por máquina de um aplicativo, que identifica os pacotes usados pelo software. O conteúdo pode incluir softwares de terceiros de fornecedores, artefatos internos e bibliotecas de código aberto.
Com Artifact Analysis, você pode gerar SBOMs ou fazer upload dos seus.
Seja para gerar seu SBOM com Artifact Analysis ou fazer o upload dele, Artifact Analysis oferece processos consistentes de armazenamento e recuperação para ajudar você a coordenar e avaliar todas as informações de dependência em um só lugar.
Formato SBOM
Artifact Analysis produz SBOMs no formato SPDX (Software Package Data Exchange) 2.3.
Se você quiser fazer upload de um SBOM existente de fora do Google Cloud, outros formatos serão aceitos. Consulte Fazer upload de SBOMs.
Armazenamento do SBOM
Artifact Analysis armazena as SBOMs no Cloud Storage no seu projeto do Google Cloud. Os SBOMs permanecem armazenados no Cloud Storage, a menos que você exclua os objetos do SBOM ou exclua o bucket. Para informações sobre preços, consulte Preços do Cloud Storage.
Tipos de pacotes com suporte
O SBOM fornece uma lista de todos os pacotes que podem ser identificados pela verificação do Artifact Analysis. Os pacotes precisam ser contêinerizados e armazenados em um repositório do Docker no Artifact Registry.
Artifact Analysis é compatível com os seguintes tipos de pacotes:
- SO
- Java (Maven)
- Go
- Python
- Node.js (npm)
Ocorrência de referência do SBOM
Além do SBOM específico do contêiner, Artifact Analysis gera uma ocorrência de referência do SBOM do Grafeas, que inclui as seguintes informações:
- O local do Cloud Storage da SBOM
- Um hash da lista de materiais de software
- Uma assinatura sobre o
SbomReferenceIntotoPayload
É possível usar a assinatura para verificar se o SBOM foi gerado pela Artifact Analysis.
A assinatura usa o protocolo de assinatura DSSE (link em inglês), com o
tipo de payload application/vnd.in-toto+json
.O payload é o valor jsonificado
do SbomReferenceIntotoPayload
.
Ocorrência de pacote
Para fornecer mais informações sobre dependências, Artifact Analysis também gera uma ocorrência de pacote do Grafeas para cada pacote instalado. As ocorrências de pacote incluem as seguintes informações:
- Versão do pacote
- Tipo de pacote
- Informações da licença para pacotes instalados
Limitações
- O rastreamento de pacotes instalados só é aceito para imagens de contêiner que são enviadas para o Artifact Registry e avaliadas pela API Container Scanning. Por extensão, a pesquisa da CLI gcloud com base nos pacotes instalados funciona apenas com imagens armazenadas no Artifact Registry, porque os pacotes instalados são rastreados apenas nessas imagens.
- Não é possível usar repositórios do Container Registry (descontinuado). Saiba como fazer a transição do Container Registry.
A seguir
- Gerar e armazenar listas de materiais de software.
- Faça o upload de SBOMs.
- Acessar SBOMs e dependências.