google-apis-securitycenter_v1 0.15.0 → 0.19.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -211,7 +211,8 @@ module Google
211
211
  # @param [String] start_time
212
212
  # The time at which the updated SecurityMarks take effect. If not set uses
213
213
  # current server time. Updates will be applied to the SecurityMarks that are
214
- # active immediately preceding this time.
214
+ # active immediately preceding this time. Must be smaller or equal to the server
215
+ # time.
215
216
  # @param [String] update_mask
216
217
  # The FieldMask to use when updating the security marks resource. The field mask
217
218
  # must not contain duplicate fields. If empty or set to "marks", all marks will
@@ -247,6 +248,227 @@ module Google
247
248
  execute_or_queue_command(command, &block)
248
249
  end
249
250
 
251
+ # Kicks off an LRO to bulk mute findings for a parent based on a filter. The
252
+ # parent can be either an organization, folder or project. The findings matched
253
+ # by the filter will be muted after the LRO is done.
254
+ # @param [String] parent
255
+ # Required. The parent, at which bulk action needs to be applied. Its format is "
256
+ # organizations/[organization_id]", "folders/[folder_id]", "projects/[project_id]
257
+ # ".
258
+ # @param [Google::Apis::SecuritycenterV1::BulkMuteFindingsRequest] bulk_mute_findings_request_object
259
+ # @param [String] fields
260
+ # Selector specifying which fields to include in a partial response.
261
+ # @param [String] quota_user
262
+ # Available to use for quota purposes for server-side applications. Can be any
263
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
264
+ # @param [Google::Apis::RequestOptions] options
265
+ # Request-specific options
266
+ #
267
+ # @yield [result, err] Result & error if block supplied
268
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Operation] parsed result object
269
+ # @yieldparam err [StandardError] error object if request failed
270
+ #
271
+ # @return [Google::Apis::SecuritycenterV1::Operation]
272
+ #
273
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
274
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
275
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
276
+ def bulk_folder_finding_mute(parent, bulk_mute_findings_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
277
+ command = make_simple_command(:post, 'v1/{+parent}/findings:bulkMute', options)
278
+ command.request_representation = Google::Apis::SecuritycenterV1::BulkMuteFindingsRequest::Representation
279
+ command.request_object = bulk_mute_findings_request_object
280
+ command.response_representation = Google::Apis::SecuritycenterV1::Operation::Representation
281
+ command.response_class = Google::Apis::SecuritycenterV1::Operation
282
+ command.params['parent'] = parent unless parent.nil?
283
+ command.query['fields'] = fields unless fields.nil?
284
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
285
+ execute_or_queue_command(command, &block)
286
+ end
287
+
288
+ # Creates a mute config.
289
+ # @param [String] parent
290
+ # Required. Resource name of the new mute configs's parent. Its format is "
291
+ # organizations/[organization_id]", "folders/[folder_id]", or "projects/[
292
+ # project_id]".
293
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] google_cloud_securitycenter_v1_mute_config_object
294
+ # @param [String] mute_config_id
295
+ # Required. Unique identifier provided by the client within the parent scope. It
296
+ # must consist of lower case letters, numbers, and hyphen, with the first
297
+ # character a letter, the last a letter or a number, and a 63 character maximum.
298
+ # @param [String] fields
299
+ # Selector specifying which fields to include in a partial response.
300
+ # @param [String] quota_user
301
+ # Available to use for quota purposes for server-side applications. Can be any
302
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
303
+ # @param [Google::Apis::RequestOptions] options
304
+ # Request-specific options
305
+ #
306
+ # @yield [result, err] Result & error if block supplied
307
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
308
+ # @yieldparam err [StandardError] error object if request failed
309
+ #
310
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
311
+ #
312
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
313
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
314
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
315
+ def create_folder_mute_config(parent, google_cloud_securitycenter_v1_mute_config_object = nil, mute_config_id: nil, fields: nil, quota_user: nil, options: nil, &block)
316
+ command = make_simple_command(:post, 'v1/{+parent}/muteConfigs', options)
317
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
318
+ command.request_object = google_cloud_securitycenter_v1_mute_config_object
319
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
320
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
321
+ command.params['parent'] = parent unless parent.nil?
322
+ command.query['muteConfigId'] = mute_config_id unless mute_config_id.nil?
323
+ command.query['fields'] = fields unless fields.nil?
324
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
325
+ execute_or_queue_command(command, &block)
326
+ end
327
+
328
+ # Deletes an existing mute config.
329
+ # @param [String] name
330
+ # Required. Name of the mute config to delete. Its format is organizations/`
331
+ # organization`/muteConfigs/`config_id`, folders/`folder`/muteConfigs/`config_id`
332
+ # , or projects/`project`/muteConfigs/`config_id`
333
+ # @param [String] fields
334
+ # Selector specifying which fields to include in a partial response.
335
+ # @param [String] quota_user
336
+ # Available to use for quota purposes for server-side applications. Can be any
337
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
338
+ # @param [Google::Apis::RequestOptions] options
339
+ # Request-specific options
340
+ #
341
+ # @yield [result, err] Result & error if block supplied
342
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Empty] parsed result object
343
+ # @yieldparam err [StandardError] error object if request failed
344
+ #
345
+ # @return [Google::Apis::SecuritycenterV1::Empty]
346
+ #
347
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
348
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
349
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
350
+ def delete_folder_mute_config(name, fields: nil, quota_user: nil, options: nil, &block)
351
+ command = make_simple_command(:delete, 'v1/{+name}', options)
352
+ command.response_representation = Google::Apis::SecuritycenterV1::Empty::Representation
353
+ command.response_class = Google::Apis::SecuritycenterV1::Empty
354
+ command.params['name'] = name unless name.nil?
355
+ command.query['fields'] = fields unless fields.nil?
356
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
357
+ execute_or_queue_command(command, &block)
358
+ end
359
+
360
+ # Gets a mute config.
361
+ # @param [String] name
362
+ # Required. Name of the mute config to retrieve. Its format is organizations/`
363
+ # organization`/muteConfigs/`config_id`, folders/`folder`/muteConfigs/`config_id`
364
+ # , or projects/`project`/muteConfigs/`config_id`
365
+ # @param [String] fields
366
+ # Selector specifying which fields to include in a partial response.
367
+ # @param [String] quota_user
368
+ # Available to use for quota purposes for server-side applications. Can be any
369
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
370
+ # @param [Google::Apis::RequestOptions] options
371
+ # Request-specific options
372
+ #
373
+ # @yield [result, err] Result & error if block supplied
374
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
375
+ # @yieldparam err [StandardError] error object if request failed
376
+ #
377
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
378
+ #
379
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
380
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
381
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
382
+ def get_folder_mute_config(name, fields: nil, quota_user: nil, options: nil, &block)
383
+ command = make_simple_command(:get, 'v1/{+name}', options)
384
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
385
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
386
+ command.params['name'] = name unless name.nil?
387
+ command.query['fields'] = fields unless fields.nil?
388
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
389
+ execute_or_queue_command(command, &block)
390
+ end
391
+
392
+ # Lists mute configs.
393
+ # @param [String] parent
394
+ # Required. The parent, which owns the collection of mute configs. Its format is
395
+ # "organizations/[organization_id]", "folders/[folder_id]", "projects/[
396
+ # project_id]".
397
+ # @param [Fixnum] page_size
398
+ # The maximum number of configs to return. The service may return fewer than
399
+ # this value. If unspecified, at most 10 configs will be returned. The maximum
400
+ # value is 1000; values above 1000 will be coerced to 1000.
401
+ # @param [String] page_token
402
+ # A page token, received from a previous `ListMuteConfigs` call. Provide this to
403
+ # retrieve the subsequent page. When paginating, all other parameters provided
404
+ # to `ListMuteConfigs` must match the call that provided the page token.
405
+ # @param [String] fields
406
+ # Selector specifying which fields to include in a partial response.
407
+ # @param [String] quota_user
408
+ # Available to use for quota purposes for server-side applications. Can be any
409
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
410
+ # @param [Google::Apis::RequestOptions] options
411
+ # Request-specific options
412
+ #
413
+ # @yield [result, err] Result & error if block supplied
414
+ # @yieldparam result [Google::Apis::SecuritycenterV1::ListMuteConfigsResponse] parsed result object
415
+ # @yieldparam err [StandardError] error object if request failed
416
+ #
417
+ # @return [Google::Apis::SecuritycenterV1::ListMuteConfigsResponse]
418
+ #
419
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
420
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
421
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
422
+ def list_folder_mute_configs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
423
+ command = make_simple_command(:get, 'v1/{+parent}/muteConfigs', options)
424
+ command.response_representation = Google::Apis::SecuritycenterV1::ListMuteConfigsResponse::Representation
425
+ command.response_class = Google::Apis::SecuritycenterV1::ListMuteConfigsResponse
426
+ command.params['parent'] = parent unless parent.nil?
427
+ command.query['pageSize'] = page_size unless page_size.nil?
428
+ command.query['pageToken'] = page_token unless page_token.nil?
429
+ command.query['fields'] = fields unless fields.nil?
430
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
431
+ execute_or_queue_command(command, &block)
432
+ end
433
+
434
+ # Updates a mute config.
435
+ # @param [String] name
436
+ # This field will be ignored if provided on config creation. Format "
437
+ # organizations/`organization`/muteConfigs/`mute_config`" "folders/`folder`/
438
+ # muteConfigs/`mute_config`" "projects/`project`/muteConfigs/`mute_config`"
439
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] google_cloud_securitycenter_v1_mute_config_object
440
+ # @param [String] update_mask
441
+ # The list of fields to be updated. If empty all mutable fields will be updated.
442
+ # @param [String] fields
443
+ # Selector specifying which fields to include in a partial response.
444
+ # @param [String] quota_user
445
+ # Available to use for quota purposes for server-side applications. Can be any
446
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
447
+ # @param [Google::Apis::RequestOptions] options
448
+ # Request-specific options
449
+ #
450
+ # @yield [result, err] Result & error if block supplied
451
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
452
+ # @yieldparam err [StandardError] error object if request failed
453
+ #
454
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
455
+ #
456
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
457
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
458
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
459
+ def patch_folder_mute_config(name, google_cloud_securitycenter_v1_mute_config_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
460
+ command = make_simple_command(:patch, 'v1/{+name}', options)
461
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
462
+ command.request_object = google_cloud_securitycenter_v1_mute_config_object
463
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
464
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
465
+ command.params['name'] = name unless name.nil?
466
+ command.query['updateMask'] = update_mask unless update_mask.nil?
467
+ command.query['fields'] = fields unless fields.nil?
468
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
469
+ execute_or_queue_command(command, &block)
470
+ end
471
+
250
472
  # Lists all sources belonging to an organization.
251
473
  # @param [String] parent
252
474
  # Required. Resource name of the parent of sources to list. Its format should be
@@ -486,6 +708,43 @@ module Google
486
708
  execute_or_queue_command(command, &block)
487
709
  end
488
710
 
711
+ # Updates the mute state of a finding.
712
+ # @param [String] name
713
+ # Required. The relative resource name of the finding. See: https://cloud.google.
714
+ # com/apis/design/resource_names#relative_resource_name Example: "organizations/`
715
+ # organization_id`/sources/`source_id`/finding/`finding_id`", "folders/`
716
+ # folder_id`/sources/`source_id`/finding/`finding_id`", "projects/`project_id`/
717
+ # sources/`source_id`/finding/`finding_id`".
718
+ # @param [Google::Apis::SecuritycenterV1::SetMuteRequest] set_mute_request_object
719
+ # @param [String] fields
720
+ # Selector specifying which fields to include in a partial response.
721
+ # @param [String] quota_user
722
+ # Available to use for quota purposes for server-side applications. Can be any
723
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
724
+ # @param [Google::Apis::RequestOptions] options
725
+ # Request-specific options
726
+ #
727
+ # @yield [result, err] Result & error if block supplied
728
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Finding] parsed result object
729
+ # @yieldparam err [StandardError] error object if request failed
730
+ #
731
+ # @return [Google::Apis::SecuritycenterV1::Finding]
732
+ #
733
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
734
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
735
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
736
+ def set_folder_source_finding_mute(name, set_mute_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
737
+ command = make_simple_command(:post, 'v1/{+name}:setMute', options)
738
+ command.request_representation = Google::Apis::SecuritycenterV1::SetMuteRequest::Representation
739
+ command.request_object = set_mute_request_object
740
+ command.response_representation = Google::Apis::SecuritycenterV1::Finding::Representation
741
+ command.response_class = Google::Apis::SecuritycenterV1::Finding
742
+ command.params['name'] = name unless name.nil?
743
+ command.query['fields'] = fields unless fields.nil?
744
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
745
+ execute_or_queue_command(command, &block)
746
+ end
747
+
489
748
  # Updates the state of a finding.
490
749
  # @param [String] name
491
750
  # Required. The relative resource name of the finding. See: https://cloud.google.
@@ -531,7 +790,8 @@ module Google
531
790
  # @param [String] start_time
532
791
  # The time at which the updated SecurityMarks take effect. If not set uses
533
792
  # current server time. Updates will be applied to the SecurityMarks that are
534
- # active immediately preceding this time.
793
+ # active immediately preceding this time. Must be smaller or equal to the server
794
+ # time.
535
795
  # @param [String] update_mask
536
796
  # The FieldMask to use when updating the security marks resource. The field mask
537
797
  # must not contain duplicate fields. If empty or set to "marks", all marks will
@@ -567,6 +827,46 @@ module Google
567
827
  execute_or_queue_command(command, &block)
568
828
  end
569
829
 
830
+ # Updates external system. This is for a given finding.
831
+ # @param [String] name
832
+ # External System Name e.g. jira, demisto, etc. e.g.: organizations/1234/sources/
833
+ # 5678/findings/123456/externalSystems/jira folders/1234/sources/5678/findings/
834
+ # 123456/externalSystems/jira projects/1234/sources/5678/findings/123456/
835
+ # externalSystems/jira
836
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem] google_cloud_securitycenter_v1_external_system_object
837
+ # @param [String] update_mask
838
+ # The FieldMask to use when updating the external system resource. If empty all
839
+ # mutable fields will be updated.
840
+ # @param [String] fields
841
+ # Selector specifying which fields to include in a partial response.
842
+ # @param [String] quota_user
843
+ # Available to use for quota purposes for server-side applications. Can be any
844
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
845
+ # @param [Google::Apis::RequestOptions] options
846
+ # Request-specific options
847
+ #
848
+ # @yield [result, err] Result & error if block supplied
849
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem] parsed result object
850
+ # @yieldparam err [StandardError] error object if request failed
851
+ #
852
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem]
853
+ #
854
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
855
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
856
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
857
+ def patch_folder_source_finding_external_system(name, google_cloud_securitycenter_v1_external_system_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
858
+ command = make_simple_command(:patch, 'v1/{+name}', options)
859
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem::Representation
860
+ command.request_object = google_cloud_securitycenter_v1_external_system_object
861
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem::Representation
862
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem
863
+ command.params['name'] = name unless name.nil?
864
+ command.query['updateMask'] = update_mask unless update_mask.nil?
865
+ command.query['fields'] = fields unless fields.nil?
866
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
867
+ execute_or_queue_command(command, &block)
868
+ end
869
+
570
870
  # Gets the settings for an organization.
571
871
  # @param [String] name
572
872
  # Required. Name of the organization to get organization settings for. Its
@@ -834,7 +1134,8 @@ module Google
834
1134
  # @param [String] start_time
835
1135
  # The time at which the updated SecurityMarks take effect. If not set uses
836
1136
  # current server time. Updates will be applied to the SecurityMarks that are
837
- # active immediately preceding this time.
1137
+ # active immediately preceding this time. Must be smaller or equal to the server
1138
+ # time.
838
1139
  # @param [String] update_mask
839
1140
  # The FieldMask to use when updating the security marks resource. The field mask
840
1141
  # must not contain duplicate fields. If empty or set to "marks", all marks will
@@ -870,15 +1171,14 @@ module Google
870
1171
  execute_or_queue_command(command, &block)
871
1172
  end
872
1173
 
873
- # Creates a notification config.
1174
+ # Kicks off an LRO to bulk mute findings for a parent based on a filter. The
1175
+ # parent can be either an organization, folder or project. The findings matched
1176
+ # by the filter will be muted after the LRO is done.
874
1177
  # @param [String] parent
875
- # Required. Resource name of the new notification config's parent. Its format is
876
- # "organizations/[organization_id]".
877
- # @param [Google::Apis::SecuritycenterV1::NotificationConfig] notification_config_object
878
- # @param [String] config_id
879
- # Required. Unique identifier provided by the client within the parent scope. It
880
- # must be between 1 and 128 characters, and contains alphanumeric characters,
881
- # underscores or hyphens only.
1178
+ # Required. The parent, at which bulk action needs to be applied. Its format is "
1179
+ # organizations/[organization_id]", "folders/[folder_id]", "projects/[project_id]
1180
+ # ".
1181
+ # @param [Google::Apis::SecuritycenterV1::BulkMuteFindingsRequest] bulk_mute_findings_request_object
882
1182
  # @param [String] fields
883
1183
  # Selector specifying which fields to include in a partial response.
884
1184
  # @param [String] quota_user
@@ -888,31 +1188,36 @@ module Google
888
1188
  # Request-specific options
889
1189
  #
890
1190
  # @yield [result, err] Result & error if block supplied
891
- # @yieldparam result [Google::Apis::SecuritycenterV1::NotificationConfig] parsed result object
1191
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Operation] parsed result object
892
1192
  # @yieldparam err [StandardError] error object if request failed
893
1193
  #
894
- # @return [Google::Apis::SecuritycenterV1::NotificationConfig]
1194
+ # @return [Google::Apis::SecuritycenterV1::Operation]
895
1195
  #
896
1196
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
897
1197
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
898
1198
  # @raise [Google::Apis::AuthorizationError] Authorization is required
899
- def create_organization_notification_config(parent, notification_config_object = nil, config_id: nil, fields: nil, quota_user: nil, options: nil, &block)
900
- command = make_simple_command(:post, 'v1/{+parent}/notificationConfigs', options)
901
- command.request_representation = Google::Apis::SecuritycenterV1::NotificationConfig::Representation
902
- command.request_object = notification_config_object
903
- command.response_representation = Google::Apis::SecuritycenterV1::NotificationConfig::Representation
904
- command.response_class = Google::Apis::SecuritycenterV1::NotificationConfig
1199
+ def bulk_organization_finding_mute(parent, bulk_mute_findings_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
1200
+ command = make_simple_command(:post, 'v1/{+parent}/findings:bulkMute', options)
1201
+ command.request_representation = Google::Apis::SecuritycenterV1::BulkMuteFindingsRequest::Representation
1202
+ command.request_object = bulk_mute_findings_request_object
1203
+ command.response_representation = Google::Apis::SecuritycenterV1::Operation::Representation
1204
+ command.response_class = Google::Apis::SecuritycenterV1::Operation
905
1205
  command.params['parent'] = parent unless parent.nil?
906
- command.query['configId'] = config_id unless config_id.nil?
907
1206
  command.query['fields'] = fields unless fields.nil?
908
1207
  command.query['quotaUser'] = quota_user unless quota_user.nil?
909
1208
  execute_or_queue_command(command, &block)
910
1209
  end
911
1210
 
912
- # Deletes a notification config.
913
- # @param [String] name
914
- # Required. Name of the notification config to delete. Its format is "
915
- # organizations/[organization_id]/notificationConfigs/[config_id]".
1211
+ # Creates a mute config.
1212
+ # @param [String] parent
1213
+ # Required. Resource name of the new mute configs's parent. Its format is "
1214
+ # organizations/[organization_id]", "folders/[folder_id]", or "projects/[
1215
+ # project_id]".
1216
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] google_cloud_securitycenter_v1_mute_config_object
1217
+ # @param [String] mute_config_id
1218
+ # Required. Unique identifier provided by the client within the parent scope. It
1219
+ # must consist of lower case letters, numbers, and hyphen, with the first
1220
+ # character a letter, the last a letter or a number, and a 63 character maximum.
916
1221
  # @param [String] fields
917
1222
  # Selector specifying which fields to include in a partial response.
918
1223
  # @param [String] quota_user
@@ -922,28 +1227,32 @@ module Google
922
1227
  # Request-specific options
923
1228
  #
924
1229
  # @yield [result, err] Result & error if block supplied
925
- # @yieldparam result [Google::Apis::SecuritycenterV1::Empty] parsed result object
1230
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
926
1231
  # @yieldparam err [StandardError] error object if request failed
927
1232
  #
928
- # @return [Google::Apis::SecuritycenterV1::Empty]
1233
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
929
1234
  #
930
1235
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
931
1236
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
932
1237
  # @raise [Google::Apis::AuthorizationError] Authorization is required
933
- def delete_organization_notification_config(name, fields: nil, quota_user: nil, options: nil, &block)
934
- command = make_simple_command(:delete, 'v1/{+name}', options)
935
- command.response_representation = Google::Apis::SecuritycenterV1::Empty::Representation
936
- command.response_class = Google::Apis::SecuritycenterV1::Empty
937
- command.params['name'] = name unless name.nil?
1238
+ def create_organization_mute_config(parent, google_cloud_securitycenter_v1_mute_config_object = nil, mute_config_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1239
+ command = make_simple_command(:post, 'v1/{+parent}/muteConfigs', options)
1240
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
1241
+ command.request_object = google_cloud_securitycenter_v1_mute_config_object
1242
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
1243
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
1244
+ command.params['parent'] = parent unless parent.nil?
1245
+ command.query['muteConfigId'] = mute_config_id unless mute_config_id.nil?
938
1246
  command.query['fields'] = fields unless fields.nil?
939
1247
  command.query['quotaUser'] = quota_user unless quota_user.nil?
940
1248
  execute_or_queue_command(command, &block)
941
1249
  end
942
1250
 
943
- # Gets a notification config.
1251
+ # Deletes an existing mute config.
944
1252
  # @param [String] name
945
- # Required. Name of the notification config to get. Its format is "organizations/
946
- # [organization_id]/notificationConfigs/[config_id]".
1253
+ # Required. Name of the mute config to delete. Its format is organizations/`
1254
+ # organization`/muteConfigs/`config_id`, folders/`folder`/muteConfigs/`config_id`
1255
+ # , or projects/`project`/muteConfigs/`config_id`
947
1256
  # @param [String] fields
948
1257
  # Selector specifying which fields to include in a partial response.
949
1258
  # @param [String] quota_user
@@ -953,25 +1262,238 @@ module Google
953
1262
  # Request-specific options
954
1263
  #
955
1264
  # @yield [result, err] Result & error if block supplied
956
- # @yieldparam result [Google::Apis::SecuritycenterV1::NotificationConfig] parsed result object
1265
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Empty] parsed result object
957
1266
  # @yieldparam err [StandardError] error object if request failed
958
1267
  #
959
- # @return [Google::Apis::SecuritycenterV1::NotificationConfig]
1268
+ # @return [Google::Apis::SecuritycenterV1::Empty]
960
1269
  #
961
1270
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
962
1271
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
963
1272
  # @raise [Google::Apis::AuthorizationError] Authorization is required
964
- def get_organization_notification_config(name, fields: nil, quota_user: nil, options: nil, &block)
965
- command = make_simple_command(:get, 'v1/{+name}', options)
966
- command.response_representation = Google::Apis::SecuritycenterV1::NotificationConfig::Representation
967
- command.response_class = Google::Apis::SecuritycenterV1::NotificationConfig
1273
+ def delete_organization_mute_config(name, fields: nil, quota_user: nil, options: nil, &block)
1274
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1275
+ command.response_representation = Google::Apis::SecuritycenterV1::Empty::Representation
1276
+ command.response_class = Google::Apis::SecuritycenterV1::Empty
968
1277
  command.params['name'] = name unless name.nil?
969
1278
  command.query['fields'] = fields unless fields.nil?
970
1279
  command.query['quotaUser'] = quota_user unless quota_user.nil?
971
1280
  execute_or_queue_command(command, &block)
972
1281
  end
973
1282
 
974
- # Lists notification configs.
1283
+ # Gets a mute config.
1284
+ # @param [String] name
1285
+ # Required. Name of the mute config to retrieve. Its format is organizations/`
1286
+ # organization`/muteConfigs/`config_id`, folders/`folder`/muteConfigs/`config_id`
1287
+ # , or projects/`project`/muteConfigs/`config_id`
1288
+ # @param [String] fields
1289
+ # Selector specifying which fields to include in a partial response.
1290
+ # @param [String] quota_user
1291
+ # Available to use for quota purposes for server-side applications. Can be any
1292
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1293
+ # @param [Google::Apis::RequestOptions] options
1294
+ # Request-specific options
1295
+ #
1296
+ # @yield [result, err] Result & error if block supplied
1297
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
1298
+ # @yieldparam err [StandardError] error object if request failed
1299
+ #
1300
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
1301
+ #
1302
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1303
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1304
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1305
+ def get_organization_mute_config(name, fields: nil, quota_user: nil, options: nil, &block)
1306
+ command = make_simple_command(:get, 'v1/{+name}', options)
1307
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
1308
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
1309
+ command.params['name'] = name unless name.nil?
1310
+ command.query['fields'] = fields unless fields.nil?
1311
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1312
+ execute_or_queue_command(command, &block)
1313
+ end
1314
+
1315
+ # Lists mute configs.
1316
+ # @param [String] parent
1317
+ # Required. The parent, which owns the collection of mute configs. Its format is
1318
+ # "organizations/[organization_id]", "folders/[folder_id]", "projects/[
1319
+ # project_id]".
1320
+ # @param [Fixnum] page_size
1321
+ # The maximum number of configs to return. The service may return fewer than
1322
+ # this value. If unspecified, at most 10 configs will be returned. The maximum
1323
+ # value is 1000; values above 1000 will be coerced to 1000.
1324
+ # @param [String] page_token
1325
+ # A page token, received from a previous `ListMuteConfigs` call. Provide this to
1326
+ # retrieve the subsequent page. When paginating, all other parameters provided
1327
+ # to `ListMuteConfigs` must match the call that provided the page token.
1328
+ # @param [String] fields
1329
+ # Selector specifying which fields to include in a partial response.
1330
+ # @param [String] quota_user
1331
+ # Available to use for quota purposes for server-side applications. Can be any
1332
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1333
+ # @param [Google::Apis::RequestOptions] options
1334
+ # Request-specific options
1335
+ #
1336
+ # @yield [result, err] Result & error if block supplied
1337
+ # @yieldparam result [Google::Apis::SecuritycenterV1::ListMuteConfigsResponse] parsed result object
1338
+ # @yieldparam err [StandardError] error object if request failed
1339
+ #
1340
+ # @return [Google::Apis::SecuritycenterV1::ListMuteConfigsResponse]
1341
+ #
1342
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1343
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1344
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1345
+ def list_organization_mute_configs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
1346
+ command = make_simple_command(:get, 'v1/{+parent}/muteConfigs', options)
1347
+ command.response_representation = Google::Apis::SecuritycenterV1::ListMuteConfigsResponse::Representation
1348
+ command.response_class = Google::Apis::SecuritycenterV1::ListMuteConfigsResponse
1349
+ command.params['parent'] = parent unless parent.nil?
1350
+ command.query['pageSize'] = page_size unless page_size.nil?
1351
+ command.query['pageToken'] = page_token unless page_token.nil?
1352
+ command.query['fields'] = fields unless fields.nil?
1353
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1354
+ execute_or_queue_command(command, &block)
1355
+ end
1356
+
1357
+ # Updates a mute config.
1358
+ # @param [String] name
1359
+ # This field will be ignored if provided on config creation. Format "
1360
+ # organizations/`organization`/muteConfigs/`mute_config`" "folders/`folder`/
1361
+ # muteConfigs/`mute_config`" "projects/`project`/muteConfigs/`mute_config`"
1362
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] google_cloud_securitycenter_v1_mute_config_object
1363
+ # @param [String] update_mask
1364
+ # The list of fields to be updated. If empty all mutable fields will be updated.
1365
+ # @param [String] fields
1366
+ # Selector specifying which fields to include in a partial response.
1367
+ # @param [String] quota_user
1368
+ # Available to use for quota purposes for server-side applications. Can be any
1369
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1370
+ # @param [Google::Apis::RequestOptions] options
1371
+ # Request-specific options
1372
+ #
1373
+ # @yield [result, err] Result & error if block supplied
1374
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
1375
+ # @yieldparam err [StandardError] error object if request failed
1376
+ #
1377
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
1378
+ #
1379
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1380
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1381
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1382
+ def patch_organization_mute_config(name, google_cloud_securitycenter_v1_mute_config_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
1383
+ command = make_simple_command(:patch, 'v1/{+name}', options)
1384
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
1385
+ command.request_object = google_cloud_securitycenter_v1_mute_config_object
1386
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
1387
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
1388
+ command.params['name'] = name unless name.nil?
1389
+ command.query['updateMask'] = update_mask unless update_mask.nil?
1390
+ command.query['fields'] = fields unless fields.nil?
1391
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1392
+ execute_or_queue_command(command, &block)
1393
+ end
1394
+
1395
+ # Creates a notification config.
1396
+ # @param [String] parent
1397
+ # Required. Resource name of the new notification config's parent. Its format is
1398
+ # "organizations/[organization_id]".
1399
+ # @param [Google::Apis::SecuritycenterV1::NotificationConfig] notification_config_object
1400
+ # @param [String] config_id
1401
+ # Required. Unique identifier provided by the client within the parent scope. It
1402
+ # must be between 1 and 128 characters, and contains alphanumeric characters,
1403
+ # underscores or hyphens only.
1404
+ # @param [String] fields
1405
+ # Selector specifying which fields to include in a partial response.
1406
+ # @param [String] quota_user
1407
+ # Available to use for quota purposes for server-side applications. Can be any
1408
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1409
+ # @param [Google::Apis::RequestOptions] options
1410
+ # Request-specific options
1411
+ #
1412
+ # @yield [result, err] Result & error if block supplied
1413
+ # @yieldparam result [Google::Apis::SecuritycenterV1::NotificationConfig] parsed result object
1414
+ # @yieldparam err [StandardError] error object if request failed
1415
+ #
1416
+ # @return [Google::Apis::SecuritycenterV1::NotificationConfig]
1417
+ #
1418
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1419
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1420
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1421
+ def create_organization_notification_config(parent, notification_config_object = nil, config_id: nil, fields: nil, quota_user: nil, options: nil, &block)
1422
+ command = make_simple_command(:post, 'v1/{+parent}/notificationConfigs', options)
1423
+ command.request_representation = Google::Apis::SecuritycenterV1::NotificationConfig::Representation
1424
+ command.request_object = notification_config_object
1425
+ command.response_representation = Google::Apis::SecuritycenterV1::NotificationConfig::Representation
1426
+ command.response_class = Google::Apis::SecuritycenterV1::NotificationConfig
1427
+ command.params['parent'] = parent unless parent.nil?
1428
+ command.query['configId'] = config_id unless config_id.nil?
1429
+ command.query['fields'] = fields unless fields.nil?
1430
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1431
+ execute_or_queue_command(command, &block)
1432
+ end
1433
+
1434
+ # Deletes a notification config.
1435
+ # @param [String] name
1436
+ # Required. Name of the notification config to delete. Its format is "
1437
+ # organizations/[organization_id]/notificationConfigs/[config_id]".
1438
+ # @param [String] fields
1439
+ # Selector specifying which fields to include in a partial response.
1440
+ # @param [String] quota_user
1441
+ # Available to use for quota purposes for server-side applications. Can be any
1442
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1443
+ # @param [Google::Apis::RequestOptions] options
1444
+ # Request-specific options
1445
+ #
1446
+ # @yield [result, err] Result & error if block supplied
1447
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Empty] parsed result object
1448
+ # @yieldparam err [StandardError] error object if request failed
1449
+ #
1450
+ # @return [Google::Apis::SecuritycenterV1::Empty]
1451
+ #
1452
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1453
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1454
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1455
+ def delete_organization_notification_config(name, fields: nil, quota_user: nil, options: nil, &block)
1456
+ command = make_simple_command(:delete, 'v1/{+name}', options)
1457
+ command.response_representation = Google::Apis::SecuritycenterV1::Empty::Representation
1458
+ command.response_class = Google::Apis::SecuritycenterV1::Empty
1459
+ command.params['name'] = name unless name.nil?
1460
+ command.query['fields'] = fields unless fields.nil?
1461
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1462
+ execute_or_queue_command(command, &block)
1463
+ end
1464
+
1465
+ # Gets a notification config.
1466
+ # @param [String] name
1467
+ # Required. Name of the notification config to get. Its format is "organizations/
1468
+ # [organization_id]/notificationConfigs/[config_id]".
1469
+ # @param [String] fields
1470
+ # Selector specifying which fields to include in a partial response.
1471
+ # @param [String] quota_user
1472
+ # Available to use for quota purposes for server-side applications. Can be any
1473
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
1474
+ # @param [Google::Apis::RequestOptions] options
1475
+ # Request-specific options
1476
+ #
1477
+ # @yield [result, err] Result & error if block supplied
1478
+ # @yieldparam result [Google::Apis::SecuritycenterV1::NotificationConfig] parsed result object
1479
+ # @yieldparam err [StandardError] error object if request failed
1480
+ #
1481
+ # @return [Google::Apis::SecuritycenterV1::NotificationConfig]
1482
+ #
1483
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
1484
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
1485
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
1486
+ def get_organization_notification_config(name, fields: nil, quota_user: nil, options: nil, &block)
1487
+ command = make_simple_command(:get, 'v1/{+name}', options)
1488
+ command.response_representation = Google::Apis::SecuritycenterV1::NotificationConfig::Representation
1489
+ command.response_class = Google::Apis::SecuritycenterV1::NotificationConfig
1490
+ command.params['name'] = name unless name.nil?
1491
+ command.query['fields'] = fields unless fields.nil?
1492
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
1493
+ execute_or_queue_command(command, &block)
1494
+ end
1495
+
1496
+ # Lists notification configs.
975
1497
  # @param [String] parent
976
1498
  # Required. Name of the organization to list notification configs. Its format is
977
1499
  # "organizations/[organization_id]".
@@ -1683,6 +2205,43 @@ module Google
1683
2205
  execute_or_queue_command(command, &block)
1684
2206
  end
1685
2207
 
2208
+ # Updates the mute state of a finding.
2209
+ # @param [String] name
2210
+ # Required. The relative resource name of the finding. See: https://cloud.google.
2211
+ # com/apis/design/resource_names#relative_resource_name Example: "organizations/`
2212
+ # organization_id`/sources/`source_id`/finding/`finding_id`", "folders/`
2213
+ # folder_id`/sources/`source_id`/finding/`finding_id`", "projects/`project_id`/
2214
+ # sources/`source_id`/finding/`finding_id`".
2215
+ # @param [Google::Apis::SecuritycenterV1::SetMuteRequest] set_mute_request_object
2216
+ # @param [String] fields
2217
+ # Selector specifying which fields to include in a partial response.
2218
+ # @param [String] quota_user
2219
+ # Available to use for quota purposes for server-side applications. Can be any
2220
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2221
+ # @param [Google::Apis::RequestOptions] options
2222
+ # Request-specific options
2223
+ #
2224
+ # @yield [result, err] Result & error if block supplied
2225
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Finding] parsed result object
2226
+ # @yieldparam err [StandardError] error object if request failed
2227
+ #
2228
+ # @return [Google::Apis::SecuritycenterV1::Finding]
2229
+ #
2230
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2231
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2232
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2233
+ def set_organization_source_finding_mute(name, set_mute_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2234
+ command = make_simple_command(:post, 'v1/{+name}:setMute', options)
2235
+ command.request_representation = Google::Apis::SecuritycenterV1::SetMuteRequest::Representation
2236
+ command.request_object = set_mute_request_object
2237
+ command.response_representation = Google::Apis::SecuritycenterV1::Finding::Representation
2238
+ command.response_class = Google::Apis::SecuritycenterV1::Finding
2239
+ command.params['name'] = name unless name.nil?
2240
+ command.query['fields'] = fields unless fields.nil?
2241
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2242
+ execute_or_queue_command(command, &block)
2243
+ end
2244
+
1686
2245
  # Updates the state of a finding.
1687
2246
  # @param [String] name
1688
2247
  # Required. The relative resource name of the finding. See: https://cloud.google.
@@ -1728,7 +2287,8 @@ module Google
1728
2287
  # @param [String] start_time
1729
2288
  # The time at which the updated SecurityMarks take effect. If not set uses
1730
2289
  # current server time. Updates will be applied to the SecurityMarks that are
1731
- # active immediately preceding this time.
2290
+ # active immediately preceding this time. Must be smaller or equal to the server
2291
+ # time.
1732
2292
  # @param [String] update_mask
1733
2293
  # The FieldMask to use when updating the security marks resource. The field mask
1734
2294
  # must not contain duplicate fields. If empty or set to "marks", all marks will
@@ -1764,6 +2324,46 @@ module Google
1764
2324
  execute_or_queue_command(command, &block)
1765
2325
  end
1766
2326
 
2327
+ # Updates external system. This is for a given finding.
2328
+ # @param [String] name
2329
+ # External System Name e.g. jira, demisto, etc. e.g.: organizations/1234/sources/
2330
+ # 5678/findings/123456/externalSystems/jira folders/1234/sources/5678/findings/
2331
+ # 123456/externalSystems/jira projects/1234/sources/5678/findings/123456/
2332
+ # externalSystems/jira
2333
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem] google_cloud_securitycenter_v1_external_system_object
2334
+ # @param [String] update_mask
2335
+ # The FieldMask to use when updating the external system resource. If empty all
2336
+ # mutable fields will be updated.
2337
+ # @param [String] fields
2338
+ # Selector specifying which fields to include in a partial response.
2339
+ # @param [String] quota_user
2340
+ # Available to use for quota purposes for server-side applications. Can be any
2341
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2342
+ # @param [Google::Apis::RequestOptions] options
2343
+ # Request-specific options
2344
+ #
2345
+ # @yield [result, err] Result & error if block supplied
2346
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem] parsed result object
2347
+ # @yieldparam err [StandardError] error object if request failed
2348
+ #
2349
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem]
2350
+ #
2351
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2352
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2353
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2354
+ def patch_organization_source_finding_external_system(name, google_cloud_securitycenter_v1_external_system_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
2355
+ command = make_simple_command(:patch, 'v1/{+name}', options)
2356
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem::Representation
2357
+ command.request_object = google_cloud_securitycenter_v1_external_system_object
2358
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem::Representation
2359
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem
2360
+ command.params['name'] = name unless name.nil?
2361
+ command.query['updateMask'] = update_mask unless update_mask.nil?
2362
+ command.query['fields'] = fields unless fields.nil?
2363
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2364
+ execute_or_queue_command(command, &block)
2365
+ end
2366
+
1767
2367
  # Filters an organization's assets and groups them by their specified properties.
1768
2368
  # @param [String] parent
1769
2369
  # Required. Name of the organization to groupBy. Its format is "organizations/[
@@ -1925,7 +2525,8 @@ module Google
1925
2525
  # @param [String] start_time
1926
2526
  # The time at which the updated SecurityMarks take effect. If not set uses
1927
2527
  # current server time. Updates will be applied to the SecurityMarks that are
1928
- # active immediately preceding this time.
2528
+ # active immediately preceding this time. Must be smaller or equal to the server
2529
+ # time.
1929
2530
  # @param [String] update_mask
1930
2531
  # The FieldMask to use when updating the security marks resource. The field mask
1931
2532
  # must not contain duplicate fields. If empty or set to "marks", all marks will
@@ -1961,6 +2562,227 @@ module Google
1961
2562
  execute_or_queue_command(command, &block)
1962
2563
  end
1963
2564
 
2565
+ # Kicks off an LRO to bulk mute findings for a parent based on a filter. The
2566
+ # parent can be either an organization, folder or project. The findings matched
2567
+ # by the filter will be muted after the LRO is done.
2568
+ # @param [String] parent
2569
+ # Required. The parent, at which bulk action needs to be applied. Its format is "
2570
+ # organizations/[organization_id]", "folders/[folder_id]", "projects/[project_id]
2571
+ # ".
2572
+ # @param [Google::Apis::SecuritycenterV1::BulkMuteFindingsRequest] bulk_mute_findings_request_object
2573
+ # @param [String] fields
2574
+ # Selector specifying which fields to include in a partial response.
2575
+ # @param [String] quota_user
2576
+ # Available to use for quota purposes for server-side applications. Can be any
2577
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2578
+ # @param [Google::Apis::RequestOptions] options
2579
+ # Request-specific options
2580
+ #
2581
+ # @yield [result, err] Result & error if block supplied
2582
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Operation] parsed result object
2583
+ # @yieldparam err [StandardError] error object if request failed
2584
+ #
2585
+ # @return [Google::Apis::SecuritycenterV1::Operation]
2586
+ #
2587
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2588
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2589
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2590
+ def bulk_project_finding_mute(parent, bulk_mute_findings_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
2591
+ command = make_simple_command(:post, 'v1/{+parent}/findings:bulkMute', options)
2592
+ command.request_representation = Google::Apis::SecuritycenterV1::BulkMuteFindingsRequest::Representation
2593
+ command.request_object = bulk_mute_findings_request_object
2594
+ command.response_representation = Google::Apis::SecuritycenterV1::Operation::Representation
2595
+ command.response_class = Google::Apis::SecuritycenterV1::Operation
2596
+ command.params['parent'] = parent unless parent.nil?
2597
+ command.query['fields'] = fields unless fields.nil?
2598
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2599
+ execute_or_queue_command(command, &block)
2600
+ end
2601
+
2602
+ # Creates a mute config.
2603
+ # @param [String] parent
2604
+ # Required. Resource name of the new mute configs's parent. Its format is "
2605
+ # organizations/[organization_id]", "folders/[folder_id]", or "projects/[
2606
+ # project_id]".
2607
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] google_cloud_securitycenter_v1_mute_config_object
2608
+ # @param [String] mute_config_id
2609
+ # Required. Unique identifier provided by the client within the parent scope. It
2610
+ # must consist of lower case letters, numbers, and hyphen, with the first
2611
+ # character a letter, the last a letter or a number, and a 63 character maximum.
2612
+ # @param [String] fields
2613
+ # Selector specifying which fields to include in a partial response.
2614
+ # @param [String] quota_user
2615
+ # Available to use for quota purposes for server-side applications. Can be any
2616
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2617
+ # @param [Google::Apis::RequestOptions] options
2618
+ # Request-specific options
2619
+ #
2620
+ # @yield [result, err] Result & error if block supplied
2621
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
2622
+ # @yieldparam err [StandardError] error object if request failed
2623
+ #
2624
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
2625
+ #
2626
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2627
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2628
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2629
+ def create_project_mute_config(parent, google_cloud_securitycenter_v1_mute_config_object = nil, mute_config_id: nil, fields: nil, quota_user: nil, options: nil, &block)
2630
+ command = make_simple_command(:post, 'v1/{+parent}/muteConfigs', options)
2631
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
2632
+ command.request_object = google_cloud_securitycenter_v1_mute_config_object
2633
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
2634
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
2635
+ command.params['parent'] = parent unless parent.nil?
2636
+ command.query['muteConfigId'] = mute_config_id unless mute_config_id.nil?
2637
+ command.query['fields'] = fields unless fields.nil?
2638
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2639
+ execute_or_queue_command(command, &block)
2640
+ end
2641
+
2642
+ # Deletes an existing mute config.
2643
+ # @param [String] name
2644
+ # Required. Name of the mute config to delete. Its format is organizations/`
2645
+ # organization`/muteConfigs/`config_id`, folders/`folder`/muteConfigs/`config_id`
2646
+ # , or projects/`project`/muteConfigs/`config_id`
2647
+ # @param [String] fields
2648
+ # Selector specifying which fields to include in a partial response.
2649
+ # @param [String] quota_user
2650
+ # Available to use for quota purposes for server-side applications. Can be any
2651
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2652
+ # @param [Google::Apis::RequestOptions] options
2653
+ # Request-specific options
2654
+ #
2655
+ # @yield [result, err] Result & error if block supplied
2656
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Empty] parsed result object
2657
+ # @yieldparam err [StandardError] error object if request failed
2658
+ #
2659
+ # @return [Google::Apis::SecuritycenterV1::Empty]
2660
+ #
2661
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2662
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2663
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2664
+ def delete_project_mute_config(name, fields: nil, quota_user: nil, options: nil, &block)
2665
+ command = make_simple_command(:delete, 'v1/{+name}', options)
2666
+ command.response_representation = Google::Apis::SecuritycenterV1::Empty::Representation
2667
+ command.response_class = Google::Apis::SecuritycenterV1::Empty
2668
+ command.params['name'] = name unless name.nil?
2669
+ command.query['fields'] = fields unless fields.nil?
2670
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2671
+ execute_or_queue_command(command, &block)
2672
+ end
2673
+
2674
+ # Gets a mute config.
2675
+ # @param [String] name
2676
+ # Required. Name of the mute config to retrieve. Its format is organizations/`
2677
+ # organization`/muteConfigs/`config_id`, folders/`folder`/muteConfigs/`config_id`
2678
+ # , or projects/`project`/muteConfigs/`config_id`
2679
+ # @param [String] fields
2680
+ # Selector specifying which fields to include in a partial response.
2681
+ # @param [String] quota_user
2682
+ # Available to use for quota purposes for server-side applications. Can be any
2683
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2684
+ # @param [Google::Apis::RequestOptions] options
2685
+ # Request-specific options
2686
+ #
2687
+ # @yield [result, err] Result & error if block supplied
2688
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
2689
+ # @yieldparam err [StandardError] error object if request failed
2690
+ #
2691
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
2692
+ #
2693
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2694
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2695
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2696
+ def get_project_mute_config(name, fields: nil, quota_user: nil, options: nil, &block)
2697
+ command = make_simple_command(:get, 'v1/{+name}', options)
2698
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
2699
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
2700
+ command.params['name'] = name unless name.nil?
2701
+ command.query['fields'] = fields unless fields.nil?
2702
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2703
+ execute_or_queue_command(command, &block)
2704
+ end
2705
+
2706
+ # Lists mute configs.
2707
+ # @param [String] parent
2708
+ # Required. The parent, which owns the collection of mute configs. Its format is
2709
+ # "organizations/[organization_id]", "folders/[folder_id]", "projects/[
2710
+ # project_id]".
2711
+ # @param [Fixnum] page_size
2712
+ # The maximum number of configs to return. The service may return fewer than
2713
+ # this value. If unspecified, at most 10 configs will be returned. The maximum
2714
+ # value is 1000; values above 1000 will be coerced to 1000.
2715
+ # @param [String] page_token
2716
+ # A page token, received from a previous `ListMuteConfigs` call. Provide this to
2717
+ # retrieve the subsequent page. When paginating, all other parameters provided
2718
+ # to `ListMuteConfigs` must match the call that provided the page token.
2719
+ # @param [String] fields
2720
+ # Selector specifying which fields to include in a partial response.
2721
+ # @param [String] quota_user
2722
+ # Available to use for quota purposes for server-side applications. Can be any
2723
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2724
+ # @param [Google::Apis::RequestOptions] options
2725
+ # Request-specific options
2726
+ #
2727
+ # @yield [result, err] Result & error if block supplied
2728
+ # @yieldparam result [Google::Apis::SecuritycenterV1::ListMuteConfigsResponse] parsed result object
2729
+ # @yieldparam err [StandardError] error object if request failed
2730
+ #
2731
+ # @return [Google::Apis::SecuritycenterV1::ListMuteConfigsResponse]
2732
+ #
2733
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2734
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2735
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2736
+ def list_project_mute_configs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
2737
+ command = make_simple_command(:get, 'v1/{+parent}/muteConfigs', options)
2738
+ command.response_representation = Google::Apis::SecuritycenterV1::ListMuteConfigsResponse::Representation
2739
+ command.response_class = Google::Apis::SecuritycenterV1::ListMuteConfigsResponse
2740
+ command.params['parent'] = parent unless parent.nil?
2741
+ command.query['pageSize'] = page_size unless page_size.nil?
2742
+ command.query['pageToken'] = page_token unless page_token.nil?
2743
+ command.query['fields'] = fields unless fields.nil?
2744
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2745
+ execute_or_queue_command(command, &block)
2746
+ end
2747
+
2748
+ # Updates a mute config.
2749
+ # @param [String] name
2750
+ # This field will be ignored if provided on config creation. Format "
2751
+ # organizations/`organization`/muteConfigs/`mute_config`" "folders/`folder`/
2752
+ # muteConfigs/`mute_config`" "projects/`project`/muteConfigs/`mute_config`"
2753
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] google_cloud_securitycenter_v1_mute_config_object
2754
+ # @param [String] update_mask
2755
+ # The list of fields to be updated. If empty all mutable fields will be updated.
2756
+ # @param [String] fields
2757
+ # Selector specifying which fields to include in a partial response.
2758
+ # @param [String] quota_user
2759
+ # Available to use for quota purposes for server-side applications. Can be any
2760
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2761
+ # @param [Google::Apis::RequestOptions] options
2762
+ # Request-specific options
2763
+ #
2764
+ # @yield [result, err] Result & error if block supplied
2765
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig] parsed result object
2766
+ # @yieldparam err [StandardError] error object if request failed
2767
+ #
2768
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig]
2769
+ #
2770
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2771
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2772
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2773
+ def patch_project_mute_config(name, google_cloud_securitycenter_v1_mute_config_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
2774
+ command = make_simple_command(:patch, 'v1/{+name}', options)
2775
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
2776
+ command.request_object = google_cloud_securitycenter_v1_mute_config_object
2777
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig::Representation
2778
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1MuteConfig
2779
+ command.params['name'] = name unless name.nil?
2780
+ command.query['updateMask'] = update_mask unless update_mask.nil?
2781
+ command.query['fields'] = fields unless fields.nil?
2782
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2783
+ execute_or_queue_command(command, &block)
2784
+ end
2785
+
1964
2786
  # Lists all sources belonging to an organization.
1965
2787
  # @param [String] parent
1966
2788
  # Required. Resource name of the parent of sources to list. Its format should be
@@ -2200,6 +3022,43 @@ module Google
2200
3022
  execute_or_queue_command(command, &block)
2201
3023
  end
2202
3024
 
3025
+ # Updates the mute state of a finding.
3026
+ # @param [String] name
3027
+ # Required. The relative resource name of the finding. See: https://cloud.google.
3028
+ # com/apis/design/resource_names#relative_resource_name Example: "organizations/`
3029
+ # organization_id`/sources/`source_id`/finding/`finding_id`", "folders/`
3030
+ # folder_id`/sources/`source_id`/finding/`finding_id`", "projects/`project_id`/
3031
+ # sources/`source_id`/finding/`finding_id`".
3032
+ # @param [Google::Apis::SecuritycenterV1::SetMuteRequest] set_mute_request_object
3033
+ # @param [String] fields
3034
+ # Selector specifying which fields to include in a partial response.
3035
+ # @param [String] quota_user
3036
+ # Available to use for quota purposes for server-side applications. Can be any
3037
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3038
+ # @param [Google::Apis::RequestOptions] options
3039
+ # Request-specific options
3040
+ #
3041
+ # @yield [result, err] Result & error if block supplied
3042
+ # @yieldparam result [Google::Apis::SecuritycenterV1::Finding] parsed result object
3043
+ # @yieldparam err [StandardError] error object if request failed
3044
+ #
3045
+ # @return [Google::Apis::SecuritycenterV1::Finding]
3046
+ #
3047
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3048
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3049
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3050
+ def set_project_source_finding_mute(name, set_mute_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
3051
+ command = make_simple_command(:post, 'v1/{+name}:setMute', options)
3052
+ command.request_representation = Google::Apis::SecuritycenterV1::SetMuteRequest::Representation
3053
+ command.request_object = set_mute_request_object
3054
+ command.response_representation = Google::Apis::SecuritycenterV1::Finding::Representation
3055
+ command.response_class = Google::Apis::SecuritycenterV1::Finding
3056
+ command.params['name'] = name unless name.nil?
3057
+ command.query['fields'] = fields unless fields.nil?
3058
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3059
+ execute_or_queue_command(command, &block)
3060
+ end
3061
+
2203
3062
  # Updates the state of a finding.
2204
3063
  # @param [String] name
2205
3064
  # Required. The relative resource name of the finding. See: https://cloud.google.
@@ -2245,7 +3104,8 @@ module Google
2245
3104
  # @param [String] start_time
2246
3105
  # The time at which the updated SecurityMarks take effect. If not set uses
2247
3106
  # current server time. Updates will be applied to the SecurityMarks that are
2248
- # active immediately preceding this time.
3107
+ # active immediately preceding this time. Must be smaller or equal to the server
3108
+ # time.
2249
3109
  # @param [String] update_mask
2250
3110
  # The FieldMask to use when updating the security marks resource. The field mask
2251
3111
  # must not contain duplicate fields. If empty or set to "marks", all marks will
@@ -2280,6 +3140,46 @@ module Google
2280
3140
  command.query['quotaUser'] = quota_user unless quota_user.nil?
2281
3141
  execute_or_queue_command(command, &block)
2282
3142
  end
3143
+
3144
+ # Updates external system. This is for a given finding.
3145
+ # @param [String] name
3146
+ # External System Name e.g. jira, demisto, etc. e.g.: organizations/1234/sources/
3147
+ # 5678/findings/123456/externalSystems/jira folders/1234/sources/5678/findings/
3148
+ # 123456/externalSystems/jira projects/1234/sources/5678/findings/123456/
3149
+ # externalSystems/jira
3150
+ # @param [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem] google_cloud_securitycenter_v1_external_system_object
3151
+ # @param [String] update_mask
3152
+ # The FieldMask to use when updating the external system resource. If empty all
3153
+ # mutable fields will be updated.
3154
+ # @param [String] fields
3155
+ # Selector specifying which fields to include in a partial response.
3156
+ # @param [String] quota_user
3157
+ # Available to use for quota purposes for server-side applications. Can be any
3158
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
3159
+ # @param [Google::Apis::RequestOptions] options
3160
+ # Request-specific options
3161
+ #
3162
+ # @yield [result, err] Result & error if block supplied
3163
+ # @yieldparam result [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem] parsed result object
3164
+ # @yieldparam err [StandardError] error object if request failed
3165
+ #
3166
+ # @return [Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem]
3167
+ #
3168
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
3169
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
3170
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
3171
+ def patch_project_source_finding_external_system(name, google_cloud_securitycenter_v1_external_system_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
3172
+ command = make_simple_command(:patch, 'v1/{+name}', options)
3173
+ command.request_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem::Representation
3174
+ command.request_object = google_cloud_securitycenter_v1_external_system_object
3175
+ command.response_representation = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem::Representation
3176
+ command.response_class = Google::Apis::SecuritycenterV1::GoogleCloudSecuritycenterV1ExternalSystem
3177
+ command.params['name'] = name unless name.nil?
3178
+ command.query['updateMask'] = update_mask unless update_mask.nil?
3179
+ command.query['fields'] = fields unless fields.nil?
3180
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
3181
+ execute_or_queue_command(command, &block)
3182
+ end
2283
3183
 
2284
3184
  protected
2285
3185