Replies: 5 comments 3 replies
-
@dtimm Thanks for putting this together!! Adding @cloudfoundry/wg-foundational-infrastructure-vm-deployment-lifecycle-bosh-approvers @cloudfoundry/wg-foundational-infrastructure-vm-deployment-lifecycle-bosh-reviewers for wider visibility. |
Beta Was this translation helpful? Give feedback.
-
My first thought when reading this was that the supply chain files wouldn't be part of the repo, but would be something you supply via additional arguments when creating a release. It feels like when the files are committed to the repo it gives the impression that any SHA I check out will have accurate information in those files, but we know that's not always going to be true. I suppose if you didn't want to commit to keeping the files up to date between cutting releases, you could always git ignore the Not sure if that will be something people end up doing or not, but if so we might want to build some sort of |
Beta Was this translation helpful? Give feedback.
-
Where would a attestation attesting the bosh create-release process go? Would it go in the releases/ directory and be committed into source? This would make it easy for bosh.io to pick it up when creating release tarballs. Alternatively it could go in a GitHub release. |
Beta Was this translation helpful? Give feedback.
-
In this same vein, it would be valuable to independently track blob provenance files.
|
Beta Was this translation helpful? Give feedback.
-
When going over this I had following questions:
Maybe we need a "meta" discussion about how we imagine that bosh can help with supply chain security because the focus here is in adding the supply chain artefacts to the bosh releases. |
Beta Was this translation helpful? Give feedback.
-
Hello Bosh Community,
I would like to propose a standard way to incorporate supply chain information for components into Bosh releases.
Why
In the wake of supply-chain attacks including the one affecting SolarWinds, companies and governments have accelerated adoption of secure supply chain processes. One of the key requirements that underpins these efforts is collecting and maintaining records of where software components and their dependencies come from. This can include bills of materials, proof of code review, cryptographically signed attestations of build provenance, and many other forms of supply chain data. As a software packaging tool, Bosh has a privileged position in the supply chain, and it can facilitate the use of this data by standardizing its own approach to managing supply chain files.
How
Introduce a
supply_chain
array at the top level of package spec files. It will be a list of file or file globs with formats. The supported formats will bespdx+json
,vnd.cyclonedx+json
,vnd.syft+json
, andvnd.in-toto+json
.format
will use the IANA names where possible, droppingapplication/
.Example
supply_chain
section for thebpm
job ofbpm-release
:The files will be stored in the
src/
directory and included in their package like items from thefiles
list.Add the
supply_chain
list with all globs expanded to the finalrelease.MF
section for each package underpackages
.Example
release.MF
excerpt:This will allow downstream consumers of Bosh releases to easily access these files, and it will also ensure future enhancements to Bosh tooling (aggregating SBoMs, performing attestations directly, etc.) have a stable base to work from.
Beta Was this translation helpful? Give feedback.
All reactions