google-cloud-container_analysis-v1 0.4.3 → 0.4.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -1
  3. data/AUTHENTICATION.md +7 -25
  4. data/README.md +1 -1
  5. data/lib/google/cloud/container_analysis/v1/container_analysis/client.rb +81 -13
  6. data/lib/google/cloud/container_analysis/v1/version.rb +1 -1
  7. data/lib/google/devtools/containeranalysis/v1/containeranalysis_pb.rb +5 -3
  8. data/lib/google/devtools/containeranalysis/v1/containeranalysis_services_pb.rb +1 -1
  9. data/proto_docs/google/api/resource.rb +10 -71
  10. data/proto_docs/google/devtools/containeranalysis/v1/containeranalysis.rb +1 -1
  11. data/proto_docs/google/protobuf/any.rb +141 -0
  12. data/proto_docs/google/protobuf/empty.rb +36 -0
  13. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  14. data/proto_docs/google/rpc/status.rb +46 -0
  15. data/proto_docs/grafeas/v1/attestation.rb +98 -0
  16. data/proto_docs/grafeas/v1/build.rb +64 -0
  17. data/proto_docs/grafeas/v1/common.rb +31 -2
  18. data/proto_docs/grafeas/v1/compliance.rb +98 -0
  19. data/proto_docs/grafeas/v1/cvss.rb +105 -0
  20. data/proto_docs/grafeas/v1/deployment.rb +74 -0
  21. data/proto_docs/grafeas/v1/discovery.rb +95 -0
  22. data/proto_docs/grafeas/v1/dsse_attestation.rb +59 -0
  23. data/proto_docs/grafeas/v1/grafeas.rb +419 -0
  24. data/proto_docs/grafeas/v1/image.rb +95 -0
  25. data/proto_docs/grafeas/v1/intoto_provenance.rb +134 -0
  26. data/proto_docs/grafeas/v1/intoto_statement.rb +65 -0
  27. data/proto_docs/grafeas/v1/package.rb +8 -0
  28. data/proto_docs/grafeas/v1/provenance.rb +318 -0
  29. data/proto_docs/grafeas/v1/severity.rb +43 -0
  30. data/proto_docs/grafeas/v1/slsa_provenance.rb +152 -0
  31. data/proto_docs/grafeas/v1/upgrade.rb +148 -0
  32. data/proto_docs/grafeas/v1/vulnerability.rb +25 -21
  33. metadata +31 -7
@@ -107,5 +107,110 @@ module Grafeas
107
107
  IMPACT_NONE = 3
108
108
  end
109
109
  end
110
+
111
+ # Common Vulnerability Scoring System.
112
+ # For details, see https://www.first.org/cvss/specification-document
113
+ # This is a message we will try to use for storing multiple versions of
114
+ # CVSS. The intention is that as new versions of CVSS scores get added, we
115
+ # will be able to modify this message rather than adding new protos for each
116
+ # new version of the score.
117
+ # @!attribute [rw] base_score
118
+ # @return [::Float]
119
+ # The base score is a function of the base metric scores.
120
+ # @!attribute [rw] exploitability_score
121
+ # @return [::Float]
122
+ # @!attribute [rw] impact_score
123
+ # @return [::Float]
124
+ # @!attribute [rw] attack_vector
125
+ # @return [::Grafeas::V1::CVSS::AttackVector]
126
+ # Base Metrics
127
+ # Represents the intrinsic characteristics of a vulnerability that are
128
+ # constant over time and across user environments.
129
+ # @!attribute [rw] attack_complexity
130
+ # @return [::Grafeas::V1::CVSS::AttackComplexity]
131
+ # @!attribute [rw] authentication
132
+ # @return [::Grafeas::V1::CVSS::Authentication]
133
+ # @!attribute [rw] privileges_required
134
+ # @return [::Grafeas::V1::CVSS::PrivilegesRequired]
135
+ # @!attribute [rw] user_interaction
136
+ # @return [::Grafeas::V1::CVSS::UserInteraction]
137
+ # @!attribute [rw] scope
138
+ # @return [::Grafeas::V1::CVSS::Scope]
139
+ # @!attribute [rw] confidentiality_impact
140
+ # @return [::Grafeas::V1::CVSS::Impact]
141
+ # @!attribute [rw] integrity_impact
142
+ # @return [::Grafeas::V1::CVSS::Impact]
143
+ # @!attribute [rw] availability_impact
144
+ # @return [::Grafeas::V1::CVSS::Impact]
145
+ class CVSS
146
+ include ::Google::Protobuf::MessageExts
147
+ extend ::Google::Protobuf::MessageExts::ClassMethods
148
+
149
+ module AttackVector
150
+ ATTACK_VECTOR_UNSPECIFIED = 0
151
+
152
+ ATTACK_VECTOR_NETWORK = 1
153
+
154
+ ATTACK_VECTOR_ADJACENT = 2
155
+
156
+ ATTACK_VECTOR_LOCAL = 3
157
+
158
+ ATTACK_VECTOR_PHYSICAL = 4
159
+ end
160
+
161
+ module AttackComplexity
162
+ ATTACK_COMPLEXITY_UNSPECIFIED = 0
163
+
164
+ ATTACK_COMPLEXITY_LOW = 1
165
+
166
+ ATTACK_COMPLEXITY_HIGH = 2
167
+ end
168
+
169
+ module Authentication
170
+ AUTHENTICATION_UNSPECIFIED = 0
171
+
172
+ AUTHENTICATION_MULTIPLE = 1
173
+
174
+ AUTHENTICATION_SINGLE = 2
175
+
176
+ AUTHENTICATION_NONE = 3
177
+ end
178
+
179
+ module PrivilegesRequired
180
+ PRIVILEGES_REQUIRED_UNSPECIFIED = 0
181
+
182
+ PRIVILEGES_REQUIRED_NONE = 1
183
+
184
+ PRIVILEGES_REQUIRED_LOW = 2
185
+
186
+ PRIVILEGES_REQUIRED_HIGH = 3
187
+ end
188
+
189
+ module UserInteraction
190
+ USER_INTERACTION_UNSPECIFIED = 0
191
+
192
+ USER_INTERACTION_NONE = 1
193
+
194
+ USER_INTERACTION_REQUIRED = 2
195
+ end
196
+
197
+ module Scope
198
+ SCOPE_UNSPECIFIED = 0
199
+
200
+ SCOPE_UNCHANGED = 1
201
+
202
+ SCOPE_CHANGED = 2
203
+ end
204
+
205
+ module Impact
206
+ IMPACT_UNSPECIFIED = 0
207
+
208
+ IMPACT_HIGH = 1
209
+
210
+ IMPACT_LOW = 2
211
+
212
+ IMPACT_NONE = 3
213
+ end
214
+ end
110
215
  end
111
216
  end
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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
+ # An artifact that can be deployed in some runtime.
23
+ # @!attribute [rw] resource_uri
24
+ # @return [::Array<::String>]
25
+ # Required. Resource URI for the artifact being deployed.
26
+ class DeploymentNote
27
+ include ::Google::Protobuf::MessageExts
28
+ extend ::Google::Protobuf::MessageExts::ClassMethods
29
+ end
30
+
31
+ # The period during which some deployable was active in a runtime.
32
+ # @!attribute [rw] user_email
33
+ # @return [::String]
34
+ # Identity of the user that triggered this deployment.
35
+ # @!attribute [rw] deploy_time
36
+ # @return [::Google::Protobuf::Timestamp]
37
+ # Required. Beginning of the lifetime of this deployment.
38
+ # @!attribute [rw] undeploy_time
39
+ # @return [::Google::Protobuf::Timestamp]
40
+ # End of the lifetime of this deployment.
41
+ # @!attribute [rw] config
42
+ # @return [::String]
43
+ # Configuration used to create this deployment.
44
+ # @!attribute [rw] address
45
+ # @return [::String]
46
+ # Address of the runtime element hosting this deployment.
47
+ # @!attribute [rw] resource_uri
48
+ # @return [::Array<::String>]
49
+ # Output only. Resource URI for the artifact being deployed taken from
50
+ # the deployable field with the same name.
51
+ # @!attribute [rw] platform
52
+ # @return [::Grafeas::V1::DeploymentOccurrence::Platform]
53
+ # Platform hosting this deployment.
54
+ class DeploymentOccurrence
55
+ include ::Google::Protobuf::MessageExts
56
+ extend ::Google::Protobuf::MessageExts::ClassMethods
57
+
58
+ # Types of platforms.
59
+ module Platform
60
+ # Unknown.
61
+ PLATFORM_UNSPECIFIED = 0
62
+
63
+ # Google Container Engine.
64
+ GKE = 1
65
+
66
+ # Google App Engine: Flexible Environment.
67
+ FLEX = 2
68
+
69
+ # Custom user-defined platform.
70
+ CUSTOM = 3
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,95 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 note that indicates a type of analysis a provider would perform. This note
23
+ # exists in a provider's project. A `Discovery` occurrence is created in a
24
+ # consumer's project at the start of analysis.
25
+ # @!attribute [rw] analysis_kind
26
+ # @return [::Grafeas::V1::NoteKind]
27
+ # Required. Immutable. The kind of analysis that is handled by this
28
+ # discovery.
29
+ class DiscoveryNote
30
+ include ::Google::Protobuf::MessageExts
31
+ extend ::Google::Protobuf::MessageExts::ClassMethods
32
+ end
33
+
34
+ # Provides information about the analysis status of a discovered resource.
35
+ # @!attribute [rw] continuous_analysis
36
+ # @return [::Grafeas::V1::DiscoveryOccurrence::ContinuousAnalysis]
37
+ # Whether the resource is continuously analyzed.
38
+ # @!attribute [rw] analysis_status
39
+ # @return [::Grafeas::V1::DiscoveryOccurrence::AnalysisStatus]
40
+ # The status of discovery for the resource.
41
+ # @!attribute [rw] analysis_status_error
42
+ # @return [::Google::Rpc::Status]
43
+ # When an error is encountered this will contain a LocalizedMessage under
44
+ # details to show to the user. The LocalizedMessage is output only and
45
+ # populated by the API.
46
+ # @!attribute [rw] cpe
47
+ # @return [::String]
48
+ # The CPE of the resource being scanned.
49
+ # @!attribute [rw] last_scan_time
50
+ # @return [::Google::Protobuf::Timestamp]
51
+ # The last time this resource was scanned.
52
+ # @!attribute [r] archive_time
53
+ # @return [::Google::Protobuf::Timestamp]
54
+ # The time occurrences related to this discovery occurrence were archived.
55
+ class DiscoveryOccurrence
56
+ include ::Google::Protobuf::MessageExts
57
+ extend ::Google::Protobuf::MessageExts::ClassMethods
58
+
59
+ # Whether the resource is continuously analyzed.
60
+ module ContinuousAnalysis
61
+ # Unknown.
62
+ CONTINUOUS_ANALYSIS_UNSPECIFIED = 0
63
+
64
+ # The resource is continuously analyzed.
65
+ ACTIVE = 1
66
+
67
+ # The resource is ignored for continuous analysis.
68
+ INACTIVE = 2
69
+ end
70
+
71
+ # Analysis status for a resource. Currently for initial analysis only (not
72
+ # updated in continuous analysis).
73
+ module AnalysisStatus
74
+ # Unknown.
75
+ ANALYSIS_STATUS_UNSPECIFIED = 0
76
+
77
+ # Resource is known but no action has been taken yet.
78
+ PENDING = 1
79
+
80
+ # Resource is being analyzed.
81
+ SCANNING = 2
82
+
83
+ # Analysis has finished successfully.
84
+ FINISHED_SUCCESS = 3
85
+
86
+ # Analysis has finished unsuccessfully, the analysis itself is in a bad
87
+ # state.
88
+ FINISHED_FAILED = 4
89
+
90
+ # The resource is known not to be supported
91
+ FINISHED_UNSUPPORTED = 5
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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
+ # @!attribute [rw] hint
23
+ # @return [::Grafeas::V1::DSSEAttestationNote::DSSEHint]
24
+ # DSSEHint hints at the purpose of the attestation authority.
25
+ class DSSEAttestationNote
26
+ include ::Google::Protobuf::MessageExts
27
+ extend ::Google::Protobuf::MessageExts::ClassMethods
28
+
29
+ # This submessage provides human-readable hints about the purpose of the
30
+ # authority. Because the name of a note acts as its resource reference, it is
31
+ # important to disambiguate the canonical name of the Note (which might be a
32
+ # UUID for security purposes) from "readable" names more suitable for debug
33
+ # output. Note that these hints should not be used to look up authorities in
34
+ # security sensitive contexts, such as when looking up attestations to
35
+ # verify.
36
+ # @!attribute [rw] human_readable_name
37
+ # @return [::String]
38
+ # Required. The human readable name of this attestation authority, for
39
+ # example "cloudbuild-prod".
40
+ class DSSEHint
41
+ include ::Google::Protobuf::MessageExts
42
+ extend ::Google::Protobuf::MessageExts::ClassMethods
43
+ end
44
+ end
45
+
46
+ # Deprecated. Prefer to use a regular Occurrence, and populate the
47
+ # Envelope at the top level of the Occurrence.
48
+ # @!attribute [rw] envelope
49
+ # @return [::Grafeas::V1::Envelope]
50
+ # If doing something security critical, make sure to verify the signatures in
51
+ # this metadata.
52
+ # @!attribute [rw] statement
53
+ # @return [::Grafeas::V1::InTotoStatement]
54
+ class DSSEAttestationOccurrence
55
+ include ::Google::Protobuf::MessageExts
56
+ extend ::Google::Protobuf::MessageExts::ClassMethods
57
+ end
58
+ end
59
+ end