Class: Google::Apis::ContaineranalysisV1::VulnerabilityOccurrence
- Inherits:
-
Object
- Object
- Google::Apis::ContaineranalysisV1::VulnerabilityOccurrence
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/containeranalysis_v1/classes.rb,
lib/google/apis/containeranalysis_v1/representations.rb,
lib/google/apis/containeranalysis_v1/representations.rb
Overview
An occurrence of a severity vulnerability on a resource.
Instance Attribute Summary collapse
-
#cvss_score ⇒ Float
Output only.
-
#cvss_v2 ⇒ Google::Apis::ContaineranalysisV1::Cvss
Common Vulnerability Scoring System.
-
#cvss_v4 ⇒ Google::Apis::ContaineranalysisV1::Cvss
Common Vulnerability Scoring System.
-
#cvss_version ⇒ String
Output only.
-
#cvssv3 ⇒ Google::Apis::ContaineranalysisV1::Cvss
Common Vulnerability Scoring System.
-
#effective_severity ⇒ String
The distro assigned severity for this vulnerability when it is available, otherwise this is the note provider assigned severity.
-
#extra_details ⇒ String
Occurrence-specific extra details about the vulnerability.
-
#fix_available ⇒ Boolean
(also: #fix_available?)
Output only.
-
#long_description ⇒ String
Output only.
-
#package_issue ⇒ Array<Google::Apis::ContaineranalysisV1::PackageIssue>
Required.
-
#related_urls ⇒ Array<Google::Apis::ContaineranalysisV1::RelatedUrl>
Output only.
-
#risk ⇒ Google::Apis::ContaineranalysisV1::Risk
Risk information about the vulnerability, such as CISA, EPSS, etc.
-
#severity ⇒ String
Output only.
-
#short_description ⇒ String
Output only.
-
#type ⇒ String
The type of package; whether native or non native (e.g., ruby gems, node.js packages, etc.).
-
#vex_assessment ⇒ Google::Apis::ContaineranalysisV1::VexAssessment
VexAssessment provides all publisher provided Vex information that is related to this vulnerability.
Instance Method Summary collapse
-
#initialize(**args) ⇒ VulnerabilityOccurrence
constructor
A new instance of VulnerabilityOccurrence.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ VulnerabilityOccurrence
Returns a new instance of VulnerabilityOccurrence.
8176 8177 8178 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8176 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cvss_score ⇒ Float
Output only. The CVSS score of this vulnerability. CVSS score is on a scale of
0 - 10 where 0 indicates low severity and 10 indicates high severity.
Corresponds to the JSON property cvssScore
8079 8080 8081 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8079 def cvss_score @cvss_score end |
#cvss_v2 ⇒ Google::Apis::ContaineranalysisV1::Cvss
Common Vulnerability Scoring System. For details, see https://www.first.org/
cvss/specification-document This is a message we will try to use for storing
various versions of CVSS rather than making a separate proto for storing a
specific version.
Corresponds to the JSON property cvssV2
8087 8088 8089 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8087 def cvss_v2 @cvss_v2 end |
#cvss_v4 ⇒ Google::Apis::ContaineranalysisV1::Cvss
Common Vulnerability Scoring System. For details, see https://www.first.org/
cvss/specification-document This is a message we will try to use for storing
various versions of CVSS rather than making a separate proto for storing a
specific version.
Corresponds to the JSON property cvssV4
8095 8096 8097 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8095 def cvss_v4 @cvss_v4 end |
#cvss_version ⇒ String
Output only. CVSS version used to populate cvss_score and severity.
Corresponds to the JSON property cvssVersion
8100 8101 8102 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8100 def cvss_version @cvss_version end |
#cvssv3 ⇒ Google::Apis::ContaineranalysisV1::Cvss
Common Vulnerability Scoring System. For details, see https://www.first.org/
cvss/specification-document This is a message we will try to use for storing
various versions of CVSS rather than making a separate proto for storing a
specific version.
Corresponds to the JSON property cvssv3
8108 8109 8110 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8108 def cvssv3 @cvssv3 end |
#effective_severity ⇒ String
The distro assigned severity for this vulnerability when it is available,
otherwise this is the note provider assigned severity. When there are multiple
PackageIssues for this vulnerability, they can have different effective
severities because some might be provided by the distro while others are
provided by the language ecosystem for a language pack. For this reason, it is
advised to use the effective severity on the PackageIssue level. In the case
where multiple PackageIssues have differing effective severities, this field
should be the highest severity for any of the PackageIssues.
Corresponds to the JSON property effectiveSeverity
8120 8121 8122 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8120 def effective_severity @effective_severity end |
#extra_details ⇒ String
Occurrence-specific extra details about the vulnerability.
Corresponds to the JSON property extraDetails
8125 8126 8127 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8125 def extra_details @extra_details end |
#fix_available ⇒ Boolean Also known as: fix_available?
Output only. Whether at least one of the affected packages has a fix available.
Corresponds to the JSON property fixAvailable
8130 8131 8132 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8130 def fix_available @fix_available end |
#long_description ⇒ String
Output only. A detailed description of this vulnerability.
Corresponds to the JSON property longDescription
8136 8137 8138 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8136 def long_description @long_description end |
#package_issue ⇒ Array<Google::Apis::ContaineranalysisV1::PackageIssue>
Required. The set of affected locations and their fixes (if available) within
the associated resource.
Corresponds to the JSON property packageIssue
8142 8143 8144 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8142 def package_issue @package_issue end |
#related_urls ⇒ Array<Google::Apis::ContaineranalysisV1::RelatedUrl>
Output only. URLs related to this vulnerability.
Corresponds to the JSON property relatedUrls
8147 8148 8149 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8147 def @related_urls end |
#risk ⇒ Google::Apis::ContaineranalysisV1::Risk
Risk information about the vulnerability, such as CISA, EPSS, etc.
Corresponds to the JSON property risk
8152 8153 8154 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8152 def risk @risk end |
#severity ⇒ String
Output only. The note provider assigned severity of this vulnerability.
Corresponds to the JSON property severity
8157 8158 8159 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8157 def severity @severity end |
#short_description ⇒ String
Output only. A one sentence description of this vulnerability.
Corresponds to the JSON property shortDescription
8162 8163 8164 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8162 def short_description @short_description end |
#type ⇒ String
The type of package; whether native or non native (e.g., ruby gems, node.js
packages, etc.).
Corresponds to the JSON property type
8168 8169 8170 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8168 def type @type end |
#vex_assessment ⇒ Google::Apis::ContaineranalysisV1::VexAssessment
VexAssessment provides all publisher provided Vex information that is related
to this vulnerability.
Corresponds to the JSON property vexAssessment
8174 8175 8176 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8174 def vex_assessment @vex_assessment end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
8181 8182 8183 8184 8185 8186 8187 8188 8189 8190 8191 8192 8193 8194 8195 8196 8197 8198 |
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 8181 def update!(**args) @cvss_score = args[:cvss_score] if args.key?(:cvss_score) @cvss_v2 = args[:cvss_v2] if args.key?(:cvss_v2) @cvss_v4 = args[:cvss_v4] if args.key?(:cvss_v4) @cvss_version = args[:cvss_version] if args.key?(:cvss_version) @cvssv3 = args[:cvssv3] if args.key?(:cvssv3) @effective_severity = args[:effective_severity] if args.key?(:effective_severity) @extra_details = args[:extra_details] if args.key?(:extra_details) @fix_available = args[:fix_available] if args.key?(:fix_available) @long_description = args[:long_description] if args.key?(:long_description) @package_issue = args[:package_issue] if args.key?(:package_issue) @related_urls = args[:related_urls] if args.key?(:related_urls) @risk = args[:risk] if args.key?(:risk) @severity = args[:severity] if args.key?(:severity) @short_description = args[:short_description] if args.key?(:short_description) @type = args[:type] if args.key?(:type) @vex_assessment = args[:vex_assessment] if args.key?(:vex_assessment) end |