Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VEX affected cardinalities #908

Merged
merged 1 commit into from
Nov 15, 2024
Merged

VEX affected cardinalities #908

merged 1 commit into from
Nov 15, 2024

Conversation

ilans
Copy link
Collaborator

@ilans ilans commented Nov 12, 2024

  • /Security/actionStatement:
    The description in actionStatement states that:
    "When an element is referenced with a VexAffectedVulnAssessmentRelationship, the relationship MUST include one actionStatement that SHOULD describe actions to remediate or mitigate the vulnerability".

This conforms to VEX_Use_Cases_Aprill2022:
"If a status is AFFECTED, the VEX document must have an action statement that tells the product user what to do".

The cardinality of actionStatement in VexAffectedVulnAssessmentRelationship is 0..1 but should to be 1..1.

  • /Security/actionStatementTime:
    It is optional and records the time when the actionStatement was first communicated (this conforms to the VEX docs).

The cardinality of actionStatementTime in VexAffectedVulnAssessmentRelationship is 0..* but should to be 0..1.

@bact bact added this to the 3.0.1 milestone Nov 13, 2024
@bact bact added the Profile:Security Security Profile and related matters label Nov 13, 2024
@goneall
Copy link
Member

goneall commented Nov 13, 2024

@rnjudge - If you could just give this a quick review, I can merge

@bact bact requested a review from rnjudge November 13, 2024 20:39
@bact
Copy link
Collaborator

bact commented Nov 14, 2024

Note: This is a change that worth to be logged in the change log.

Tag #889 so we won't forget.

@rnjudge
Copy link
Collaborator

rnjudge commented Nov 14, 2024

@goneall @ilans I agree with the min count changing to 1 in accordance with VEX standard. Is there any reason there can't be more than one, though? I suppose the VEX language says "an action statement" implying one but does not use strict language like "should" or "must". All of this to say... +1 to merge but want to make sure we are future proofing the cardinality as well.

@bact
Copy link
Collaborator

bact commented Nov 14, 2024

Agree that from the language "must have an action statement", actionStatement cardinality could be 1..*

If we have two statements, we certainly have a statement (and fulfill the requirement).

Unfortunately, I think with the current design, if we have more than one actionStatement, it may not be possible to specify which actionStatement pairs with which actionStatementTime.

A new hasActionStatement relationship type may be able to capture that, together with the existing Relationship's startTime (Could be 3.1?)

@goneall
Copy link
Member

goneall commented Nov 14, 2024

Based on the above comments - I'm thinking we just go with a cardinality 1..1 and merge this PR.

I'll go ahead and approve and await a second approver.

Copy link
Member

@goneall goneall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree with change per comments in the conversation

Copy link
Collaborator

@bact bact left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved based on VEX and based on current design constraints

@goneall goneall merged commit 1938d45 into spdx:main Nov 15, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Profile:Security Security Profile and related matters
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants