Sobre o projeto
Este projeto está incubado no TAC do Automating Compliance Tooling da Linux Foundation, originalmente desenvolvido para gerar SBOMs para o projeto Kubernetes. Suas capacidades principais abrangem três áreas. Primeiro, geração de SBOM: o subcomando bom generate suporta a criação de SBOMs no formato SPDX a partir de múltiplas fontes, incluindo diretórios locais, arquivos individuais, imagens de contêiner obtidas remotamente, arquivos tar do Docker locais e arquivos de arquivo tar/tar.gz. Por padrão, ele gera documentos SPDX 2.3 JSON ou tag-value, com suporte experimental para saída SPDX 3.0.1 JSON-LD fornecida pelo protobom. Ao escanear diretórios locais, ele segue as regras do .gitignore por padrão, suporta padrões de ignorar personalizados através da flag --ignore e pode desabilitar a aplicação das regras do gitignore com a flag --no-gitignore. A ferramenta possui um classificador de licenças integrado que reconhece mais de 400 licenças no catálogo SPDX. Ele pode resolver automaticamente dependências de módulos Go, identificar pacotes de sistema em imagens de contêiner baseadas em Alpine, Debian e RPM, e extrair informações de build incorporadas em binários Go para mapear seus módulos dependentes. Também suporta a exportação de SBOMs como declarações de proveniência in-toto através da flag --provenance, que podem ser integradas diretamente em pipelines de CI/CD para processamento subsequente. Segundo, operações em documentos SBOM: o subcomando bom document fornece três funções. O subcomando outline renderiza a estrutura de conteúdo do SBOM como uma árvore, suportando rotulagem de package URL via --purl, limitação de profundidade de exibição via --depth e localização do ramo de origem de um pacote específico via --find. O subcomando query pesquisa elementos no SBOM por filtros como profundidade, nome ou package URL. O subcomando dot exporta o grafo de relacionamentos do SBOM no formato Graphviz DOT, suportando renderização a partir de um elemento raiz especificado via --root, limitação de profundidade de travessia de relacionamentos via --depth e exclusão de elementos de arquivo via --no-files. Terceiro, validação de integridade: o subcomando bom validate verifica a integridade de arquivos individuais ou diretórios inteiros em relação aos checksums registrados no SBOM. Além disso, a ferramenta pode ser usada como uma biblioteca Go através do pacote sigs.k8s.io/bom/pkg/bom, que suporta a geração, leitura e escrita de SBOMs com base no modelo de objetos neutro em relação ao formato do protobom, e pode serializar a saída para outros formatos SPDX ou CycloneDX. O modelo de objetos mais antigo sigs.k8s.io/bom/pkg/spdx está obsoleto, com um guia de migração oficial fornecido. A ferramenta pode ser instalada executando go install sigs.k8s.io/bom/cmd/bom@latest para obter a versão mais recente.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.