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.
- checksums.yaml +4 -4
- data/README.md +11 -6
- data/lib/google/cloud/container_analysis/v1/container_analysis/client.rb +9 -3
- data/lib/google/cloud/container_analysis/v1/version.rb +1 -1
- data/lib/google/cloud/container_analysis/v1.rb +2 -0
- data/lib/google/devtools/containeranalysis/v1/containeranalysis_pb.rb +3 -3
- data/proto_docs/google/devtools/containeranalysis/v1/containeranalysis.rb +1 -1
- data/proto_docs/google/iam/v1/iam_policy.rb +8 -1
- data/proto_docs/google/iam/v1/options.rb +14 -4
- data/proto_docs/google/iam/v1/policy.rb +208 -38
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- data/proto_docs/grafeas/v1/severity.rb +43 -0
- metadata +22 -31
- data/proto_docs/google/protobuf/timestamp.rb +0 -129
- data/proto_docs/grafeas/v1/common.rb +0 -147
- data/proto_docs/grafeas/v1/cvss.rb +0 -111
- data/proto_docs/grafeas/v1/package.rb +0 -152
- data/proto_docs/grafeas/v1/vulnerability.rb +0 -283
@@ -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
|