Skip to content

Commit 49faca5

Browse files
committed
More Alpha VEX changes
Added component naming info, the future beta link and updated navigation to include scanning vendor md file.
1 parent 4770ab5 commit 49faca5

3 files changed

Lines changed: 76 additions & 4 deletions

File tree

docs/vex-alpha-details.md

Lines changed: 74 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
This document is intended to cover the changes made in the new release of alpha VEX files compared to the legacy VEX files. These changes are broken out by the three main CSAF VEX document sections: Document, Product Tree and Vulnerabilities.
44

5+
<u>Please Note: </u> The alpha VEX files are still in a state of flux as we address known issues. We aim to keep this documentation in sync with the changes, but there may be times when the documentation and implementation are not aligned. If you have questions on any of these changes, please see [How to Provide Feedback](https://redhatproductsecurity.github.io/security-data-guidelines/vex-alpha-details/#how-to-provide-feedback).
6+
57
## Document Section
68
The new alpha VEX files include a few minor changes to the `document` section, outlined in the sections below.
79

@@ -358,6 +360,65 @@ The new alpha VEX files change how multiple product variants are represented. Fo
358360
### Component Changes
359361
In additon to the product representation changes, there are a few changes to component representation.
360362

363+
#### Component Naming
364+
A minor change was made to the component naming in the new alpha VEX files. The `product_version.name` and `product.name` fields for components will not include any version information, even when fixed in the new alpha VEX files.
365+
366+
```json
367+
# Example of legacy VEX component naming for unfixed component
368+
{
369+
"category": "product_version",
370+
"name": "libxml2.src",
371+
"product": {
372+
"name": "libxml2.src",
373+
"product_id": "libxml2.src",
374+
"product_identification_helper": {
375+
"purl": "pkg:rpm/redhat/libxml2?arch=src"
376+
}
377+
}
378+
}
379+
380+
# Example of legacy VEX component naming for fixed component
381+
{
382+
"category": "product_version",
383+
"name": "libxml2-0:2.9.13-10.el9_6.src",
384+
"product": {
385+
"name": "libxml2-0:2.9.13-10.el9_6.src",
386+
"product_id": "libxml2-0:2.9.13-10.el9_6.src",
387+
"product_identification_helper": {
388+
"purl": "pkg:rpm/redhat/libxml2@2.9.13-10.el9_6?arch=src"
389+
}
390+
}
391+
}
392+
```
393+
394+
```json
395+
# Example of alpha VEX component naming for unfixed component
396+
{
397+
"category": "product_version",
398+
"name": "libxml2",
399+
"product": {
400+
"name": "libxml2",
401+
"product_id": "libxml2",
402+
"product_identification_helper": {
403+
"purl": "pkg:rpm/redhat/libxml2?arch=src"
404+
}
405+
}
406+
}
407+
408+
# Example of alpha VEX component naming for fixed component
409+
{
410+
"category": "product_version",
411+
"name": "libxml2",
412+
"product": {
413+
"name": "libxml2",
414+
"product_id": "libxml2-2.9.13-10.el9_6",
415+
"product_identification_helper": {
416+
"purl": "pkg:rpm/redhat/libxml2@2.9.13-10.el9_6?arch=src"
417+
}
418+
}
419+
}
420+
```
421+
361422
#### Architecture Removal
362423
In legacy VEX files, fixed components were represented multiple times for their different architectures. To reduce the total number of component and relationship entries, we have decided to remove architecture representation for components in both their `name`, `product_id` and `purl`. The only exception to this is for SRPM components, which will include a ".src" in the `name` and `product_id` and "arch=src" in the `purl`.
363424

@@ -412,12 +473,22 @@ In legacy VEX files, fixed components were represented multiple times for their
412473

413474
```json
414475
# Example of alpha VEX component architecture
415-
TO DO: Pending component version fixes
476+
# Note: Subject to change pending resolution of component version jiras
477+
{
478+
"category": "product_version",
479+
"name": "glibc",
480+
"product": {
481+
"name": "glibc",
482+
"product_id": "glibc-2.34-231.el9_7.10",
483+
"product_identification_helper": {
484+
"purl": "pkg:rpm/redhat/glibc@2.34-231.el9_7.10?arch=src"
485+
}
486+
}
487+
},
416488

417489
```
418490
#### Binary RPMs
419-
TO DO
420-
491+
More information available soon
421492

422493
## Vulnerabilities Section
423494
Finally, there were a few changes made the the `vulnerabilties` section of the new alpha VEX files.

docs/vex-alpha.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ As we perform final data cleanup and address some remaining functionality, you m
2929

3030
### Short Term Adoption Timeline
3131

32-
- **Beta VEX (End of March)**: Will address any outstanding known issues and initial vendor feedback. We will recommend that vendors begin the adoption process at this time.
32+
- **Beta VEX (End of March)**: Will address any outstanding known issues and initial vendor feedback. We will recommend that vendors begin the adoption process at this time. At this time, the VEX files will be moved into the final hosted location at https://security.access.redhat.com/data/csaf/v2/vex-feed/. The legacy VEX file location will remain unchanged.
3333
- **GA VEX (Red Hat Summit)**: Upon GA, legacy VEX files will be deprecated. No further enhancements will be made to legacy files, though they will remain published for a transition period based on vendor adoption.
3434

3535
### Future Enhancements

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ nav:
4141
- "CSAF/VEX Overview": "csaf-vex.md"
4242
- "VEX-Alpha Release": "vex-alpha.md"
4343
- "VEX-Alpha Details": "vex-alpha-details.md"
44+
- "Scanning Vendor Guidance": "scanning-vendors.md"
4445
- purl: "purl.md"
4546
- SBOM: "sbom.md"
4647

0 commit comments

Comments
 (0)