Sobre as exportações de grafo de dependência e de SBOM
O grafo de dependência é um resumo dos arquivos de manifesto e de bloqueio armazenados em um repositório, além de outras dependências que sejam enviadas para o repositório ao usar a API de envio de dependência. Para cada repositório, ele mostra:
- As dependências, os ecossistemas e os pacotes do qual depende
- Os dependentes, os repositórios e os pacotes que dependem dele
Para cada dependência, você pode ver a versão, informações da licença, o arquivo de manifesto que a incluiu e se ela tem vulnerabilidades conhecidas. Para ecossistemas de pacotes que dão suporte a dependências transitivas, o status da relação será exibido e você poderá clicar em "", e em seguida em "Show paths" para ver o caminho transitivo que trouxe a dependência.
Você também pode pesquisar uma dependência específica usando a barra de pesquisa. As dependências são classificadas automaticamente com os pacotes vulneráveis na parte superior.
Exporte o estado atual do grafo de dependência para seu repositório como uma SBOM (lista de materiais de Software) usando o formato SPDX padrão do setor:
- Por meio da interface do usuário de GitHub
- Usando a API REST
Um SBOM é um inventário formal e legível por computador das dependências e informações associadas de um projeto (como versões, identificadores de pacote, licenças, caminhos transitivos para ecossistemas de pacote com suporte para rotulagem de dependência transitiva e informações de direitos autorais). Os SBOMs ajudam a reduzir os riscos da cadeia de fornecedores:
- Fornecendo transparência sobre as dependências usadas pelo repositório
- Permitindo que vulnerabilidades sejam identificadas na base de código
- Fornecendo insights sobre problemas de conformidade, segurança ou qualidade de licença que podem existir na base de código
- Permitindo que você cumpra melhor os vários padrões de proteção de dados
Para obter mais informações sobre os ecossistemas que dão suporte à rotulagem de dependência transitiva, consulte Ecossistemas de pacotes com suporte para grafos de dependência.
Se a sua empresa fornecer um software ao governo federal dos EUA nos termos da Ordem Executiva 14028, você precisará fornecer uma SBOM para seu produto. Use também as SBOMs como parte do processo de auditoria e para cumprir os requisitos regulatórios e legais.
Observação
Dependentes não estão incluídos nas SBOMs.
Exportar uma lista de materiais de software para o repositório na interface do usuário
-
Em GitHub, acesse a página principal do repositório.
-
Abaixo do nome do repositório, clique em Insights.
-
Na barra lateral esquerda, clique em Grafo de dependência.
-
No canto superior direito da guia Dependências, clique em Exportar SBOM para gerar um arquivo SBOM para download no navegador.
Exportar uma lista de materiais de software para o repositório usando a API REST
Se você quiser usar a API REST para exportar um SBOM para seu repositório, confira Pontos de extremidade da API REST para lista de materiais de software (SBOM).
Gerando uma lista de materiais de software no GitHub Actions
As ações a seguir vão gerar uma SBOM para seu repositório e o anexarão como um artefato de fluxo de trabalho que você pode baixar e usar em outros aplicativos. Para obter mais informações sobre como baixar artefatos de fluxo de trabalho, confira Fazer o download de artefatos do fluxo de trabalho.
Ação | Detalhes |
---|---|
Ação de Envio de Dependência do SPDX | Usa a Ferramenta de SBOM da Microsoft para criar SBOMs compatíveis com SPDX 2.2 com os ecossistemas com suporte |
Anchore SBOM Action | Usa o Syft para criar SBOMs compatíveis com SPDX 2.2 com os ecossistemas com suporte |
Ação de Envio de Dependência de SBOM | Carrega um SBOM CycloneDX para API de envio de dependência |