google-cloud-cloud_security_compliance-v1 0.1.0 → 0.2.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.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +4 -4
  3. data/README.md +4 -4
  4. data/lib/google/cloud/cloud_security_compliance/v1/audit/client.rb +859 -0
  5. data/lib/google/cloud/cloud_security_compliance/v1/audit/credentials.rb +47 -0
  6. data/lib/google/cloud/cloud_security_compliance/v1/audit/operations.rb +841 -0
  7. data/lib/google/cloud/cloud_security_compliance/v1/audit/paths.rb +110 -0
  8. data/lib/google/cloud/cloud_security_compliance/v1/audit/rest/client.rb +796 -0
  9. data/lib/google/cloud/cloud_security_compliance/v1/audit/rest/operations.rb +925 -0
  10. data/lib/google/cloud/cloud_security_compliance/v1/audit/rest/service_stub.rb +387 -0
  11. data/lib/google/cloud/cloud_security_compliance/v1/audit/rest.rb +54 -0
  12. data/lib/google/cloud/cloud_security_compliance/v1/audit.rb +56 -0
  13. data/lib/google/cloud/cloud_security_compliance/v1/bindings_override.rb +1 -1
  14. data/lib/google/cloud/cloud_security_compliance/v1/cm_enrollment_service/client.rb +608 -0
  15. data/lib/google/cloud/cloud_security_compliance/v1/cm_enrollment_service/credentials.rb +47 -0
  16. data/lib/google/cloud/cloud_security_compliance/v1/cm_enrollment_service/paths.rb +72 -0
  17. data/lib/google/cloud/cloud_security_compliance/v1/cm_enrollment_service/rest/client.rb +559 -0
  18. data/lib/google/cloud/cloud_security_compliance/v1/cm_enrollment_service/rest/service_stub.rb +234 -0
  19. data/lib/google/cloud/cloud_security_compliance/v1/cm_enrollment_service/rest.rb +54 -0
  20. data/lib/google/cloud/cloud_security_compliance/v1/cm_enrollment_service.rb +56 -0
  21. data/lib/google/cloud/cloud_security_compliance/v1/config/client.rb +133 -102
  22. data/lib/google/cloud/cloud_security_compliance/v1/config/rest/client.rb +113 -99
  23. data/lib/google/cloud/cloud_security_compliance/v1/deployment/client.rb +80 -41
  24. data/lib/google/cloud/cloud_security_compliance/v1/deployment/operations.rb +20 -3
  25. data/lib/google/cloud/cloud_security_compliance/v1/deployment/rest/client.rb +60 -38
  26. data/lib/google/cloud/cloud_security_compliance/v1/monitoring/client.rb +940 -0
  27. data/lib/google/cloud/cloud_security_compliance/v1/monitoring/credentials.rb +47 -0
  28. data/lib/google/cloud/cloud_security_compliance/v1/monitoring/paths.rb +142 -0
  29. data/lib/google/cloud/cloud_security_compliance/v1/monitoring/rest/client.rb +870 -0
  30. data/lib/google/cloud/cloud_security_compliance/v1/monitoring/rest/service_stub.rb +456 -0
  31. data/lib/google/cloud/cloud_security_compliance/v1/monitoring/rest.rb +53 -0
  32. data/lib/google/cloud/cloud_security_compliance/v1/monitoring.rb +55 -0
  33. data/lib/google/cloud/cloud_security_compliance/v1/rest.rb +4 -1
  34. data/lib/google/cloud/cloud_security_compliance/v1/version.rb +1 -1
  35. data/lib/google/cloud/cloud_security_compliance/v1.rb +5 -2
  36. data/lib/google/cloud/cloudsecuritycompliance/v1/audit_pb.rb +70 -0
  37. data/lib/google/cloud/cloudsecuritycompliance/v1/audit_services_pb.rb +51 -0
  38. data/lib/google/cloud/cloudsecuritycompliance/v1/cm_enrollment_service_pb.rb +54 -0
  39. data/lib/google/cloud/cloudsecuritycompliance/v1/cm_enrollment_service_services_pb.rb +54 -0
  40. data/lib/google/cloud/cloudsecuritycompliance/v1/common_pb.rb +4 -1
  41. data/lib/google/cloud/cloudsecuritycompliance/v1/config_pb.rb +1 -1
  42. data/lib/google/cloud/cloudsecuritycompliance/v1/config_services_pb.rb +58 -55
  43. data/lib/google/cloud/cloudsecuritycompliance/v1/deployment_services_pb.rb +9 -6
  44. data/lib/google/cloud/cloudsecuritycompliance/v1/monitoring_pb.rb +74 -0
  45. data/lib/google/cloud/cloudsecuritycompliance/v1/monitoring_services_pb.rb +53 -0
  46. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/audit.rb +413 -0
  47. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/cm_enrollment_service.rb +108 -0
  48. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/common.rb +210 -181
  49. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/config.rb +69 -57
  50. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/deployment.rb +180 -139
  51. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/monitoring.rb +527 -0
  52. data/proto_docs/google/type/interval.rb +45 -0
  53. metadata +34 -1
@@ -21,23 +21,21 @@ module Google
21
21
  module Cloud
22
22
  module CloudSecurityCompliance
23
23
  module V1
24
- # A Framework is a collection of CloudControls to address security and
25
- # compliance requirements. Frameworks can be used for prevention, detection,
26
- # and auditing. They can be either built-in, industry-standard frameworks
27
- # provided by GCP/AZURE/AWS (e.g., NIST, FedRAMP) or custom frameworks created
28
- # by users.
24
+ # A framework is a collection of cloud controls and regulatory controls
25
+ # that represent security best practices or industry-defined standards such as
26
+ # FedRAMP or NIST.
29
27
  # @!attribute [rw] name
30
28
  # @return [::String]
31
- # Required. Identifier. The name of the framework.
32
- # Format:
33
- # organizations/\\{organization}/locations/\\{location}/frameworks/\\{framework_id}
29
+ # Required. Identifier. The name of the framework, in the format
30
+ # `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
31
+ # The only supported location is `global`.
34
32
  # @!attribute [r] major_revision_id
35
33
  # @return [::Integer]
36
- # Output only. Major revision of the framework incremented in ascending
37
- # order.
34
+ # Output only. The major version of the framework, which is incremented in
35
+ # ascending order.
38
36
  # @!attribute [rw] display_name
39
37
  # @return [::String]
40
- # Optional. Display name of the framework. The maximum length is 200
38
+ # Optional. The friendly name of the framework. The maximum length is 200
41
39
  # characters.
42
40
  # @!attribute [rw] description
43
41
  # @return [::String]
@@ -45,20 +43,20 @@ module Google
45
43
  # characters.
46
44
  # @!attribute [r] type
47
45
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::Framework::FrameworkType]
48
- # Output only. The type of the framework. The default is TYPE_CUSTOM.
46
+ # Output only. The type of framework.
49
47
  # @!attribute [rw] cloud_control_details
50
48
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudControlDetails>]
51
- # Optional. The details of the cloud controls directly added without any
49
+ # Optional. The cloud control details that are directly added without any
52
50
  # grouping in the framework.
53
51
  # @!attribute [rw] category
54
52
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::FrameworkCategory>]
55
53
  # Optional. The category of the framework.
56
54
  # @!attribute [r] supported_cloud_providers
57
55
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudProvider>]
58
- # Output only. cloud providers supported
56
+ # Output only. The cloud providers that are supported by the framework.
59
57
  # @!attribute [r] supported_target_resource_types
60
58
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::TargetResourceType>]
61
- # Output only. target resource types supported by the Framework.
59
+ # Output only. The target resource types that are supported by the framework.
62
60
  # @!attribute [r] supported_enforcement_modes
63
61
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::EnforcementMode>]
64
62
  # Output only. The supported enforcement modes of the framework.
@@ -66,140 +64,152 @@ module Google
66
64
  include ::Google::Protobuf::MessageExts
67
65
  extend ::Google::Protobuf::MessageExts::ClassMethods
68
66
 
69
- # The type of the framework.
67
+ # The type of framework.
70
68
  module FrameworkType
71
69
  # Default value. This value is unused.
72
70
  FRAMEWORK_TYPE_UNSPECIFIED = 0
73
71
 
74
- # The framework is a built-in framework if it is created and managed by
75
- # GCP.
72
+ # A framework that's provided and managed by Google.
76
73
  BUILT_IN = 1
77
74
 
78
- # The framework is a custom framework if it is created and managed by the
79
- # user.
75
+ # A framework that's created and managed by you.
80
76
  CUSTOM = 2
81
77
  end
82
78
  end
83
79
 
84
- # CloudControlDetails contains the details of a CloudControl.
80
+ # The details of a cloud control.
85
81
  # @!attribute [rw] name
86
82
  # @return [::String]
87
- # Required. The name of the CloudControl in the format:
88
- # organizations/\\{organization}/locations/\\{location}/
89
- # cloudControls/\\{cloud-control}”
83
+ # Required. The name of the cloud control, in the format
84
+ # `organizations/{organization}/locations/{location}/cloudControls/{cloud-control}`.
85
+ # The only supported location is `global`.
90
86
  # @!attribute [rw] major_revision_id
91
87
  # @return [::Integer]
92
- # Required. Major revision of cloudcontrol
88
+ # Required. The major version of the cloud control.
93
89
  # @!attribute [rw] parameters
94
90
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::Parameter>]
95
- # Optional. Parameters is a key-value pair that is required by the
96
- # CloudControl. The specification of these parameters will be present in
97
- # cloudcontrol.Eg: { "name": "location","value": "us-west-1"}.
91
+ # Optional. Parameters are key-value pairs that let you provide your custom
92
+ # location requirements, environment requirements, or other settings that are
93
+ # relevant to the cloud control. An example parameter is
94
+ # `{"name": "location","value": "us-west-1"}`.
98
95
  class CloudControlDetails
99
96
  include ::Google::Protobuf::MessageExts
100
97
  extend ::Google::Protobuf::MessageExts::ClassMethods
101
98
  end
102
99
 
103
- # FrameworkReference contains the reference of a framework.
100
+ # The reference of a framework, in the format
101
+ # `organizations/{organization}/locations/{location}/frameworks/{framework}`.
102
+ # The only supported location is `global`.
104
103
  # @!attribute [rw] framework
105
104
  # @return [::String]
106
- # Required. In the format:
107
- # organizations/\\{org}/locations/\\{location}/frameworks/\\{framework}
105
+ # Required. The major version of the framework. If not specified, the version
106
+ # corresponds to the latest version of the framework.
108
107
  # @!attribute [rw] major_revision_id
109
108
  # @return [::Integer]
110
- # Optional. Major revision id of the framework. If not specified, corresponds
111
- # to the latest revision of the framework.
109
+ # Optional. The major version of the framework. If not specified, the version
110
+ # corresponds to the latest version of the framework.
112
111
  class FrameworkReference
113
112
  include ::Google::Protobuf::MessageExts
114
113
  extend ::Google::Protobuf::MessageExts::ClassMethods
115
114
  end
116
115
 
117
- # Parameters is a key-value pair.
116
+ # Parameters are key-value pairs that let you provide your custom location
117
+ # requirements, environment requirements, or other settings that are
118
+ # relevant to the cloud control.
118
119
  # @!attribute [rw] name
119
120
  # @return [::String]
120
- # Required. The name of the parameter.
121
+ # Required. The name or key of the parameter.
121
122
  # @!attribute [rw] parameter_value
122
123
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::ParamValue]
123
- # Required. The value of the parameter
124
+ # Required. The value of the parameter.
124
125
  class Parameter
125
126
  include ::Google::Protobuf::MessageExts
126
127
  extend ::Google::Protobuf::MessageExts::ClassMethods
127
128
  end
128
129
 
129
- # A CloudControl is the fundamental unit encapsulating the rules
130
- # to meet a specific security or compliance intent. It can contain
131
- # various rule types (like Organization Policies, CEL expressions, etc.)
132
- # enabling different enforcement modes (Preventive, Detective, Audit).
133
- # CloudControls are often parameterized for reusability and can be either
134
- # BUILT_IN (provided by Google) or CUSTOM (defined by the user).
130
+ # A cloud control is a set of rules and associated metadata that you can
131
+ # use to define your organization's security or compliance intent.
135
132
  # @!attribute [rw] name
136
133
  # @return [::String]
137
- # Required. Identifier. The resource name of the cloud control.
138
- # Format:
139
- # organizations/\\{organization}/locations/\\{location}/cloudControls/\\{cloud_control_id}
134
+ # Required. Identifier. The name of the cloud control, in the format
135
+ # `organizations/{organization}/locations/{location}/cloudControls/{cloud_control_id}`.
136
+ # The only supported location is `global`.
140
137
  # @!attribute [r] major_revision_id
141
138
  # @return [::Integer]
142
- # Output only. Major revision of the cloud control incremented in ascending
143
- # order.
139
+ # Output only. The major version of the cloud control, which is incremented
140
+ # in ascending order.
144
141
  # @!attribute [rw] description
145
142
  # @return [::String]
146
143
  # Optional. A description of the cloud control. The maximum length is 2000
147
144
  # characters.
148
145
  # @!attribute [rw] display_name
149
146
  # @return [::String]
150
- # Optional. The display name of the cloud control. The maximum length is 200
147
+ # Optional. The friendly name of the cloud control. The maximum length is 200
151
148
  # characters.
152
149
  # @!attribute [r] supported_enforcement_modes
153
150
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::EnforcementMode>]
154
- # Output only. The supported enforcement mode of the cloud control. Default
155
- # is DETECTIVE.
151
+ # Output only. The supported enforcement modes for the cloud control.
156
152
  # @!attribute [rw] parameter_spec
157
153
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::ParameterSpec>]
158
- # Optional. The parameter spec of the cloud control.
154
+ # Optional. The parameter specifications for the cloud control.
159
155
  # @!attribute [rw] rules
160
156
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::Rule>]
161
- # Optional. The Policy to be enforced to prevent/detect resource
162
- # non-compliance.
157
+ # Optional. The rules that you can enforce to meet your security or
158
+ # compliance intent.
163
159
  # @!attribute [rw] severity
164
160
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::Severity]
165
- # Optional. The severity of findings generated by the cloud control.
161
+ # Optional. The severity of the findings that are generated by the cloud
162
+ # control.
166
163
  # @!attribute [rw] finding_category
167
164
  # @return [::String]
168
- # Optional. The finding_category of the cloud control. The maximum length is
169
- # 255 characters.
165
+ # Optional. The finding category for the cloud control findings. The maximum
166
+ # length is 255 characters.
170
167
  # @!attribute [rw] supported_cloud_providers
171
168
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudProvider>]
172
- # Optional. cloud providers supported
169
+ # Optional. The supported cloud providers.
173
170
  # @!attribute [r] related_frameworks
174
171
  # @return [::Array<::String>]
175
- # Output only. The Frameworks that include this CloudControl
172
+ # Output only. The frameworks that include this cloud control.
176
173
  # @!attribute [rw] remediation_steps
177
174
  # @return [::String]
178
- # Optional. The remediation steps for the findings generated by the cloud
179
- # control. The maximum length is 400 characters.
175
+ # Optional. The remediation steps for the cloud control findings. The
176
+ # maximum length is 400 characters.
180
177
  # @!attribute [rw] categories
181
178
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudControlCategory>]
182
- # Optional. The categories of the cloud control.
179
+ # Optional. The categories for the cloud control.
183
180
  # @!attribute [r] create_time
184
181
  # @return [::Google::Protobuf::Timestamp]
185
- # Output only. The last updated time of the cloud control.
186
- # The create_time is used because a new CC is created whenever we update an
187
- # existing CC.
182
+ # Output only. The time that the cloud control was last updated.
183
+ # `create_time` is used because a new cloud control is created
184
+ # whenever an existing cloud control is updated.
188
185
  # @!attribute [rw] supported_target_resource_types
189
186
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::TargetResourceType>]
190
- # Optional. target resource types supported by the CloudControl.
187
+ # Optional. The target resource types that are supported by the cloud
188
+ # control.
191
189
  class CloudControl
192
190
  include ::Google::Protobuf::MessageExts
193
191
  extend ::Google::Protobuf::MessageExts::ClassMethods
192
+
193
+ # The type of cloud control.
194
+ module Type
195
+ # Default value. This value is unused.
196
+ TYPE_UNSPECIFIED = 0
197
+
198
+ # A cloud control that's created and managed by you.
199
+ CUSTOM = 1
200
+
201
+ # A cloud control that's provided and managed by Google.
202
+ BUILT_IN = 2
203
+ end
194
204
  end
195
205
 
196
- # A parameter spec of the cloud control.
206
+ # The parameter specification for the cloud control.
197
207
  # @!attribute [rw] name
198
208
  # @return [::String]
199
209
  # Required. The name of the parameter.
200
210
  # @!attribute [rw] display_name
201
211
  # @return [::String]
202
- # Optional. The display name of the parameter. The maximum length is 200
212
+ # Optional. The friendly name of the parameter. The maximum length is 200
203
213
  # characters.
204
214
  # @!attribute [rw] description
205
215
  # @return [::String]
@@ -207,62 +217,62 @@ module Google
207
217
  # characters.
208
218
  # @!attribute [rw] is_required
209
219
  # @return [::Boolean]
210
- # Required. if the parameter is required
220
+ # Required. Whether the parameter is required.
211
221
  # @!attribute [rw] value_type
212
222
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::ParameterSpec::ValueType]
213
- # Required. Parameter value type.
223
+ # Required. The parameter value type.
214
224
  # @!attribute [rw] default_value
215
225
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::ParamValue]
216
226
  # Optional. The default value of the parameter.
217
227
  # @!attribute [rw] substitution_rules
218
228
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::ParameterSubstitutionRule>]
219
- # Optional. List of parameter substitutions.
229
+ # Optional. The list of parameter substitutions.
220
230
  # @!attribute [rw] sub_parameters
221
231
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::ParameterSpec>]
222
- # Optional. ParameterSpec for oneof attributes.
232
+ # Optional. The parameter specification for `oneOf` attributes.
223
233
  # @!attribute [rw] validation
224
234
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::Validation]
225
- # Optional. The allowed set of values for the parameter.
235
+ # Optional. The permitted set of values for the parameter.
226
236
  class ParameterSpec
227
237
  include ::Google::Protobuf::MessageExts
228
238
  extend ::Google::Protobuf::MessageExts::ClassMethods
229
239
 
230
- # The type of the parameter value.
240
+ # The type of parameter value.
231
241
  module ValueType
232
242
  # Default value. This value is unused.
233
243
  VALUE_TYPE_UNSPECIFIED = 0
234
244
 
235
- # String value.
245
+ # A string value.
236
246
  STRING = 3
237
247
 
238
- # Boolean value.
248
+ # A boolean value.
239
249
  BOOLEAN = 4
240
250
 
241
- # String list value.
251
+ # A string list value.
242
252
  STRINGLIST = 5
243
253
 
244
- # Numeric value.
254
+ # A numeric value.
245
255
  NUMBER = 6
246
256
 
247
- # OneOf value.
257
+ # A oneOf value.
248
258
  ONEOF = 7
249
259
  end
250
260
  end
251
261
 
252
- # Validation of the parameter.
262
+ # The validation of the parameter.
253
263
  # @!attribute [rw] allowed_values
254
264
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::AllowedValues]
255
- # Allowed set of values for the parameter.
265
+ # The permitted set of values for the parameter.
256
266
  #
257
267
  # Note: The following fields are mutually exclusive: `allowed_values`, `int_range`, `regexp_pattern`. If a field in that set is populated, all other fields in the set will automatically be cleared.
258
268
  # @!attribute [rw] int_range
259
269
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::IntRange]
260
- # Allowed range for numeric parameters.
270
+ # The permitted range for numeric parameters.
261
271
  #
262
272
  # Note: The following fields are mutually exclusive: `int_range`, `allowed_values`, `regexp_pattern`. If a field in that set is populated, all other fields in the set will automatically be cleared.
263
273
  # @!attribute [rw] regexp_pattern
264
274
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::RegexpPattern]
265
- # Regular expression for string parameters.
275
+ # The regular expression for string parameters.
266
276
  #
267
277
  # Note: The following fields are mutually exclusive: `regexp_pattern`, `allowed_values`, `int_range`. If a field in that set is populated, all other fields in the set will automatically be cleared.
268
278
  class Validation
@@ -270,37 +280,39 @@ module Google
270
280
  extend ::Google::Protobuf::MessageExts::ClassMethods
271
281
  end
272
282
 
273
- # Allowed set of values for the parameter.
283
+ # The allowed set of values for the parameter.
274
284
  # @!attribute [rw] values
275
285
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::ParamValue>]
276
- # Required. List of allowed values for the parameter.
286
+ # Required. The list of allowed values for the parameter.
277
287
  class AllowedValues
278
288
  include ::Google::Protobuf::MessageExts
279
289
  extend ::Google::Protobuf::MessageExts::ClassMethods
280
290
  end
281
291
 
282
- # Regular Expression Validator for parameter values.
292
+ # The regular expression (regex) validator for parameter values.
283
293
  # @!attribute [rw] pattern
284
294
  # @return [::String]
285
- # Required. Regex Pattern to match the value(s) of parameter.
295
+ # Required. The regex pattern to match the values of the parameter with.
286
296
  class RegexpPattern
287
297
  include ::Google::Protobuf::MessageExts
288
298
  extend ::Google::Protobuf::MessageExts::ClassMethods
289
299
  end
290
300
 
291
- # Number range for number parameters.
301
+ # The number range for number parameters.
292
302
  # @!attribute [rw] min
293
303
  # @return [::Integer]
294
- # Required. Minimum allowed value for the numeric parameter (inclusive).
304
+ # Required. The minimum permitted value for the numeric parameter
305
+ # (inclusive).
295
306
  # @!attribute [rw] max
296
307
  # @return [::Integer]
297
- # Required. Maximum allowed value for the numeric parameter (inclusive).
308
+ # Required. The maximum permitted value for the numeric parameter
309
+ # (inclusive).
298
310
  class IntRange
299
311
  include ::Google::Protobuf::MessageExts
300
312
  extend ::Google::Protobuf::MessageExts::ClassMethods
301
313
  end
302
314
 
303
- # A list of strings.
315
+ # A list of strings for the parameter value.
304
316
  # @!attribute [rw] values
305
317
  # @return [::Array<::String>]
306
318
  # Required. The strings in the list.
@@ -309,30 +321,30 @@ module Google
309
321
  extend ::Google::Protobuf::MessageExts::ClassMethods
310
322
  end
311
323
 
312
- # Possible parameter value types.
324
+ # The possible parameter value types.
313
325
  # @!attribute [rw] string_value
314
326
  # @return [::String]
315
- # Represents a string value.
327
+ # A string value.
316
328
  #
317
329
  # Note: The following fields are mutually exclusive: `string_value`, `bool_value`, `string_list_value`, `number_value`, `oneof_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
318
330
  # @!attribute [rw] bool_value
319
331
  # @return [::Boolean]
320
- # Represents a boolean value.
332
+ # A boolean value.
321
333
  #
322
334
  # Note: The following fields are mutually exclusive: `bool_value`, `string_value`, `string_list_value`, `number_value`, `oneof_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
323
335
  # @!attribute [rw] string_list_value
324
336
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::StringList]
325
- # Represents a repeated string.
337
+ # A repeated string.
326
338
  #
327
339
  # Note: The following fields are mutually exclusive: `string_list_value`, `string_value`, `bool_value`, `number_value`, `oneof_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
328
340
  # @!attribute [rw] number_value
329
341
  # @return [::Float]
330
- # Represents a double value.
342
+ # A double value.
331
343
  #
332
344
  # Note: The following fields are mutually exclusive: `number_value`, `string_value`, `bool_value`, `string_list_value`, `oneof_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
333
345
  # @!attribute [rw] oneof_value
334
346
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::Parameter]
335
- # Represents sub-parameter values.
347
+ # Sub-parameter values.
336
348
  #
337
349
  # Note: The following fields are mutually exclusive: `oneof_value`, `string_value`, `bool_value`, `string_list_value`, `number_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
338
350
  class ParamValue
@@ -340,15 +352,15 @@ module Google
340
352
  extend ::Google::Protobuf::MessageExts::ClassMethods
341
353
  end
342
354
 
343
- # Parameter substitution rules.
355
+ # The parameter substitution rules.
344
356
  # @!attribute [rw] placeholder_substitution_rule
345
357
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::PlaceholderSubstitutionRule]
346
- # Placeholder substitution rule.
358
+ # The placeholder substitution rule.
347
359
  #
348
360
  # Note: The following fields are mutually exclusive: `placeholder_substitution_rule`, `attribute_substitution_rule`. If a field in that set is populated, all other fields in the set will automatically be cleared.
349
361
  # @!attribute [rw] attribute_substitution_rule
350
362
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::AttributeSubstitutionRule]
351
- # Attribute substitution rule.
363
+ # The attribute substitution rule.
352
364
  #
353
365
  # Note: The following fields are mutually exclusive: `attribute_substitution_rule`, `placeholder_substitution_rule`. If a field in that set is populated, all other fields in the set will automatically be cleared.
354
366
  class ParameterSubstitutionRule
@@ -356,57 +368,57 @@ module Google
356
368
  extend ::Google::Protobuf::MessageExts::ClassMethods
357
369
  end
358
370
 
359
- # Attribute at the given path is substituted entirely.
371
+ # The attribute at the given path that's substituted entirely.
360
372
  # @!attribute [rw] attribute
361
373
  # @return [::String]
362
- # Fully qualified proto attribute path (in dot notation).
363
- # Example: rules[0].cel_expression.resource_types_values
374
+ # The fully qualified proto attribute path, in dot notation.
375
+ # For example: `rules[0].cel_expression.resource_types_values`
364
376
  class AttributeSubstitutionRule
365
377
  include ::Google::Protobuf::MessageExts
366
378
  extend ::Google::Protobuf::MessageExts::ClassMethods
367
379
  end
368
380
 
369
- # Placeholder is substituted in the rendered string.
381
+ # The placeholder that's substituted in the rendered string.
370
382
  # @!attribute [rw] attribute
371
383
  # @return [::String]
372
- # Fully qualified proto attribute path (e.g., dot notation)
384
+ # The fully qualified proto attribute path, in dot notation.
373
385
  class PlaceholderSubstitutionRule
374
386
  include ::Google::Protobuf::MessageExts
375
387
  extend ::Google::Protobuf::MessageExts::ClassMethods
376
388
  end
377
389
 
378
- # A rule of the cloud control.
390
+ # A rule in the cloud control.
379
391
  # @!attribute [rw] cel_expression
380
392
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::CELExpression]
381
- # Logic expression in CEL language.
393
+ # The rule's logic expression in Common Expression Language (CEL).
382
394
  # @!attribute [rw] description
383
395
  # @return [::String]
384
- # Optional. Description of the Rule. The maximum length is 2000 characters.
396
+ # Optional. The rule description. The maximum length is 2000 characters.
385
397
  # @!attribute [rw] rule_action_types
386
398
  # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::RuleActionType>]
387
- # Required. The functionality enabled by the Rule.
399
+ # Required. The functionality that's enabled by the rule.
388
400
  class Rule
389
401
  include ::Google::Protobuf::MessageExts
390
402
  extend ::Google::Protobuf::MessageExts::ClassMethods
391
403
  end
392
404
 
393
- # A [CEL
394
- # expression](https://cloud.google.com/certificate-authority-service/docs/using-cel).
405
+ # A Common Expression Language (CEL) expression that's used to create a rule.
395
406
  # @!attribute [rw] resource_types_values
396
407
  # @return [::Google::Cloud::CloudSecurityCompliance::V1::StringList]
397
408
  # The resource instance types on which this expression is defined.
398
- # Format will be of the form : `<canonical service name>/<type>`
399
- # Example: `compute.googleapis.com/Instance`.
409
+ # The format is `<SERVICE_NAME>/<type>`.
410
+ # For example: `compute.googleapis.com/Instance`
400
411
  # @!attribute [rw] expression
401
412
  # @return [::String]
402
- # Required. Logic expression in CEL language.
403
- # The max length of the condition is 1000 characters.
413
+ # Required. The logical expression in CEL. The maximum length of the
414
+ # condition is 1000 characters. For more information, see [CEL
415
+ # expression](https://cloud.google.com/security-command-center/docs/compliance-manager-write-cel-expressions).
404
416
  class CELExpression
405
417
  include ::Google::Protobuf::MessageExts
406
418
  extend ::Google::Protobuf::MessageExts::ClassMethods
407
419
  end
408
420
 
409
- # Represents the metadata of the long-running operation.
421
+ # The metadata for the long-running operation.
410
422
  # @!attribute [r] create_time
411
423
  # @return [::Google::Protobuf::Timestamp]
412
424
  # Output only. The time the operation was created.
@@ -415,116 +427,143 @@ module Google
415
427
  # Output only. The time the operation finished running.
416
428
  # @!attribute [r] target
417
429
  # @return [::String]
418
- # Output only. Server-defined resource path for the target of the operation.
430
+ # Output only. The server-defined resource path for the target of the
431
+ # operation.
419
432
  # @!attribute [r] verb
420
433
  # @return [::String]
421
- # Output only. Name of the verb executed by the operation.
434
+ # Output only. The name of the verb that was executed by the operation.
422
435
  # @!attribute [r] status_message
423
436
  # @return [::String]
424
- # Output only. Human-readable status of the operation, if any.
437
+ # Output only. The human-readable status of the operation, if any.
425
438
  # @!attribute [r] requested_cancellation
426
439
  # @return [::Boolean]
427
- # Output only. Identifies whether the user has requested cancellation
428
- # of the operation. Operations that have been cancelled successfully
429
- # have [Operation.error][] value with a
430
- # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to
431
- # `Code.CANCELLED`.
440
+ # Output only. Identifies whether the user has requested that the operation
441
+ # be cancelled. If an operation was cancelled successfully, then the field
442
+ # {::Google::Longrunning::Operation#error google.longrunning.Operation.error}
443
+ # contains the value [google.rpc.Code.CANCELLED][google.rpc.Code.CANCELLED].
432
444
  # @!attribute [r] api_version
433
445
  # @return [::String]
434
- # Output only. API version used to start the operation.
446
+ # Output only. The API version that was used to start the operation.
435
447
  class OperationMetadata
436
448
  include ::Google::Protobuf::MessageExts
437
449
  extend ::Google::Protobuf::MessageExts::ClassMethods
438
450
  end
439
451
 
440
- # The enforcement mode of the cloud control.
452
+ # The regulatory family of the control.
453
+ # @!attribute [rw] family_id
454
+ # @return [::String]
455
+ # The identifier for the regulatory control family.
456
+ # @!attribute [rw] display_name
457
+ # @return [::String]
458
+ # The friendly name for the regulatory control family.
459
+ class ControlFamily
460
+ include ::Google::Protobuf::MessageExts
461
+ extend ::Google::Protobuf::MessageExts::ClassMethods
462
+ end
463
+
464
+ # The responsibility type for the regulatory control.
465
+ module RegulatoryControlResponsibilityType
466
+ # Default value. This value is unused.
467
+ REGULATORY_CONTROL_RESPONSIBILITY_TYPE_UNSPECIFIED = 0
468
+
469
+ # Google's responsibility.
470
+ GOOGLE = 1
471
+
472
+ # Your responsibility.
473
+ CUSTOMER = 2
474
+
475
+ # Shared responsibility.
476
+ SHARED = 3
477
+ end
478
+
479
+ # The enforcement mode for the cloud control.
441
480
  module EnforcementMode
442
481
  # Default value. This value is unused.
443
482
  ENFORCEMENT_MODE_UNSPECIFIED = 0
444
483
 
445
- # The cloud control is enforced to prevent resource non-compliance.
484
+ # The cloud control is enforced to prevent non-compliance.
446
485
  PREVENTIVE = 1
447
486
 
448
- # The cloud control is enforced to detect resource non-compliance.
487
+ # The cloud control is enforced to detect non-compliance.
449
488
  DETECTIVE = 2
450
489
 
451
- # The cloud control is enforced to audit resource non-compliance.
490
+ # The cloud control is enforced to audit for non-compliance.
452
491
  AUDIT = 3
453
492
  end
454
493
 
455
- # The category of the framework.
494
+ # The category for the framework.
456
495
  module FrameworkCategory
457
496
  # Default value. This value is unused.
458
497
  FRAMEWORK_CATEGORY_UNSPECIFIED = 0
459
498
 
460
- # Standard framework
499
+ # An industry-defined framework.
461
500
  INDUSTRY_DEFINED_STANDARD = 1
462
501
 
463
- # Assured Workloads framework
502
+ # An Assured Workloads framework.
464
503
  ASSURED_WORKLOADS = 2
465
504
 
466
- # Data Security framework
505
+ # A data security posture framework.
467
506
  DATA_SECURITY = 3
468
507
 
469
- # Google Best Practices framework
508
+ # A Google's best practices framework.
470
509
  GOOGLE_BEST_PRACTICES = 4
471
510
 
472
- # User created framework.
511
+ # A user-created framework.
473
512
  CUSTOM_FRAMEWORK = 5
474
513
  end
475
514
 
476
- # The category of the cloud control.
515
+ # The category for the cloud control.
477
516
  module CloudControlCategory
478
517
  # Default value. This value is unused.
479
518
  CLOUD_CONTROL_CATEGORY_UNSPECIFIED = 0
480
519
 
481
- # Infrastructure
520
+ # The infrastructure security category.
482
521
  CC_CATEGORY_INFRASTRUCTURE = 1
483
522
 
484
- # Artificial Intelligence
523
+ # The artificial intelligence category.
485
524
  CC_CATEGORY_ARTIFICIAL_INTELLIGENCE = 2
486
525
 
487
- # Physical Security
526
+ # The physical security category.
488
527
  CC_CATEGORY_PHYSICAL_SECURITY = 3
489
528
 
490
- # Data Security
529
+ # The data security category.
491
530
  CC_CATEGORY_DATA_SECURITY = 4
492
531
 
493
- # Network Security
532
+ # The network security category.
494
533
  CC_CATEGORY_NETWORK_SECURITY = 5
495
534
 
496
- # Incident Management
535
+ # The incident management category.
497
536
  CC_CATEGORY_INCIDENT_MANAGEMENT = 6
498
537
 
499
- # Identity & Access Management
538
+ # The identity and access management category.
500
539
  CC_CATEGORY_IDENTITY_AND_ACCESS_MANAGEMENT = 7
501
540
 
502
- # Encryption
541
+ # The encryption category.
503
542
  CC_CATEGORY_ENCRYPTION = 8
504
543
 
505
- # Logs Management & Infrastructure
544
+ # The logs management and infrastructure category.
506
545
  CC_CATEGORY_LOGS_MANAGEMENT_AND_INFRASTRUCTURE = 9
507
546
 
508
- # HR, Admin & Processes
547
+ # The HR, admin, and processes category.
509
548
  CC_CATEGORY_HR_ADMIN_AND_PROCESSES = 10
510
549
 
511
- # Third Party & Sub-Processor Management
550
+ # The third-party and sub-processor management category.
512
551
  CC_CATEGORY_THIRD_PARTY_AND_SUB_PROCESSOR_MANAGEMENT = 11
513
552
 
514
- # Legal & Disclosures
553
+ # The legal and disclosures category.
515
554
  CC_CATEGORY_LEGAL_AND_DISCLOSURES = 12
516
555
 
517
- # Vulnerability Management
556
+ # The vulnerability management category.
518
557
  CC_CATEGORY_VULNERABILITY_MANAGEMENT = 13
519
558
 
520
- # Privacy
559
+ # The privacy category.
521
560
  CC_CATEGORY_PRIVACY = 14
522
561
 
523
- # BCDR (Business Continuity and Disaster Recovery)
562
+ # The business continuity and disaster recovery (BCDR) category.
524
563
  CC_CATEGORY_BCDR = 15
525
564
  end
526
565
 
527
- # The cloud platform.
566
+ # The cloud provider that's associated with the cloud control.
528
567
  module CloudProvider
529
568
  # Default value. This value is unused.
530
569
  CLOUD_PROVIDER_UNSPECIFIED = 0
@@ -541,11 +580,9 @@ module Google
541
580
 
542
581
  # The severity of the finding.
543
582
  module Severity
544
- # This value is used for findings when a source doesn't write a severity
545
- # value.
583
+ # Default value. This value is unused.
546
584
  SEVERITY_UNSPECIFIED = 0
547
585
 
548
- # Vulnerability:
549
586
  # A critical vulnerability is easily discoverable by an external actor,
550
587
  # exploitable, and results in the direct ability to execute arbitrary code,
551
588
  # exfiltrate data, and otherwise gain additional access and privileges to
@@ -553,28 +590,24 @@ module Google
553
590
  # unprotected user data and public SSH access with weak or no
554
591
  # passwords.
555
592
  #
556
- # Threat:
557
- # Indicates a threat that is able to access, modify, or delete data or
593
+ # A critical threat is a threat that can access, modify, or delete data or
558
594
  # execute unauthorized code within existing resources.
559
595
  CRITICAL = 1
560
596
 
561
- # Vulnerability:
562
- # A high risk vulnerability can be easily discovered and exploited in
563
- # combination with other vulnerabilities in order to gain direct access and
597
+ # A high-risk vulnerability can be easily discovered and exploited in
598
+ # combination with other vulnerabilities to gain direct access and
564
599
  # the ability to execute arbitrary code, exfiltrate data, and otherwise
565
600
  # gain additional access and privileges to cloud resources and workloads.
566
601
  # An example is a database with weak or no passwords that is only
567
602
  # accessible internally. This database could easily be compromised by an
568
603
  # actor that had access to the internal network.
569
604
  #
570
- # Threat:
571
- # Indicates a threat that is able to create new computational resources in
572
- # an environment but not able to access data or execute code in existing
573
- # resources.
605
+ # A high-risk threat is a threat that can create new computational
606
+ # resources in an environment but can't access data or execute code in
607
+ # existing resources.
574
608
  HIGH = 2
575
609
 
576
- # Vulnerability:
577
- # A medium risk vulnerability could be used by an actor to gain access to
610
+ # A medium-risk vulnerability can be used by an actor to gain access to
578
611
  # resources or privileges that enable them to eventually (through multiple
579
612
  # steps or a complex exploit) gain access and the ability to execute
580
613
  # arbitrary code or exfiltrate data. An example is a service account with
@@ -582,20 +615,17 @@ module Google
582
615
  # the service account, they could potentially use that access to manipulate
583
616
  # a project the service account was not intended to.
584
617
  #
585
- # Threat:
586
- # Indicates a threat that is able to cause operational impact but may not
618
+ # A medium-risk threat can cause operational impact but might not
587
619
  # access data or execute unauthorized code.
588
620
  MEDIUM = 3
589
621
 
590
- # Vulnerability:
591
- # A low risk vulnerability hampers a security organization's ability to
622
+ # A low-risk vulnerability hampers a security organization's ability to
592
623
  # detect vulnerabilities or active threats in their deployment, or prevents
593
624
  # the root cause investigation of security issues. An example is monitoring
594
625
  # and logs being disabled for resource configurations and access.
595
626
  #
596
- # Threat:
597
- # Indicates a threat that has obtained minimal access to an environment but
598
- # is not able to access data, execute code, or create resources.
627
+ # A low-risk threat is a threat that has obtained minimal access to an
628
+ # environment but can't access data, execute code, or create resources.
599
629
  LOW = 4
600
630
  end
601
631
 
@@ -604,32 +634,31 @@ module Google
604
634
  # Default value. This value is unused.
605
635
  RULE_ACTION_TYPE_UNSPECIFIED = 0
606
636
 
607
- # Preventative action type.
637
+ # The rule is intended to prevent non-compliance.
608
638
  RULE_ACTION_TYPE_PREVENTIVE = 1
609
639
 
610
- # Detective action type.
640
+ # The rule is intended to detect non-compliance.
611
641
  RULE_ACTION_TYPE_DETECTIVE = 2
612
642
 
613
- # Audit action type.
643
+ # The rule is intended to audit non-compliance.
614
644
  RULE_ACTION_TYPE_AUDIT = 3
615
645
  end
616
646
 
617
- # TargetResourceType represents the type of resource that a control or
618
- # framework can be applied to.
647
+ # The type of resource that a control or framework can be applied to.
619
648
  module TargetResourceType
620
649
  # Default value. This value is unused.
621
650
  TARGET_RESOURCE_TYPE_UNSPECIFIED = 0
622
651
 
623
- # Target resource is an Organization.
652
+ # The target resource is a Google Cloud organization.
624
653
  TARGET_RESOURCE_CRM_TYPE_ORG = 1
625
654
 
626
- # Target resource is a Folder.
655
+ # The target resource is a folder.
627
656
  TARGET_RESOURCE_CRM_TYPE_FOLDER = 2
628
657
 
629
- # Target resource is a Project.
658
+ # The target resource is a project.
630
659
  TARGET_RESOURCE_CRM_TYPE_PROJECT = 3
631
660
 
632
- # Target resource is an Application.
661
+ # The target resource is an application in App Hub.
633
662
  TARGET_RESOURCE_TYPE_APPLICATION = 4
634
663
  end
635
664
  end