Closed idunbarh closed 1 month ago
Given that SBOMs allow recording all sorts of data. Form the content perspective, what are the ultimate requirements for the produced SBOMs? For example: A list of components? Build time and/or runtime dependencies? License info? Recording of dependency graphs? Build tools info? Other?
Thanks.
Given that SBOMs allow recording all sorts of data. Form the content perspective, what are the ultimate requirements for the produced SBOMs? For example: A list of components? Build time and/or runtime dependencies? License info? Recording of dependency graphs? Build tools info? Other?
Thanks.
We'll be using a whitepaper from a different CISA tiger team to define "completeness".
The level of completeness that can be achieved will be based on the best open source tooling available which can support multiple SBOM formats. The same is true for validating completeness.
1. Sbom Generation Tool Selection
Date: 2024-08-09
Status
Proposed
Context
For phase 1, the Tiger Team selected keycloak as a java open source project to create a SBOM for. Since different ecosystems have different support by different tools, we did an un-official trade study of different SBOM generation tools to decide what was best to use for this first project.
Decision
The tiger team is proposing we use trivy and analyze source of the keycloak project.
This decision is based on the following factors:
Honorable Mentions
Syft
Syft met most of the requirements but ultimated decided against for three reasons.
cyclonedx-maven-plugin
cyclonedx-maven-plugin definitely produced the best "per component" completeness of the NTIA Minimum Elements, but was decided against for two reasons.
pom.xml
files:note: If you only need CycloneDX sboms for a java project, we'd recommend teams investigate this tool.
Consequences
Some information will be harder to enrich later in the SBOM Generation Pipeline.
Specifically: