Skip to content

Commit 6018b8f

Browse files
authored
Merge pull request #225 from oej/implementations
Document available implementations
2 parents 1f8aefe + 7daab4f commit 6018b8f

2 files changed

Lines changed: 55 additions & 7 deletions

File tree

README.md

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,12 @@ informally using the Slack channel.
2525

2626

2727
Priority issues for v1.0:
28-
- Refinement of distribution types and distributionType fields, see https://github.com/CycloneDX/transparency-exchange-api/issues/198
29-
- CLE Spec needs to be integrated in TEA
28+
3029
- E2e poc of authn/z workflow with TEA consumer spec, including consumer spec adjustment to better support authn/z
3130
- Compliance document workflow, see https://github.com/CycloneDX/transparency-exchange-api/issues/205
3231

32+
Check the list of [implementations](doc/tea-implementations.md) that are available.
33+
3334
## Introduction
3435

3536
The TEA API is created to support automation of the software supply chain. Upstream
@@ -68,7 +69,7 @@ The working group has produced a list of use cases and requirements for the prot
6869

6970
## Artefacts available of the API
7071

71-
The Transparency Exchange API (TEA) supports publication and retrieval of a set of transparency exchange artefacts. The API itself should not be restricting the types of the artefacts. A few examples:
72+
The Transparency Exchange API (TEA) supports publication and retrieval of a set of transparency exchange artefacts. The API itself is not restricting the types of the artefacts published. A few examples:
7273

7374
### *xBOM
7475

@@ -84,24 +85,34 @@ Vulnerability Disclosure Reports (VDR) and Vulnerability Exploitability eXchange
8485

8586
### CLE
8687

87-
Product lifecycle events are communicated through the [ECMA-428 Common Lifecycle Enumeration standard](https://ecma-international.org/publications-and-standards/standards/ecma-428/). This includes product rebranding, repackaging, mergers and acquisitions, and product milestone events such as end-of-life and end-of-support.
88+
Product lifecycle events are communicated through the
89+
[ECMA-428 Common Lifecycle Enumeration standard](https://ecma-international.org/publications-and-standards/standards/ecma-428/).
90+
This includes product rebranding, repackaging, mergers and acquisitions, and product milestone events such as end-of-life and end-of-support.
8891

8992
Inclusion of CLE is optional and it may be introduced on the following levels:
93+
9094
- TEA Product
9195
- TEA Component
9296
- TEA Product Release
9397
- TEA Component Release
9498

95-
If CLE is included, it is the responsibility of the TEA implementation to ensure consistency of CLE events across the TEA Product and its releases and similarly across the TEA Component and its releases.
99+
If CLE is included, it is the responsibility of the TEA implementation to ensure consistency of
100+
CLE events across the TEA Product and its releases and similarly across the TEA Component and its releases.
96101

97102
## Insights
98103

99-
Much of the focus on Software Transparency from the U.S. Government and others center around the concept of “full transparency”. Consumers often need to ingest, process, and analyze SBOMs or VEXs just to be able to answer simple questions such as:
104+
Much of the focus on Software Transparency from the U.S. Government and others center around the
105+
concept of “full transparency”. Consumers often need to ingest, process, and analyze SBOMs or
106+
VEXs just to be able to answer simple questions such as:
100107

101108
- Do any of my licensed products from Vendor A use Apache Struts?
102109
- Are any of my licensed products from Vendor A vulnerable to log4shell and is there any action I need to take?
103110

104-
Insights allows for “limited transparency” that can be asked and answered using an expression language that can be tightly scoped or outcome-driven. Insights also removes the complexities of BOM format conversion away from the consumers. An object model derived from CycloneDX will be an integral part of this API, since the objects within CycloneDX are self-contained (thus API friendly) and the specification supports all the necessary xBOM types along with CDXA.
111+
Insights allows for “limited transparency” that can be asked and answered using an expression language
112+
that can be tightly scoped or outcome-driven. Insights also removes the complexities of BOM format
113+
onversion away from the consumers. An object model derived from CycloneDX will be an integral part of
114+
this API, since the objects within CycloneDX are self-contained (thus API friendly) and the specification
115+
supports all the necessary xBOM types along with CDXA.
105116

106117
Insights will be integrated into the API after the 1.0 release.
107118

doc/tea-implementations.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# TEA Implementations
2+
3+
## Open Source clients
4+
5+
### py-libtea
6+
7+
A python client library and CLI client for TEA.
8+
9+
* https://github.com/sbomify/py-libtea
10+
11+
### Rearm CLI
12+
13+
The REARM cli supports TEA. See doc here: https://github.com/relizaio/rearm-cli/blob/main/docs/tea.md
14+
15+
* https://github.com/relizaio/rearm-cli
16+
17+
## Open Source Servers
18+
19+
### Oolong
20+
21+
This project is a lightweight implementation of Transparency Exchange API which uses NestJS framework.
22+
23+
* https://github.com/relizaio/oolong
24+
25+
### SBOMIFY
26+
27+
sbomify is a Software Bill of Materials (SBOM) and document management platform that can be self-hosted or accessed through app.sbomify.com. The platform provides a centralized location to upload and manage your SBOMs and related documentation, allowing you to share them with stakeholders or make them publicly accessible.
28+
29+
* Implements the Transparency Exchange API
30+
* Standardized SBOM discovery via .well-known/tea endpoints
31+
* Enables automated discovery and retrieval of SBOMs across the supply chain
32+
33+
* https://github.com/sbomify/sbomify
34+
35+
## Other implementations
36+
37+
If you want to have your implementation listed here, please provide a pull request.

0 commit comments

Comments
 (0)