google-cloud-container_analysis-v1 0.4.6 → 0.4.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,98 @@
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] title
23
+ # @return [::String]
24
+ # The title that identifies this compliance check.
25
+ # @!attribute [rw] description
26
+ # @return [::String]
27
+ # A description about this compliance check.
28
+ # @!attribute [rw] version
29
+ # @return [::Array<::Grafeas::V1::ComplianceVersion>]
30
+ # The OS and config versions the benchmark applies to.
31
+ # @!attribute [rw] rationale
32
+ # @return [::String]
33
+ # A rationale for the existence of this compliance check.
34
+ # @!attribute [rw] remediation
35
+ # @return [::String]
36
+ # A description of remediation steps if the compliance check fails.
37
+ # @!attribute [rw] cis_benchmark
38
+ # @return [::Grafeas::V1::ComplianceNote::CisBenchmark]
39
+ # @!attribute [rw] scan_instructions
40
+ # @return [::String]
41
+ # Serialized scan instructions with a predefined format.
42
+ class ComplianceNote
43
+ include ::Google::Protobuf::MessageExts
44
+ extend ::Google::Protobuf::MessageExts::ClassMethods
45
+
46
+ # A compliance check that is a CIS benchmark.
47
+ # @!attribute [rw] profile_level
48
+ # @return [::Integer]
49
+ # @!attribute [rw] severity
50
+ # @return [::Grafeas::V1::Severity]
51
+ class CisBenchmark
52
+ include ::Google::Protobuf::MessageExts
53
+ extend ::Google::Protobuf::MessageExts::ClassMethods
54
+ end
55
+ end
56
+
57
+ # Describes the CIS benchmark version that is applicable to a given OS and
58
+ # os version.
59
+ # @!attribute [rw] cpe_uri
60
+ # @return [::String]
61
+ # The CPE URI (https://cpe.mitre.org/specification/) this benchmark is
62
+ # applicable to.
63
+ # @!attribute [rw] version
64
+ # @return [::String]
65
+ # The version of the benchmark. This is set to the version of the OS-specific
66
+ # CIS document the benchmark is defined in.
67
+ class ComplianceVersion
68
+ include ::Google::Protobuf::MessageExts
69
+ extend ::Google::Protobuf::MessageExts::ClassMethods
70
+ end
71
+
72
+ # An indication that the compliance checks in the associated ComplianceNote
73
+ # were not satisfied for particular resources or a specified reason.
74
+ # @!attribute [rw] non_compliant_files
75
+ # @return [::Array<::Grafeas::V1::NonCompliantFile>]
76
+ # @!attribute [rw] non_compliance_reason
77
+ # @return [::String]
78
+ class ComplianceOccurrence
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+ end
82
+
83
+ # Details about files that caused a compliance check to fail.
84
+ # @!attribute [rw] path
85
+ # @return [::String]
86
+ # Empty if `display_command` is set.
87
+ # @!attribute [rw] display_command
88
+ # @return [::String]
89
+ # Command to display the non-compliant files.
90
+ # @!attribute [rw] reason
91
+ # @return [::String]
92
+ # Explains why a file is non compliant for a CIS check.
93
+ class NonCompliantFile
94
+ include ::Google::Protobuf::MessageExts
95
+ extend ::Google::Protobuf::MessageExts::ClassMethods
96
+ end
97
+ end
98
+ end
@@ -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