google-cloud-container_analysis-v1 0.4.6 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,147 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Copyright 2020 Google LLC
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # https://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
-
19
-
20
- module Grafeas
21
- module V1
22
- # Metadata for any related URL information.
23
- # @!attribute [rw] url
24
- # @return [::String]
25
- # Specific URL associated with the resource.
26
- # @!attribute [rw] label
27
- # @return [::String]
28
- # Label to describe usage of the URL.
29
- class RelatedUrl
30
- include ::Google::Protobuf::MessageExts
31
- extend ::Google::Protobuf::MessageExts::ClassMethods
32
- end
33
-
34
- # Verifiers (e.g. Kritis implementations) MUST verify signatures
35
- # with respect to the trust anchors defined in policy (e.g. a Kritis policy).
36
- # Typically this means that the verifier has been configured with a map from
37
- # `public_key_id` to public key material (and any required parameters, e.g.
38
- # signing algorithm).
39
- #
40
- # In particular, verification implementations MUST NOT treat the signature
41
- # `public_key_id` as anything more than a key lookup hint. The `public_key_id`
42
- # DOES NOT validate or authenticate a public key; it only provides a mechanism
43
- # for quickly selecting a public key ALREADY CONFIGURED on the verifier through
44
- # a trusted channel. Verification implementations MUST reject signatures in any
45
- # of the following circumstances:
46
- # * The `public_key_id` is not recognized by the verifier.
47
- # * The public key that `public_key_id` refers to does not verify the
48
- # signature with respect to the payload.
49
- #
50
- # The `signature` contents SHOULD NOT be "attached" (where the payload is
51
- # included with the serialized `signature` bytes). Verifiers MUST ignore any
52
- # "attached" payload and only verify signatures with respect to explicitly
53
- # provided payload (e.g. a `payload` field on the proto message that holds
54
- # this Signature, or the canonical serialization of the proto message that
55
- # holds this signature).
56
- # @!attribute [rw] signature
57
- # @return [::String]
58
- # The content of the signature, an opaque bytestring.
59
- # The payload that this signature verifies MUST be unambiguously provided
60
- # with the Signature during verification. A wrapper message might provide
61
- # the payload explicitly. Alternatively, a message might have a canonical
62
- # serialization that can always be unambiguously computed to derive the
63
- # payload.
64
- # @!attribute [rw] public_key_id
65
- # @return [::String]
66
- # The identifier for the public key that verifies this signature.
67
- # * The `public_key_id` is required.
68
- # * The `public_key_id` SHOULD be an RFC3986 conformant URI.
69
- # * When possible, the `public_key_id` SHOULD be an immutable reference,
70
- # such as a cryptographic digest.
71
- #
72
- # Examples of valid `public_key_id`s:
73
- #
74
- # OpenPGP V4 public key fingerprint:
75
- # * "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA"
76
- # See https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for more
77
- # details on this scheme.
78
- #
79
- # RFC6920 digest-named SubjectPublicKeyInfo (digest of the DER
80
- # serialization):
81
- # * "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU"
82
- # * "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95a1271589a5"
83
- class Signature
84
- include ::Google::Protobuf::MessageExts
85
- extend ::Google::Protobuf::MessageExts::ClassMethods
86
- end
87
-
88
- # MUST match
89
- # https://github.com/secure-systems-lab/dsse/blob/master/envelope.proto. An
90
- # authenticated message of arbitrary type.
91
- # @!attribute [rw] payload
92
- # @return [::String]
93
- # @!attribute [rw] payload_type
94
- # @return [::String]
95
- # @!attribute [rw] signatures
96
- # @return [::Array<::Grafeas::V1::EnvelopeSignature>]
97
- class Envelope
98
- include ::Google::Protobuf::MessageExts
99
- extend ::Google::Protobuf::MessageExts::ClassMethods
100
- end
101
-
102
- # @!attribute [rw] sig
103
- # @return [::String]
104
- # @!attribute [rw] keyid
105
- # @return [::String]
106
- class EnvelopeSignature
107
- include ::Google::Protobuf::MessageExts
108
- extend ::Google::Protobuf::MessageExts::ClassMethods
109
- end
110
-
111
- # Kind represents the kinds of notes supported.
112
- module NoteKind
113
- # Default value. This value is unused.
114
- NOTE_KIND_UNSPECIFIED = 0
115
-
116
- # The note and occurrence represent a package vulnerability.
117
- VULNERABILITY = 1
118
-
119
- # The note and occurrence assert build provenance.
120
- BUILD = 2
121
-
122
- # This represents an image basis relationship.
123
- IMAGE = 3
124
-
125
- # This represents a package installed via a package manager.
126
- PACKAGE = 4
127
-
128
- # The note and occurrence track deployment events.
129
- DEPLOYMENT = 5
130
-
131
- # The note and occurrence track the initial discovery status of a resource.
132
- DISCOVERY = 6
133
-
134
- # This represents a logical "role" that can attest to artifacts.
135
- ATTESTATION = 7
136
-
137
- # This represents an available package upgrade.
138
- UPGRADE = 8
139
-
140
- # This represents a Compliance Note
141
- COMPLIANCE = 9
142
-
143
- # This represents a DSSE attestation Note
144
- DSSE_ATTESTATION = 10
145
- end
146
- end
147
- end
@@ -1,111 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Copyright 2020 Google LLC
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # https://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
-
19
-
20
- module Grafeas
21
- module V1
22
- # Common Vulnerability Scoring System version 3.
23
- # For details, see https://www.first.org/cvss/specification-document
24
- # @!attribute [rw] base_score
25
- # @return [::Float]
26
- # The base score is a function of the base metric scores.
27
- # @!attribute [rw] exploitability_score
28
- # @return [::Float]
29
- # @!attribute [rw] impact_score
30
- # @return [::Float]
31
- # @!attribute [rw] attack_vector
32
- # @return [::Grafeas::V1::CVSSv3::AttackVector]
33
- # Base Metrics
34
- # Represents the intrinsic characteristics of a vulnerability that are
35
- # constant over time and across user environments.
36
- # @!attribute [rw] attack_complexity
37
- # @return [::Grafeas::V1::CVSSv3::AttackComplexity]
38
- # @!attribute [rw] privileges_required
39
- # @return [::Grafeas::V1::CVSSv3::PrivilegesRequired]
40
- # @!attribute [rw] user_interaction
41
- # @return [::Grafeas::V1::CVSSv3::UserInteraction]
42
- # @!attribute [rw] scope
43
- # @return [::Grafeas::V1::CVSSv3::Scope]
44
- # @!attribute [rw] confidentiality_impact
45
- # @return [::Grafeas::V1::CVSSv3::Impact]
46
- # @!attribute [rw] integrity_impact
47
- # @return [::Grafeas::V1::CVSSv3::Impact]
48
- # @!attribute [rw] availability_impact
49
- # @return [::Grafeas::V1::CVSSv3::Impact]
50
- class CVSSv3
51
- include ::Google::Protobuf::MessageExts
52
- extend ::Google::Protobuf::MessageExts::ClassMethods
53
-
54
- module AttackVector
55
- ATTACK_VECTOR_UNSPECIFIED = 0
56
-
57
- ATTACK_VECTOR_NETWORK = 1
58
-
59
- ATTACK_VECTOR_ADJACENT = 2
60
-
61
- ATTACK_VECTOR_LOCAL = 3
62
-
63
- ATTACK_VECTOR_PHYSICAL = 4
64
- end
65
-
66
- module AttackComplexity
67
- ATTACK_COMPLEXITY_UNSPECIFIED = 0
68
-
69
- ATTACK_COMPLEXITY_LOW = 1
70
-
71
- ATTACK_COMPLEXITY_HIGH = 2
72
- end
73
-
74
- module PrivilegesRequired
75
- PRIVILEGES_REQUIRED_UNSPECIFIED = 0
76
-
77
- PRIVILEGES_REQUIRED_NONE = 1
78
-
79
- PRIVILEGES_REQUIRED_LOW = 2
80
-
81
- PRIVILEGES_REQUIRED_HIGH = 3
82
- end
83
-
84
- module UserInteraction
85
- USER_INTERACTION_UNSPECIFIED = 0
86
-
87
- USER_INTERACTION_NONE = 1
88
-
89
- USER_INTERACTION_REQUIRED = 2
90
- end
91
-
92
- module Scope
93
- SCOPE_UNSPECIFIED = 0
94
-
95
- SCOPE_UNCHANGED = 1
96
-
97
- SCOPE_CHANGED = 2
98
- end
99
-
100
- module Impact
101
- IMPACT_UNSPECIFIED = 0
102
-
103
- IMPACT_HIGH = 1
104
-
105
- IMPACT_LOW = 2
106
-
107
- IMPACT_NONE = 3
108
- end
109
- end
110
- end
111
- end
@@ -1,152 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Copyright 2020 Google LLC
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # https://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
-
19
-
20
- module Grafeas
21
- module V1
22
- # This represents a particular channel of distribution for a given package.
23
- # E.g., Debian's jessie-backports dpkg mirror.
24
- # @!attribute [rw] cpe_uri
25
- # @return [::String]
26
- # Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
27
- # denoting the package manager version distributing a package.
28
- # @!attribute [rw] architecture
29
- # @return [::Grafeas::V1::Architecture]
30
- # The CPU architecture for which packages in this distribution channel were
31
- # built.
32
- # @!attribute [rw] latest_version
33
- # @return [::Grafeas::V1::Version]
34
- # The latest available version of this package in this distribution channel.
35
- # @!attribute [rw] maintainer
36
- # @return [::String]
37
- # A freeform string denoting the maintainer of this package.
38
- # @!attribute [rw] url
39
- # @return [::String]
40
- # The distribution channel-specific homepage for this package.
41
- # @!attribute [rw] description
42
- # @return [::String]
43
- # The distribution channel-specific description of this package.
44
- class Distribution
45
- include ::Google::Protobuf::MessageExts
46
- extend ::Google::Protobuf::MessageExts::ClassMethods
47
- end
48
-
49
- # An occurrence of a particular package installation found within a system's
50
- # filesystem. E.g., glibc was found in `/var/lib/dpkg/status`.
51
- # @!attribute [rw] cpe_uri
52
- # @return [::String]
53
- # Required. The CPE URI in [CPE format](https://cpe.mitre.org/specification/)
54
- # denoting the package manager version distributing a package.
55
- # @!attribute [rw] version
56
- # @return [::Grafeas::V1::Version]
57
- # The version installed at this location.
58
- # @!attribute [rw] path
59
- # @return [::String]
60
- # The path from which we gathered that this package/version is installed.
61
- class Location
62
- include ::Google::Protobuf::MessageExts
63
- extend ::Google::Protobuf::MessageExts::ClassMethods
64
- end
65
-
66
- # This represents a particular package that is distributed over various
67
- # channels. E.g., glibc (aka libc6) is distributed by many, at various
68
- # versions.
69
- # @!attribute [rw] name
70
- # @return [::String]
71
- # Required. Immutable. The name of the package.
72
- # @!attribute [rw] distribution
73
- # @return [::Array<::Grafeas::V1::Distribution>]
74
- # The various channels by which a package is distributed.
75
- class PackageNote
76
- include ::Google::Protobuf::MessageExts
77
- extend ::Google::Protobuf::MessageExts::ClassMethods
78
- end
79
-
80
- # Details on how a particular software package was installed on a system.
81
- # @!attribute [rw] name
82
- # @return [::String]
83
- # Output only. The name of the installed package.
84
- # @!attribute [rw] location
85
- # @return [::Array<::Grafeas::V1::Location>]
86
- # Required. All of the places within the filesystem versions of this package
87
- # have been found.
88
- class PackageOccurrence
89
- include ::Google::Protobuf::MessageExts
90
- extend ::Google::Protobuf::MessageExts::ClassMethods
91
- end
92
-
93
- # Version contains structured information about the version of a package.
94
- # @!attribute [rw] epoch
95
- # @return [::Integer]
96
- # Used to correct mistakes in the version numbering scheme.
97
- # @!attribute [rw] name
98
- # @return [::String]
99
- # Required only when version kind is NORMAL. The main part of the version
100
- # name.
101
- # @!attribute [rw] revision
102
- # @return [::String]
103
- # The iteration of the package build from the above version.
104
- # @!attribute [rw] inclusive
105
- # @return [::Boolean]
106
- # Whether this version is specifying part of an inclusive range. Grafeas
107
- # does not have the capability to specify version ranges; instead we have
108
- # fields that specify start version and end versions. At times this is
109
- # insufficient - we also need to specify whether the version is included in
110
- # the range or is excluded from the range. This boolean is expected to be set
111
- # to true when the version is included in a range.
112
- # @!attribute [rw] kind
113
- # @return [::Grafeas::V1::Version::VersionKind]
114
- # Required. Distinguishes between sentinel MIN/MAX versions and normal
115
- # versions.
116
- # @!attribute [rw] full_name
117
- # @return [::String]
118
- # Human readable version string. This string is of the form
119
- # <epoch>:<name>-<revision> and is only set when kind is NORMAL.
120
- class Version
121
- include ::Google::Protobuf::MessageExts
122
- extend ::Google::Protobuf::MessageExts::ClassMethods
123
-
124
- # Whether this is an ordinary package version or a sentinel MIN/MAX version.
125
- module VersionKind
126
- # Unknown.
127
- VERSION_KIND_UNSPECIFIED = 0
128
-
129
- # A standard package version.
130
- NORMAL = 1
131
-
132
- # A special version representing negative infinity.
133
- MINIMUM = 2
134
-
135
- # A special version representing positive infinity.
136
- MAXIMUM = 3
137
- end
138
- end
139
-
140
- # Instruction set architectures supported by various package managers.
141
- module Architecture
142
- # Unknown architecture.
143
- ARCHITECTURE_UNSPECIFIED = 0
144
-
145
- # X86 architecture.
146
- X86 = 1
147
-
148
- # X64 architecture.
149
- X64 = 2
150
- end
151
- end
152
- end
@@ -1,283 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Copyright 2020 Google LLC
4
- #
5
- # Licensed under the Apache License, Version 2.0 (the "License");
6
- # you may not use this file except in compliance with the License.
7
- # You may obtain a copy of the License at
8
- #
9
- # https://www.apache.org/licenses/LICENSE-2.0
10
- #
11
- # Unless required by applicable law or agreed to in writing, software
12
- # distributed under the License is distributed on an "AS IS" BASIS,
13
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- # See the License for the specific language governing permissions and
15
- # limitations under the License.
16
-
17
- # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
-
19
-
20
- module Grafeas
21
- module V1
22
- # A security vulnerability that can be found in resources.
23
- # @!attribute [rw] cvss_score
24
- # @return [::Float]
25
- # The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10
26
- # where 0 indicates low severity and 10 indicates high severity.
27
- # @!attribute [rw] severity
28
- # @return [::Grafeas::V1::Severity]
29
- # The note provider assigned severity of this vulnerability.
30
- # @!attribute [rw] details
31
- # @return [::Array<::Grafeas::V1::VulnerabilityNote::Detail>]
32
- # Details of all known distros and packages affected by this vulnerability.
33
- # @!attribute [rw] cvss_v3
34
- # @return [::Grafeas::V1::CVSSv3]
35
- # The full description of the CVSSv3 for this vulnerability.
36
- # @!attribute [rw] windows_details
37
- # @return [::Array<::Grafeas::V1::VulnerabilityNote::WindowsDetail>]
38
- # Windows details get their own format because the information format and
39
- # model don't match a normal detail. Specifically Windows updates are done as
40
- # patches, thus Windows vulnerabilities really are a missing package, rather
41
- # than a package being at an incorrect version.
42
- # @!attribute [rw] source_update_time
43
- # @return [::Google::Protobuf::Timestamp]
44
- # The time this information was last changed at the source. This is an
45
- # upstream timestamp from the underlying information source - e.g. Ubuntu
46
- # security tracker.
47
- class VulnerabilityNote
48
- include ::Google::Protobuf::MessageExts
49
- extend ::Google::Protobuf::MessageExts::ClassMethods
50
-
51
- # A detail for a distro and package affected by this vulnerability and its
52
- # associated fix (if one is available).
53
- # @!attribute [rw] severity_name
54
- # @return [::String]
55
- # The distro assigned severity of this vulnerability.
56
- # @!attribute [rw] description
57
- # @return [::String]
58
- # A vendor-specific description of this vulnerability.
59
- # @!attribute [rw] package_type
60
- # @return [::String]
61
- # The type of package; whether native or non native (e.g., ruby gems,
62
- # node.js packages, etc.).
63
- # @!attribute [rw] affected_cpe_uri
64
- # @return [::String]
65
- # Required. The [CPE URI](https://cpe.mitre.org/specification/) this
66
- # vulnerability affects.
67
- # @!attribute [rw] affected_package
68
- # @return [::String]
69
- # Required. The package this vulnerability affects.
70
- # @!attribute [rw] affected_version_start
71
- # @return [::Grafeas::V1::Version]
72
- # The version number at the start of an interval in which this
73
- # vulnerability exists. A vulnerability can affect a package between
74
- # version numbers that are disjoint sets of intervals (example:
75
- # [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
76
- # represented in its own Detail. If a specific affected version is provided
77
- # by a vulnerability database, affected_version_start and
78
- # affected_version_end will be the same in that Detail.
79
- # @!attribute [rw] affected_version_end
80
- # @return [::Grafeas::V1::Version]
81
- # The version number at the end of an interval in which this vulnerability
82
- # exists. A vulnerability can affect a package between version numbers
83
- # that are disjoint sets of intervals (example: [1.0.0-1.1.0],
84
- # [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
85
- # own Detail. If a specific affected version is provided by a vulnerability
86
- # database, affected_version_start and affected_version_end will be the
87
- # same in that Detail.
88
- # @!attribute [rw] fixed_cpe_uri
89
- # @return [::String]
90
- # The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
91
- # to update to that contains a fix for this vulnerability. It is possible
92
- # for this to be different from the affected_cpe_uri.
93
- # @!attribute [rw] fixed_package
94
- # @return [::String]
95
- # The distro recommended package to update to that contains a fix for this
96
- # vulnerability. It is possible for this to be different from the
97
- # affected_package.
98
- # @!attribute [rw] fixed_version
99
- # @return [::Grafeas::V1::Version]
100
- # The distro recommended version to update to that contains a
101
- # fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
102
- # such version is yet available.
103
- # @!attribute [rw] is_obsolete
104
- # @return [::Boolean]
105
- # Whether this detail is obsolete. Occurrences are expected not to point to
106
- # obsolete details.
107
- # @!attribute [rw] source_update_time
108
- # @return [::Google::Protobuf::Timestamp]
109
- # The time this information was last changed at the source. This is an
110
- # upstream timestamp from the underlying information source - e.g. Ubuntu
111
- # security tracker.
112
- # @!attribute [rw] source
113
- # @return [::String]
114
- # The source from which the information in this Detail was obtained.
115
- # @!attribute [rw] vendor
116
- # @return [::String]
117
- # The name of the vendor of the product.
118
- class Detail
119
- include ::Google::Protobuf::MessageExts
120
- extend ::Google::Protobuf::MessageExts::ClassMethods
121
- end
122
-
123
- # @!attribute [rw] cpe_uri
124
- # @return [::String]
125
- # Required. The [CPE URI](https://cpe.mitre.org/specification/) this
126
- # vulnerability affects.
127
- # @!attribute [rw] name
128
- # @return [::String]
129
- # Required. The name of this vulnerability.
130
- # @!attribute [rw] description
131
- # @return [::String]
132
- # The description of this vulnerability.
133
- # @!attribute [rw] fixing_kbs
134
- # @return [::Array<::Grafeas::V1::VulnerabilityNote::WindowsDetail::KnowledgeBase>]
135
- # Required. The names of the KBs which have hotfixes to mitigate this
136
- # vulnerability. Note that there may be multiple hotfixes (and thus
137
- # multiple KBs) that mitigate a given vulnerability. Currently any listed
138
- # KBs presence is considered a fix.
139
- class WindowsDetail
140
- include ::Google::Protobuf::MessageExts
141
- extend ::Google::Protobuf::MessageExts::ClassMethods
142
-
143
- # @!attribute [rw] name
144
- # @return [::String]
145
- # The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
146
- # @!attribute [rw] url
147
- # @return [::String]
148
- # A link to the KB in the [Windows update catalog]
149
- # (https://www.catalog.update.microsoft.com/).
150
- class KnowledgeBase
151
- include ::Google::Protobuf::MessageExts
152
- extend ::Google::Protobuf::MessageExts::ClassMethods
153
- end
154
- end
155
- end
156
-
157
- # An occurrence of a severity vulnerability on a resource.
158
- # @!attribute [rw] type
159
- # @return [::String]
160
- # The type of package; whether native or non native (e.g., ruby gems, node.js
161
- # packages, etc.).
162
- # @!attribute [rw] severity
163
- # @return [::Grafeas::V1::Severity]
164
- # Output only. The note provider assigned severity of this vulnerability.
165
- # @!attribute [rw] cvss_score
166
- # @return [::Float]
167
- # Output only. The CVSS score of this vulnerability. CVSS score is on a
168
- # scale of 0 - 10 where 0 indicates low severity and 10 indicates high
169
- # severity.
170
- # @!attribute [rw] cvssv3
171
- # @return [::Grafeas::V1::VulnerabilityOccurrence::CVSSV3]
172
- # The cvss v3 score for the vulnerability.
173
- # @!attribute [rw] package_issue
174
- # @return [::Array<::Grafeas::V1::VulnerabilityOccurrence::PackageIssue>]
175
- # Required. The set of affected locations and their fixes (if available)
176
- # within the associated resource.
177
- # @!attribute [rw] short_description
178
- # @return [::String]
179
- # Output only. A one sentence description of this vulnerability.
180
- # @!attribute [rw] long_description
181
- # @return [::String]
182
- # Output only. A detailed description of this vulnerability.
183
- # @!attribute [rw] related_urls
184
- # @return [::Array<::Grafeas::V1::RelatedUrl>]
185
- # Output only. URLs related to this vulnerability.
186
- # @!attribute [rw] effective_severity
187
- # @return [::Grafeas::V1::Severity]
188
- # The distro assigned severity for this vulnerability when it is available,
189
- # otherwise this is the note provider assigned severity.
190
- #
191
- # When there are multiple PackageIssues for this vulnerability, they can have
192
- # different effective severities because some might be provided by the distro
193
- # while others are provided by the language ecosystem for a language pack.
194
- # For this reason, it is advised to use the effective severity on the
195
- # PackageIssue level. In the case where multiple PackageIssues have differing
196
- # effective severities, this field should be the highest severity for any of
197
- # the PackageIssues.
198
- # @!attribute [rw] fix_available
199
- # @return [::Boolean]
200
- # Output only. Whether at least one of the affected packages has a fix
201
- # available.
202
- class VulnerabilityOccurrence
203
- include ::Google::Protobuf::MessageExts
204
- extend ::Google::Protobuf::MessageExts::ClassMethods
205
-
206
- # The CVSS v3 score for this vulnerability.
207
- # @!attribute [rw] base_score
208
- # @return [::Float]
209
- # The base score for for this vulnerability according to cvss v3.
210
- # @!attribute [rw] severity
211
- # @return [::Grafeas::V1::Severity]
212
- # The severity rating assigned to this vulnerability by vulnerability
213
- # provider.
214
- class CVSSV3
215
- include ::Google::Protobuf::MessageExts
216
- extend ::Google::Protobuf::MessageExts::ClassMethods
217
- end
218
-
219
- # A detail for a distro and package this vulnerability occurrence was found
220
- # in and its associated fix (if one is available).
221
- # @!attribute [rw] affected_cpe_uri
222
- # @return [::String]
223
- # Required. The [CPE URI](https://cpe.mitre.org/specification/) this
224
- # vulnerability was found in.
225
- # @!attribute [rw] affected_package
226
- # @return [::String]
227
- # Required. The package this vulnerability was found in.
228
- # @!attribute [rw] affected_version
229
- # @return [::Grafeas::V1::Version]
230
- # Required. The version of the package that is installed on the resource
231
- # affected by this vulnerability.
232
- # @!attribute [rw] fixed_cpe_uri
233
- # @return [::String]
234
- # The [CPE URI](https://cpe.mitre.org/specification/) this vulnerability
235
- # was fixed in. It is possible for this to be different from the
236
- # affected_cpe_uri.
237
- # @!attribute [rw] fixed_package
238
- # @return [::String]
239
- # The package this vulnerability was fixed in. It is possible for this to
240
- # be different from the affected_package.
241
- # @!attribute [rw] fixed_version
242
- # @return [::Grafeas::V1::Version]
243
- # Required. The version of the package this vulnerability was fixed in.
244
- # Setting this to VersionKind.MAXIMUM means no fix is yet available.
245
- # @!attribute [rw] fix_available
246
- # @return [::Boolean]
247
- # Output only. Whether a fix is available for this package.
248
- # @!attribute [rw] package_type
249
- # @return [::String]
250
- # The type of package (e.g. OS, MAVEN, GO).
251
- # @!attribute [r] effective_severity
252
- # @return [::Grafeas::V1::Severity]
253
- # The distro or language system assigned severity for this vulnerability
254
- # when that is available and note provider assigned severity when it is not
255
- # available.
256
- class PackageIssue
257
- include ::Google::Protobuf::MessageExts
258
- extend ::Google::Protobuf::MessageExts::ClassMethods
259
- end
260
- end
261
-
262
- # Note provider assigned severity/impact ranking.
263
- module Severity
264
- # Unknown.
265
- SEVERITY_UNSPECIFIED = 0
266
-
267
- # Minimal severity.
268
- MINIMAL = 1
269
-
270
- # Low severity.
271
- LOW = 2
272
-
273
- # Medium severity.
274
- MEDIUM = 3
275
-
276
- # High severity.
277
- HIGH = 4
278
-
279
- # Critical severity.
280
- CRITICAL = 5
281
- end
282
- end
283
- end