google-cloud-security_center-v1 0.26.0 → 0.27.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 (32) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/google/cloud/security_center/v1/security_center/client.rb +856 -15
  4. data/lib/google/cloud/security_center/v1/security_center/operations.rb +2 -2
  5. data/lib/google/cloud/security_center/v1/security_center/paths.rb +147 -0
  6. data/lib/google/cloud/security_center/v1/security_center/rest/client.rb +647 -2
  7. data/lib/google/cloud/security_center/v1/security_center/rest/operations.rb +2 -2
  8. data/lib/google/cloud/security_center/v1/security_center/rest/service_stub.rb +590 -0
  9. data/lib/google/cloud/security_center/v1/version.rb +1 -1
  10. data/lib/google/cloud/securitycenter/v1/effective_security_health_analytics_custom_module_pb.rb +35 -0
  11. data/lib/google/cloud/securitycenter/v1/finding_pb.rb +1 -0
  12. data/lib/google/cloud/securitycenter/v1/security_health_analytics_custom_config_pb.rb +50 -0
  13. data/lib/google/cloud/securitycenter/v1/security_health_analytics_custom_module_pb.rb +40 -0
  14. data/lib/google/cloud/securitycenter/v1/securitycenter_service_pb.rb +58 -1
  15. data/lib/google/cloud/securitycenter/v1/securitycenter_service_services_pb.rb +30 -0
  16. data/proto_docs/google/api/client.rb +57 -3
  17. data/proto_docs/google/cloud/securitycenter/v1/bigquery_export.rb +5 -5
  18. data/proto_docs/google/cloud/securitycenter/v1/contact_details.rb +2 -2
  19. data/proto_docs/google/cloud/securitycenter/v1/database.rb +1 -1
  20. data/proto_docs/google/cloud/securitycenter/v1/effective_security_health_analytics_custom_module.rb +73 -0
  21. data/proto_docs/google/cloud/securitycenter/v1/exfiltration.rb +1 -1
  22. data/proto_docs/google/cloud/securitycenter/v1/finding.rb +11 -6
  23. data/proto_docs/google/cloud/securitycenter/v1/indicator.rb +4 -3
  24. data/proto_docs/google/cloud/securitycenter/v1/kernel_rootkit.rb +8 -8
  25. data/proto_docs/google/cloud/securitycenter/v1/kubernetes.rb +3 -3
  26. data/proto_docs/google/cloud/securitycenter/v1/mute_config.rb +5 -5
  27. data/proto_docs/google/cloud/securitycenter/v1/resource.rb +3 -3
  28. data/proto_docs/google/cloud/securitycenter/v1/security_health_analytics_custom_config.rb +112 -0
  29. data/proto_docs/google/cloud/securitycenter/v1/security_health_analytics_custom_module.rb +90 -0
  30. data/proto_docs/google/cloud/securitycenter/v1/securitycenter_service.rb +169 -0
  31. data/proto_docs/google/iam/v1/policy.rb +8 -4
  32. metadata +8 -2
@@ -64,6 +64,8 @@ module Google
64
64
  end
65
65
  default_config = Client::Configuration.new parent_config
66
66
 
67
+ default_config.rpcs.create_security_health_analytics_custom_module.timeout = 60.0
68
+
67
69
  default_config.rpcs.create_source.timeout = 60.0
68
70
 
69
71
  default_config.rpcs.create_finding.timeout = 60.0
@@ -72,6 +74,8 @@ module Google
72
74
 
73
75
  default_config.rpcs.delete_notification_config.timeout = 60.0
74
76
 
77
+ default_config.rpcs.delete_security_health_analytics_custom_module.timeout = 60.0
78
+
75
79
  default_config.rpcs.get_iam_policy.timeout = 60.0
76
80
  default_config.rpcs.get_iam_policy.retry_policy = {
77
81
  initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
@@ -87,6 +91,16 @@ module Google
87
91
  initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
88
92
  }
89
93
 
94
+ default_config.rpcs.get_effective_security_health_analytics_custom_module.timeout = 60.0
95
+ default_config.rpcs.get_effective_security_health_analytics_custom_module.retry_policy = {
96
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
97
+ }
98
+
99
+ default_config.rpcs.get_security_health_analytics_custom_module.timeout = 60.0
100
+ default_config.rpcs.get_security_health_analytics_custom_module.retry_policy = {
101
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
102
+ }
103
+
90
104
  default_config.rpcs.get_source.timeout = 60.0
91
105
  default_config.rpcs.get_source.retry_policy = {
92
106
  initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
@@ -107,6 +121,11 @@ module Google
107
121
  initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
108
122
  }
109
123
 
124
+ default_config.rpcs.list_descendant_security_health_analytics_custom_modules.timeout = 60.0
125
+ default_config.rpcs.list_descendant_security_health_analytics_custom_modules.retry_policy = {
126
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
127
+ }
128
+
110
129
  default_config.rpcs.list_findings.timeout = 480.0
111
130
  default_config.rpcs.list_findings.retry_policy = {
112
131
  initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
@@ -117,6 +136,16 @@ module Google
117
136
  initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
118
137
  }
119
138
 
139
+ default_config.rpcs.list_effective_security_health_analytics_custom_modules.timeout = 60.0
140
+ default_config.rpcs.list_effective_security_health_analytics_custom_modules.retry_policy = {
141
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
142
+ }
143
+
144
+ default_config.rpcs.list_security_health_analytics_custom_modules.timeout = 60.0
145
+ default_config.rpcs.list_security_health_analytics_custom_modules.retry_policy = {
146
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
147
+ }
148
+
120
149
  default_config.rpcs.list_sources.timeout = 60.0
121
150
  default_config.rpcs.list_sources.retry_policy = {
122
151
  initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
@@ -139,6 +168,8 @@ module Google
139
168
 
140
169
  default_config.rpcs.update_organization_settings.timeout = 60.0
141
170
 
171
+ default_config.rpcs.update_security_health_analytics_custom_module.timeout = 60.0
172
+
142
173
  default_config.rpcs.update_source.timeout = 60.0
143
174
 
144
175
  default_config.rpcs.update_security_marks.timeout = 480.0
@@ -357,6 +388,101 @@ module Google
357
388
  raise ::Google::Cloud::Error.from_error(e)
358
389
  end
359
390
 
391
+ ##
392
+ # Creates a resident SecurityHealthAnalyticsCustomModule at the scope of the
393
+ # given CRM parent, and also creates inherited
394
+ # SecurityHealthAnalyticsCustomModules for all CRM descendants of the given
395
+ # parent. These modules are enabled by default.
396
+ #
397
+ # @overload create_security_health_analytics_custom_module(request, options = nil)
398
+ # Pass arguments to `create_security_health_analytics_custom_module` via a request object, either of type
399
+ # {::Google::Cloud::SecurityCenter::V1::CreateSecurityHealthAnalyticsCustomModuleRequest} or an equivalent Hash.
400
+ #
401
+ # @param request [::Google::Cloud::SecurityCenter::V1::CreateSecurityHealthAnalyticsCustomModuleRequest, ::Hash]
402
+ # A request object representing the call parameters. Required. To specify no
403
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
404
+ # @param options [::Gapic::CallOptions, ::Hash]
405
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
406
+ #
407
+ # @overload create_security_health_analytics_custom_module(parent: nil, security_health_analytics_custom_module: nil)
408
+ # Pass arguments to `create_security_health_analytics_custom_module` via keyword arguments. Note that at
409
+ # least one keyword argument is required. To specify no parameters, or to keep all
410
+ # the default parameter values, pass an empty Hash as a request object (see above).
411
+ #
412
+ # @param parent [::String]
413
+ # Required. Resource name of the new custom module's parent. Its format is
414
+ # "organizations/\\{organization}/securityHealthAnalyticsSettings",
415
+ # "folders/\\{folder}/securityHealthAnalyticsSettings", or
416
+ # "projects/\\{project}/securityHealthAnalyticsSettings"
417
+ # @param security_health_analytics_custom_module [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule, ::Hash]
418
+ # Required. SecurityHealthAnalytics custom module to create. The provided
419
+ # name is ignored and reset with provided parent information and
420
+ # server-generated ID.
421
+ #
422
+ # @yield [response, operation] Access the result along with the RPC operation
423
+ # @yieldparam response [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule]
424
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
425
+ #
426
+ # @return [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule]
427
+ #
428
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
429
+ #
430
+ # @example Basic example
431
+ # require "google/cloud/security_center/v1"
432
+ #
433
+ # # Create a client object. The client can be reused for multiple calls.
434
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
435
+ #
436
+ # # Create a request. To set request fields, pass in keyword arguments.
437
+ # request = Google::Cloud::SecurityCenter::V1::CreateSecurityHealthAnalyticsCustomModuleRequest.new
438
+ #
439
+ # # Call the create_security_health_analytics_custom_module method.
440
+ # result = client.create_security_health_analytics_custom_module request
441
+ #
442
+ # # The returned object is of type Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule.
443
+ # p result
444
+ #
445
+ def create_security_health_analytics_custom_module request, options = nil
446
+ raise ::ArgumentError, "request must be provided" if request.nil?
447
+
448
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::CreateSecurityHealthAnalyticsCustomModuleRequest
449
+
450
+ # Converts hash and nil to an options object
451
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
452
+
453
+ # Customize the options with defaults
454
+ metadata = @config.rpcs.create_security_health_analytics_custom_module.metadata.to_h
455
+
456
+ # Set x-goog-api-client and x-goog-user-project headers
457
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
458
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
459
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
460
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
461
+
462
+ header_params = {}
463
+ if request.parent
464
+ header_params["parent"] = request.parent
465
+ end
466
+
467
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
468
+ metadata[:"x-goog-request-params"] ||= request_params_header
469
+
470
+ options.apply_defaults timeout: @config.rpcs.create_security_health_analytics_custom_module.timeout,
471
+ metadata: metadata,
472
+ retry_policy: @config.rpcs.create_security_health_analytics_custom_module.retry_policy
473
+
474
+ options.apply_defaults timeout: @config.timeout,
475
+ metadata: @config.metadata,
476
+ retry_policy: @config.retry_policy
477
+
478
+ @security_center_stub.call_rpc :create_security_health_analytics_custom_module, request, options: options do |response, operation|
479
+ yield response, operation if block_given?
480
+ return response
481
+ end
482
+ rescue ::GRPC::BadStatus => e
483
+ raise ::Google::Cloud::Error.from_error(e)
484
+ end
485
+
360
486
  ##
361
487
  # Creates a source.
362
488
  #
@@ -906,6 +1032,97 @@ module Google
906
1032
  raise ::Google::Cloud::Error.from_error(e)
907
1033
  end
908
1034
 
1035
+ ##
1036
+ # Deletes the specified SecurityHealthAnalyticsCustomModule and all of its
1037
+ # descendants in the CRM hierarchy. This method is only supported for
1038
+ # resident custom modules.
1039
+ #
1040
+ # @overload delete_security_health_analytics_custom_module(request, options = nil)
1041
+ # Pass arguments to `delete_security_health_analytics_custom_module` via a request object, either of type
1042
+ # {::Google::Cloud::SecurityCenter::V1::DeleteSecurityHealthAnalyticsCustomModuleRequest} or an equivalent Hash.
1043
+ #
1044
+ # @param request [::Google::Cloud::SecurityCenter::V1::DeleteSecurityHealthAnalyticsCustomModuleRequest, ::Hash]
1045
+ # A request object representing the call parameters. Required. To specify no
1046
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1047
+ # @param options [::Gapic::CallOptions, ::Hash]
1048
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1049
+ #
1050
+ # @overload delete_security_health_analytics_custom_module(name: nil)
1051
+ # Pass arguments to `delete_security_health_analytics_custom_module` via keyword arguments. Note that at
1052
+ # least one keyword argument is required. To specify no parameters, or to keep all
1053
+ # the default parameter values, pass an empty Hash as a request object (see above).
1054
+ #
1055
+ # @param name [::String]
1056
+ # Required. Name of the custom module to delete. Its format is
1057
+ # "organizations/\\{organization}/securityHealthAnalyticsSettings/customModules/\\{customModule}",
1058
+ # "folders/\\{folder}/securityHealthAnalyticsSettings/customModules/\\{customModule}",
1059
+ # or
1060
+ # "projects/\\{project}/securityHealthAnalyticsSettings/customModules/\\{customModule}"
1061
+ #
1062
+ # @yield [response, operation] Access the result along with the RPC operation
1063
+ # @yieldparam response [::Google::Protobuf::Empty]
1064
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1065
+ #
1066
+ # @return [::Google::Protobuf::Empty]
1067
+ #
1068
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1069
+ #
1070
+ # @example Basic example
1071
+ # require "google/cloud/security_center/v1"
1072
+ #
1073
+ # # Create a client object. The client can be reused for multiple calls.
1074
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
1075
+ #
1076
+ # # Create a request. To set request fields, pass in keyword arguments.
1077
+ # request = Google::Cloud::SecurityCenter::V1::DeleteSecurityHealthAnalyticsCustomModuleRequest.new
1078
+ #
1079
+ # # Call the delete_security_health_analytics_custom_module method.
1080
+ # result = client.delete_security_health_analytics_custom_module request
1081
+ #
1082
+ # # The returned object is of type Google::Protobuf::Empty.
1083
+ # p result
1084
+ #
1085
+ def delete_security_health_analytics_custom_module request, options = nil
1086
+ raise ::ArgumentError, "request must be provided" if request.nil?
1087
+
1088
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::DeleteSecurityHealthAnalyticsCustomModuleRequest
1089
+
1090
+ # Converts hash and nil to an options object
1091
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1092
+
1093
+ # Customize the options with defaults
1094
+ metadata = @config.rpcs.delete_security_health_analytics_custom_module.metadata.to_h
1095
+
1096
+ # Set x-goog-api-client and x-goog-user-project headers
1097
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1098
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1099
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
1100
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1101
+
1102
+ header_params = {}
1103
+ if request.name
1104
+ header_params["name"] = request.name
1105
+ end
1106
+
1107
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1108
+ metadata[:"x-goog-request-params"] ||= request_params_header
1109
+
1110
+ options.apply_defaults timeout: @config.rpcs.delete_security_health_analytics_custom_module.timeout,
1111
+ metadata: metadata,
1112
+ retry_policy: @config.rpcs.delete_security_health_analytics_custom_module.retry_policy
1113
+
1114
+ options.apply_defaults timeout: @config.timeout,
1115
+ metadata: @config.metadata,
1116
+ retry_policy: @config.retry_policy
1117
+
1118
+ @security_center_stub.call_rpc :delete_security_health_analytics_custom_module, request, options: options do |response, operation|
1119
+ yield response, operation if block_given?
1120
+ return response
1121
+ end
1122
+ rescue ::GRPC::BadStatus => e
1123
+ raise ::Google::Cloud::Error.from_error(e)
1124
+ end
1125
+
909
1126
  ##
910
1127
  # Gets a BigQuery export.
911
1128
  #
@@ -1345,6 +1562,184 @@ module Google
1345
1562
  raise ::Google::Cloud::Error.from_error(e)
1346
1563
  end
1347
1564
 
1565
+ ##
1566
+ # Retrieves an EffectiveSecurityHealthAnalyticsCustomModule.
1567
+ #
1568
+ # @overload get_effective_security_health_analytics_custom_module(request, options = nil)
1569
+ # Pass arguments to `get_effective_security_health_analytics_custom_module` via a request object, either of type
1570
+ # {::Google::Cloud::SecurityCenter::V1::GetEffectiveSecurityHealthAnalyticsCustomModuleRequest} or an equivalent Hash.
1571
+ #
1572
+ # @param request [::Google::Cloud::SecurityCenter::V1::GetEffectiveSecurityHealthAnalyticsCustomModuleRequest, ::Hash]
1573
+ # A request object representing the call parameters. Required. To specify no
1574
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1575
+ # @param options [::Gapic::CallOptions, ::Hash]
1576
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1577
+ #
1578
+ # @overload get_effective_security_health_analytics_custom_module(name: nil)
1579
+ # Pass arguments to `get_effective_security_health_analytics_custom_module` via keyword arguments. Note that at
1580
+ # least one keyword argument is required. To specify no parameters, or to keep all
1581
+ # the default parameter values, pass an empty Hash as a request object (see above).
1582
+ #
1583
+ # @param name [::String]
1584
+ # Required. Name of the effective custom module to get. Its format is
1585
+ # "organizations/\\{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/\\{customModule}",
1586
+ # "folders/\\{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/\\{customModule}",
1587
+ # or
1588
+ # "projects/\\{project}/securityHealthAnalyticsSettings/effectiveCustomModules/\\{customModule}"
1589
+ #
1590
+ # @yield [response, operation] Access the result along with the RPC operation
1591
+ # @yieldparam response [::Google::Cloud::SecurityCenter::V1::EffectiveSecurityHealthAnalyticsCustomModule]
1592
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1593
+ #
1594
+ # @return [::Google::Cloud::SecurityCenter::V1::EffectiveSecurityHealthAnalyticsCustomModule]
1595
+ #
1596
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1597
+ #
1598
+ # @example Basic example
1599
+ # require "google/cloud/security_center/v1"
1600
+ #
1601
+ # # Create a client object. The client can be reused for multiple calls.
1602
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
1603
+ #
1604
+ # # Create a request. To set request fields, pass in keyword arguments.
1605
+ # request = Google::Cloud::SecurityCenter::V1::GetEffectiveSecurityHealthAnalyticsCustomModuleRequest.new
1606
+ #
1607
+ # # Call the get_effective_security_health_analytics_custom_module method.
1608
+ # result = client.get_effective_security_health_analytics_custom_module request
1609
+ #
1610
+ # # The returned object is of type Google::Cloud::SecurityCenter::V1::EffectiveSecurityHealthAnalyticsCustomModule.
1611
+ # p result
1612
+ #
1613
+ def get_effective_security_health_analytics_custom_module request, options = nil
1614
+ raise ::ArgumentError, "request must be provided" if request.nil?
1615
+
1616
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::GetEffectiveSecurityHealthAnalyticsCustomModuleRequest
1617
+
1618
+ # Converts hash and nil to an options object
1619
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1620
+
1621
+ # Customize the options with defaults
1622
+ metadata = @config.rpcs.get_effective_security_health_analytics_custom_module.metadata.to_h
1623
+
1624
+ # Set x-goog-api-client and x-goog-user-project headers
1625
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1626
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1627
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
1628
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1629
+
1630
+ header_params = {}
1631
+ if request.name
1632
+ header_params["name"] = request.name
1633
+ end
1634
+
1635
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1636
+ metadata[:"x-goog-request-params"] ||= request_params_header
1637
+
1638
+ options.apply_defaults timeout: @config.rpcs.get_effective_security_health_analytics_custom_module.timeout,
1639
+ metadata: metadata,
1640
+ retry_policy: @config.rpcs.get_effective_security_health_analytics_custom_module.retry_policy
1641
+
1642
+ options.apply_defaults timeout: @config.timeout,
1643
+ metadata: @config.metadata,
1644
+ retry_policy: @config.retry_policy
1645
+
1646
+ @security_center_stub.call_rpc :get_effective_security_health_analytics_custom_module, request, options: options do |response, operation|
1647
+ yield response, operation if block_given?
1648
+ return response
1649
+ end
1650
+ rescue ::GRPC::BadStatus => e
1651
+ raise ::Google::Cloud::Error.from_error(e)
1652
+ end
1653
+
1654
+ ##
1655
+ # Retrieves a SecurityHealthAnalyticsCustomModule.
1656
+ #
1657
+ # @overload get_security_health_analytics_custom_module(request, options = nil)
1658
+ # Pass arguments to `get_security_health_analytics_custom_module` via a request object, either of type
1659
+ # {::Google::Cloud::SecurityCenter::V1::GetSecurityHealthAnalyticsCustomModuleRequest} or an equivalent Hash.
1660
+ #
1661
+ # @param request [::Google::Cloud::SecurityCenter::V1::GetSecurityHealthAnalyticsCustomModuleRequest, ::Hash]
1662
+ # A request object representing the call parameters. Required. To specify no
1663
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1664
+ # @param options [::Gapic::CallOptions, ::Hash]
1665
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1666
+ #
1667
+ # @overload get_security_health_analytics_custom_module(name: nil)
1668
+ # Pass arguments to `get_security_health_analytics_custom_module` via keyword arguments. Note that at
1669
+ # least one keyword argument is required. To specify no parameters, or to keep all
1670
+ # the default parameter values, pass an empty Hash as a request object (see above).
1671
+ #
1672
+ # @param name [::String]
1673
+ # Required. Name of the custom module to get. Its format is
1674
+ # "organizations/\\{organization}/securityHealthAnalyticsSettings/customModules/\\{customModule}",
1675
+ # "folders/\\{folder}/securityHealthAnalyticsSettings/customModules/\\{customModule}",
1676
+ # or
1677
+ # "projects/\\{project}/securityHealthAnalyticsSettings/customModules/\\{customModule}"
1678
+ #
1679
+ # @yield [response, operation] Access the result along with the RPC operation
1680
+ # @yieldparam response [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule]
1681
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1682
+ #
1683
+ # @return [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule]
1684
+ #
1685
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1686
+ #
1687
+ # @example Basic example
1688
+ # require "google/cloud/security_center/v1"
1689
+ #
1690
+ # # Create a client object. The client can be reused for multiple calls.
1691
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
1692
+ #
1693
+ # # Create a request. To set request fields, pass in keyword arguments.
1694
+ # request = Google::Cloud::SecurityCenter::V1::GetSecurityHealthAnalyticsCustomModuleRequest.new
1695
+ #
1696
+ # # Call the get_security_health_analytics_custom_module method.
1697
+ # result = client.get_security_health_analytics_custom_module request
1698
+ #
1699
+ # # The returned object is of type Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule.
1700
+ # p result
1701
+ #
1702
+ def get_security_health_analytics_custom_module request, options = nil
1703
+ raise ::ArgumentError, "request must be provided" if request.nil?
1704
+
1705
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::GetSecurityHealthAnalyticsCustomModuleRequest
1706
+
1707
+ # Converts hash and nil to an options object
1708
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1709
+
1710
+ # Customize the options with defaults
1711
+ metadata = @config.rpcs.get_security_health_analytics_custom_module.metadata.to_h
1712
+
1713
+ # Set x-goog-api-client and x-goog-user-project headers
1714
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1715
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1716
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
1717
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1718
+
1719
+ header_params = {}
1720
+ if request.name
1721
+ header_params["name"] = request.name
1722
+ end
1723
+
1724
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
1725
+ metadata[:"x-goog-request-params"] ||= request_params_header
1726
+
1727
+ options.apply_defaults timeout: @config.rpcs.get_security_health_analytics_custom_module.timeout,
1728
+ metadata: metadata,
1729
+ retry_policy: @config.rpcs.get_security_health_analytics_custom_module.retry_policy
1730
+
1731
+ options.apply_defaults timeout: @config.timeout,
1732
+ metadata: @config.metadata,
1733
+ retry_policy: @config.retry_policy
1734
+
1735
+ @security_center_stub.call_rpc :get_security_health_analytics_custom_module, request, options: options do |response, operation|
1736
+ yield response, operation if block_given?
1737
+ return response
1738
+ end
1739
+ rescue ::GRPC::BadStatus => e
1740
+ raise ::Google::Cloud::Error.from_error(e)
1741
+ end
1742
+
1348
1743
  ##
1349
1744
  # Gets a source.
1350
1745
  #
@@ -2021,10 +2416,109 @@ module Google
2021
2416
  # 10, minimum is 1, maximum is 1000.
2022
2417
  #
2023
2418
  # @yield [response, operation] Access the result along with the RPC operation
2024
- # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::ListAssetsResponse::ListAssetsResult>]
2419
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::ListAssetsResponse::ListAssetsResult>]
2420
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2421
+ #
2422
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::ListAssetsResponse::ListAssetsResult>]
2423
+ #
2424
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2425
+ #
2426
+ # @example Basic example
2427
+ # require "google/cloud/security_center/v1"
2428
+ #
2429
+ # # Create a client object. The client can be reused for multiple calls.
2430
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
2431
+ #
2432
+ # # Create a request. To set request fields, pass in keyword arguments.
2433
+ # request = Google::Cloud::SecurityCenter::V1::ListAssetsRequest.new
2434
+ #
2435
+ # # Call the list_assets method.
2436
+ # result = client.list_assets request
2437
+ #
2438
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
2439
+ # # over elements, and API calls will be issued to fetch pages as needed.
2440
+ # result.each do |item|
2441
+ # # Each element is of type ::Google::Cloud::SecurityCenter::V1::ListAssetsResponse::ListAssetsResult.
2442
+ # p item
2443
+ # end
2444
+ #
2445
+ def list_assets request, options = nil
2446
+ raise ::ArgumentError, "request must be provided" if request.nil?
2447
+
2448
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::ListAssetsRequest
2449
+
2450
+ # Converts hash and nil to an options object
2451
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2452
+
2453
+ # Customize the options with defaults
2454
+ metadata = @config.rpcs.list_assets.metadata.to_h
2455
+
2456
+ # Set x-goog-api-client and x-goog-user-project headers
2457
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2458
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2459
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
2460
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2461
+
2462
+ header_params = {}
2463
+ if request.parent
2464
+ header_params["parent"] = request.parent
2465
+ end
2466
+
2467
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2468
+ metadata[:"x-goog-request-params"] ||= request_params_header
2469
+
2470
+ options.apply_defaults timeout: @config.rpcs.list_assets.timeout,
2471
+ metadata: metadata,
2472
+ retry_policy: @config.rpcs.list_assets.retry_policy
2473
+
2474
+ options.apply_defaults timeout: @config.timeout,
2475
+ metadata: @config.metadata,
2476
+ retry_policy: @config.retry_policy
2477
+
2478
+ @security_center_stub.call_rpc :list_assets, request, options: options do |response, operation|
2479
+ response = ::Gapic::PagedEnumerable.new @security_center_stub, :list_assets, request, response, operation, options
2480
+ yield response, operation if block_given?
2481
+ return response
2482
+ end
2483
+ rescue ::GRPC::BadStatus => e
2484
+ raise ::Google::Cloud::Error.from_error(e)
2485
+ end
2486
+
2487
+ ##
2488
+ # Returns a list of all resident SecurityHealthAnalyticsCustomModules under
2489
+ # the given CRM parent and all of the parent’s CRM descendants.
2490
+ #
2491
+ # @overload list_descendant_security_health_analytics_custom_modules(request, options = nil)
2492
+ # Pass arguments to `list_descendant_security_health_analytics_custom_modules` via a request object, either of type
2493
+ # {::Google::Cloud::SecurityCenter::V1::ListDescendantSecurityHealthAnalyticsCustomModulesRequest} or an equivalent Hash.
2494
+ #
2495
+ # @param request [::Google::Cloud::SecurityCenter::V1::ListDescendantSecurityHealthAnalyticsCustomModulesRequest, ::Hash]
2496
+ # A request object representing the call parameters. Required. To specify no
2497
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2498
+ # @param options [::Gapic::CallOptions, ::Hash]
2499
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2500
+ #
2501
+ # @overload list_descendant_security_health_analytics_custom_modules(parent: nil, page_size: nil, page_token: nil)
2502
+ # Pass arguments to `list_descendant_security_health_analytics_custom_modules` via keyword arguments. Note that at
2503
+ # least one keyword argument is required. To specify no parameters, or to keep all
2504
+ # the default parameter values, pass an empty Hash as a request object (see above).
2505
+ #
2506
+ # @param parent [::String]
2507
+ # Required. Name of parent to list descendant custom modules. Its format is
2508
+ # "organizations/\\{organization}/securityHealthAnalyticsSettings",
2509
+ # "folders/\\{folder}/securityHealthAnalyticsSettings", or
2510
+ # "projects/\\{project}/securityHealthAnalyticsSettings"
2511
+ # @param page_size [::Integer]
2512
+ # The maximum number of results to return in a single response. Default is
2513
+ # 10, minimum is 1, maximum is 1000.
2514
+ # @param page_token [::String]
2515
+ # The value returned by the last call indicating a continuation
2516
+ #
2517
+ # @yield [response, operation] Access the result along with the RPC operation
2518
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule>]
2025
2519
  # @yieldparam operation [::GRPC::ActiveCall::Operation]
2026
2520
  #
2027
- # @return [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::ListAssetsResponse::ListAssetsResult>]
2521
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule>]
2028
2522
  #
2029
2523
  # @raise [::Google::Cloud::Error] if the RPC is aborted.
2030
2524
  #
@@ -2035,28 +2529,28 @@ module Google
2035
2529
  # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
2036
2530
  #
2037
2531
  # # Create a request. To set request fields, pass in keyword arguments.
2038
- # request = Google::Cloud::SecurityCenter::V1::ListAssetsRequest.new
2532
+ # request = Google::Cloud::SecurityCenter::V1::ListDescendantSecurityHealthAnalyticsCustomModulesRequest.new
2039
2533
  #
2040
- # # Call the list_assets method.
2041
- # result = client.list_assets request
2534
+ # # Call the list_descendant_security_health_analytics_custom_modules method.
2535
+ # result = client.list_descendant_security_health_analytics_custom_modules request
2042
2536
  #
2043
2537
  # # The returned object is of type Gapic::PagedEnumerable. You can iterate
2044
2538
  # # over elements, and API calls will be issued to fetch pages as needed.
2045
2539
  # result.each do |item|
2046
- # # Each element is of type ::Google::Cloud::SecurityCenter::V1::ListAssetsResponse::ListAssetsResult.
2540
+ # # Each element is of type ::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule.
2047
2541
  # p item
2048
2542
  # end
2049
2543
  #
2050
- def list_assets request, options = nil
2544
+ def list_descendant_security_health_analytics_custom_modules request, options = nil
2051
2545
  raise ::ArgumentError, "request must be provided" if request.nil?
2052
2546
 
2053
- request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::ListAssetsRequest
2547
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::ListDescendantSecurityHealthAnalyticsCustomModulesRequest
2054
2548
 
2055
2549
  # Converts hash and nil to an options object
2056
2550
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2057
2551
 
2058
2552
  # Customize the options with defaults
2059
- metadata = @config.rpcs.list_assets.metadata.to_h
2553
+ metadata = @config.rpcs.list_descendant_security_health_analytics_custom_modules.metadata.to_h
2060
2554
 
2061
2555
  # Set x-goog-api-client and x-goog-user-project headers
2062
2556
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
@@ -2072,16 +2566,16 @@ module Google
2072
2566
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2073
2567
  metadata[:"x-goog-request-params"] ||= request_params_header
2074
2568
 
2075
- options.apply_defaults timeout: @config.rpcs.list_assets.timeout,
2569
+ options.apply_defaults timeout: @config.rpcs.list_descendant_security_health_analytics_custom_modules.timeout,
2076
2570
  metadata: metadata,
2077
- retry_policy: @config.rpcs.list_assets.retry_policy
2571
+ retry_policy: @config.rpcs.list_descendant_security_health_analytics_custom_modules.retry_policy
2078
2572
 
2079
2573
  options.apply_defaults timeout: @config.timeout,
2080
2574
  metadata: @config.metadata,
2081
2575
  retry_policy: @config.retry_policy
2082
2576
 
2083
- @security_center_stub.call_rpc :list_assets, request, options: options do |response, operation|
2084
- response = ::Gapic::PagedEnumerable.new @security_center_stub, :list_assets, request, response, operation, options
2577
+ @security_center_stub.call_rpc :list_descendant_security_health_analytics_custom_modules, request, options: options do |response, operation|
2578
+ response = ::Gapic::PagedEnumerable.new @security_center_stub, :list_descendant_security_health_analytics_custom_modules, request, response, operation, options
2085
2579
  yield response, operation if block_given?
2086
2580
  return response
2087
2581
  end
@@ -2517,6 +3011,206 @@ module Google
2517
3011
  raise ::Google::Cloud::Error.from_error(e)
2518
3012
  end
2519
3013
 
3014
+ ##
3015
+ # Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules for the
3016
+ # given parent. This includes resident modules defined at the scope of the
3017
+ # parent, and inherited modules, inherited from CRM ancestors.
3018
+ #
3019
+ # @overload list_effective_security_health_analytics_custom_modules(request, options = nil)
3020
+ # Pass arguments to `list_effective_security_health_analytics_custom_modules` via a request object, either of type
3021
+ # {::Google::Cloud::SecurityCenter::V1::ListEffectiveSecurityHealthAnalyticsCustomModulesRequest} or an equivalent Hash.
3022
+ #
3023
+ # @param request [::Google::Cloud::SecurityCenter::V1::ListEffectiveSecurityHealthAnalyticsCustomModulesRequest, ::Hash]
3024
+ # A request object representing the call parameters. Required. To specify no
3025
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
3026
+ # @param options [::Gapic::CallOptions, ::Hash]
3027
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
3028
+ #
3029
+ # @overload list_effective_security_health_analytics_custom_modules(parent: nil, page_size: nil, page_token: nil)
3030
+ # Pass arguments to `list_effective_security_health_analytics_custom_modules` via keyword arguments. Note that at
3031
+ # least one keyword argument is required. To specify no parameters, or to keep all
3032
+ # the default parameter values, pass an empty Hash as a request object (see above).
3033
+ #
3034
+ # @param parent [::String]
3035
+ # Required. Name of parent to list effective custom modules. Its format is
3036
+ # "organizations/\\{organization}/securityHealthAnalyticsSettings",
3037
+ # "folders/\\{folder}/securityHealthAnalyticsSettings", or
3038
+ # "projects/\\{project}/securityHealthAnalyticsSettings"
3039
+ # @param page_size [::Integer]
3040
+ # The maximum number of results to return in a single response. Default is
3041
+ # 10, minimum is 1, maximum is 1000.
3042
+ # @param page_token [::String]
3043
+ # The value returned by the last call indicating a continuation
3044
+ #
3045
+ # @yield [response, operation] Access the result along with the RPC operation
3046
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::EffectiveSecurityHealthAnalyticsCustomModule>]
3047
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
3048
+ #
3049
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::EffectiveSecurityHealthAnalyticsCustomModule>]
3050
+ #
3051
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
3052
+ #
3053
+ # @example Basic example
3054
+ # require "google/cloud/security_center/v1"
3055
+ #
3056
+ # # Create a client object. The client can be reused for multiple calls.
3057
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
3058
+ #
3059
+ # # Create a request. To set request fields, pass in keyword arguments.
3060
+ # request = Google::Cloud::SecurityCenter::V1::ListEffectiveSecurityHealthAnalyticsCustomModulesRequest.new
3061
+ #
3062
+ # # Call the list_effective_security_health_analytics_custom_modules method.
3063
+ # result = client.list_effective_security_health_analytics_custom_modules request
3064
+ #
3065
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
3066
+ # # over elements, and API calls will be issued to fetch pages as needed.
3067
+ # result.each do |item|
3068
+ # # Each element is of type ::Google::Cloud::SecurityCenter::V1::EffectiveSecurityHealthAnalyticsCustomModule.
3069
+ # p item
3070
+ # end
3071
+ #
3072
+ def list_effective_security_health_analytics_custom_modules request, options = nil
3073
+ raise ::ArgumentError, "request must be provided" if request.nil?
3074
+
3075
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::ListEffectiveSecurityHealthAnalyticsCustomModulesRequest
3076
+
3077
+ # Converts hash and nil to an options object
3078
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
3079
+
3080
+ # Customize the options with defaults
3081
+ metadata = @config.rpcs.list_effective_security_health_analytics_custom_modules.metadata.to_h
3082
+
3083
+ # Set x-goog-api-client and x-goog-user-project headers
3084
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
3085
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
3086
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
3087
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
3088
+
3089
+ header_params = {}
3090
+ if request.parent
3091
+ header_params["parent"] = request.parent
3092
+ end
3093
+
3094
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
3095
+ metadata[:"x-goog-request-params"] ||= request_params_header
3096
+
3097
+ options.apply_defaults timeout: @config.rpcs.list_effective_security_health_analytics_custom_modules.timeout,
3098
+ metadata: metadata,
3099
+ retry_policy: @config.rpcs.list_effective_security_health_analytics_custom_modules.retry_policy
3100
+
3101
+ options.apply_defaults timeout: @config.timeout,
3102
+ metadata: @config.metadata,
3103
+ retry_policy: @config.retry_policy
3104
+
3105
+ @security_center_stub.call_rpc :list_effective_security_health_analytics_custom_modules, request, options: options do |response, operation|
3106
+ response = ::Gapic::PagedEnumerable.new @security_center_stub, :list_effective_security_health_analytics_custom_modules, request, response, operation, options
3107
+ yield response, operation if block_given?
3108
+ return response
3109
+ end
3110
+ rescue ::GRPC::BadStatus => e
3111
+ raise ::Google::Cloud::Error.from_error(e)
3112
+ end
3113
+
3114
+ ##
3115
+ # Returns a list of all SecurityHealthAnalyticsCustomModules for the given
3116
+ # parent. This includes resident modules defined at the scope of the parent,
3117
+ # and inherited modules, inherited from CRM ancestors.
3118
+ #
3119
+ # @overload list_security_health_analytics_custom_modules(request, options = nil)
3120
+ # Pass arguments to `list_security_health_analytics_custom_modules` via a request object, either of type
3121
+ # {::Google::Cloud::SecurityCenter::V1::ListSecurityHealthAnalyticsCustomModulesRequest} or an equivalent Hash.
3122
+ #
3123
+ # @param request [::Google::Cloud::SecurityCenter::V1::ListSecurityHealthAnalyticsCustomModulesRequest, ::Hash]
3124
+ # A request object representing the call parameters. Required. To specify no
3125
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
3126
+ # @param options [::Gapic::CallOptions, ::Hash]
3127
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
3128
+ #
3129
+ # @overload list_security_health_analytics_custom_modules(parent: nil, page_size: nil, page_token: nil)
3130
+ # Pass arguments to `list_security_health_analytics_custom_modules` via keyword arguments. Note that at
3131
+ # least one keyword argument is required. To specify no parameters, or to keep all
3132
+ # the default parameter values, pass an empty Hash as a request object (see above).
3133
+ #
3134
+ # @param parent [::String]
3135
+ # Required. Name of parent to list custom modules. Its format is
3136
+ # "organizations/\\{organization}/securityHealthAnalyticsSettings",
3137
+ # "folders/\\{folder}/securityHealthAnalyticsSettings", or
3138
+ # "projects/\\{project}/securityHealthAnalyticsSettings"
3139
+ # @param page_size [::Integer]
3140
+ # The maximum number of results to return in a single response. Default is
3141
+ # 10, minimum is 1, maximum is 1000.
3142
+ # @param page_token [::String]
3143
+ # The value returned by the last call indicating a continuation
3144
+ #
3145
+ # @yield [response, operation] Access the result along with the RPC operation
3146
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule>]
3147
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
3148
+ #
3149
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule>]
3150
+ #
3151
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
3152
+ #
3153
+ # @example Basic example
3154
+ # require "google/cloud/security_center/v1"
3155
+ #
3156
+ # # Create a client object. The client can be reused for multiple calls.
3157
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
3158
+ #
3159
+ # # Create a request. To set request fields, pass in keyword arguments.
3160
+ # request = Google::Cloud::SecurityCenter::V1::ListSecurityHealthAnalyticsCustomModulesRequest.new
3161
+ #
3162
+ # # Call the list_security_health_analytics_custom_modules method.
3163
+ # result = client.list_security_health_analytics_custom_modules request
3164
+ #
3165
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
3166
+ # # over elements, and API calls will be issued to fetch pages as needed.
3167
+ # result.each do |item|
3168
+ # # Each element is of type ::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule.
3169
+ # p item
3170
+ # end
3171
+ #
3172
+ def list_security_health_analytics_custom_modules request, options = nil
3173
+ raise ::ArgumentError, "request must be provided" if request.nil?
3174
+
3175
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::ListSecurityHealthAnalyticsCustomModulesRequest
3176
+
3177
+ # Converts hash and nil to an options object
3178
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
3179
+
3180
+ # Customize the options with defaults
3181
+ metadata = @config.rpcs.list_security_health_analytics_custom_modules.metadata.to_h
3182
+
3183
+ # Set x-goog-api-client and x-goog-user-project headers
3184
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
3185
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
3186
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
3187
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
3188
+
3189
+ header_params = {}
3190
+ if request.parent
3191
+ header_params["parent"] = request.parent
3192
+ end
3193
+
3194
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
3195
+ metadata[:"x-goog-request-params"] ||= request_params_header
3196
+
3197
+ options.apply_defaults timeout: @config.rpcs.list_security_health_analytics_custom_modules.timeout,
3198
+ metadata: metadata,
3199
+ retry_policy: @config.rpcs.list_security_health_analytics_custom_modules.retry_policy
3200
+
3201
+ options.apply_defaults timeout: @config.timeout,
3202
+ metadata: @config.metadata,
3203
+ retry_policy: @config.retry_policy
3204
+
3205
+ @security_center_stub.call_rpc :list_security_health_analytics_custom_modules, request, options: options do |response, operation|
3206
+ response = ::Gapic::PagedEnumerable.new @security_center_stub, :list_security_health_analytics_custom_modules, request, response, operation, options
3207
+ yield response, operation if block_given?
3208
+ return response
3209
+ end
3210
+ rescue ::GRPC::BadStatus => e
3211
+ raise ::Google::Cloud::Error.from_error(e)
3212
+ end
3213
+
2520
3214
  ##
2521
3215
  # Lists all sources belonging to an organization.
2522
3216
  #
@@ -3544,6 +4238,97 @@ module Google
3544
4238
  raise ::Google::Cloud::Error.from_error(e)
3545
4239
  end
3546
4240
 
4241
+ ##
4242
+ # Updates the SecurityHealthAnalyticsCustomModule under the given name based
4243
+ # on the given update mask. Updating the enablement state is supported on
4244
+ # both resident and inherited modules (though resident modules cannot have an
4245
+ # enablement state of “inherited”). Updating the display name and custom
4246
+ # config of a module is supported on resident modules only.
4247
+ #
4248
+ # @overload update_security_health_analytics_custom_module(request, options = nil)
4249
+ # Pass arguments to `update_security_health_analytics_custom_module` via a request object, either of type
4250
+ # {::Google::Cloud::SecurityCenter::V1::UpdateSecurityHealthAnalyticsCustomModuleRequest} or an equivalent Hash.
4251
+ #
4252
+ # @param request [::Google::Cloud::SecurityCenter::V1::UpdateSecurityHealthAnalyticsCustomModuleRequest, ::Hash]
4253
+ # A request object representing the call parameters. Required. To specify no
4254
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
4255
+ # @param options [::Gapic::CallOptions, ::Hash]
4256
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
4257
+ #
4258
+ # @overload update_security_health_analytics_custom_module(security_health_analytics_custom_module: nil, update_mask: nil)
4259
+ # Pass arguments to `update_security_health_analytics_custom_module` via keyword arguments. Note that at
4260
+ # least one keyword argument is required. To specify no parameters, or to keep all
4261
+ # the default parameter values, pass an empty Hash as a request object (see above).
4262
+ #
4263
+ # @param security_health_analytics_custom_module [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule, ::Hash]
4264
+ # Required. The SecurityHealthAnalytics custom module to update.
4265
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
4266
+ # The list of fields to update.
4267
+ #
4268
+ # @yield [response, operation] Access the result along with the RPC operation
4269
+ # @yieldparam response [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule]
4270
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
4271
+ #
4272
+ # @return [::Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule]
4273
+ #
4274
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
4275
+ #
4276
+ # @example Basic example
4277
+ # require "google/cloud/security_center/v1"
4278
+ #
4279
+ # # Create a client object. The client can be reused for multiple calls.
4280
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
4281
+ #
4282
+ # # Create a request. To set request fields, pass in keyword arguments.
4283
+ # request = Google::Cloud::SecurityCenter::V1::UpdateSecurityHealthAnalyticsCustomModuleRequest.new
4284
+ #
4285
+ # # Call the update_security_health_analytics_custom_module method.
4286
+ # result = client.update_security_health_analytics_custom_module request
4287
+ #
4288
+ # # The returned object is of type Google::Cloud::SecurityCenter::V1::SecurityHealthAnalyticsCustomModule.
4289
+ # p result
4290
+ #
4291
+ def update_security_health_analytics_custom_module request, options = nil
4292
+ raise ::ArgumentError, "request must be provided" if request.nil?
4293
+
4294
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::UpdateSecurityHealthAnalyticsCustomModuleRequest
4295
+
4296
+ # Converts hash and nil to an options object
4297
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
4298
+
4299
+ # Customize the options with defaults
4300
+ metadata = @config.rpcs.update_security_health_analytics_custom_module.metadata.to_h
4301
+
4302
+ # Set x-goog-api-client and x-goog-user-project headers
4303
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
4304
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
4305
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
4306
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
4307
+
4308
+ header_params = {}
4309
+ if request.security_health_analytics_custom_module&.name
4310
+ header_params["security_health_analytics_custom_module.name"] = request.security_health_analytics_custom_module.name
4311
+ end
4312
+
4313
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
4314
+ metadata[:"x-goog-request-params"] ||= request_params_header
4315
+
4316
+ options.apply_defaults timeout: @config.rpcs.update_security_health_analytics_custom_module.timeout,
4317
+ metadata: metadata,
4318
+ retry_policy: @config.rpcs.update_security_health_analytics_custom_module.retry_policy
4319
+
4320
+ options.apply_defaults timeout: @config.timeout,
4321
+ metadata: @config.metadata,
4322
+ retry_policy: @config.retry_policy
4323
+
4324
+ @security_center_stub.call_rpc :update_security_health_analytics_custom_module, request, options: options do |response, operation|
4325
+ yield response, operation if block_given?
4326
+ return response
4327
+ end
4328
+ rescue ::GRPC::BadStatus => e
4329
+ raise ::Google::Cloud::Error.from_error(e)
4330
+ end
4331
+
3547
4332
  ##
3548
4333
  # Updates a source.
3549
4334
  #
@@ -4143,9 +4928,9 @@ module Google
4143
4928
  # * (`String`) The path to a service account key file in JSON format
4144
4929
  # * (`Hash`) A service account key as a Hash
4145
4930
  # * (`Google::Auth::Credentials`) A googleauth credentials object
4146
- # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
4931
+ # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
4147
4932
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
4148
- # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
4933
+ # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
4149
4934
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
4150
4935
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
4151
4936
  # * (`nil`) indicating no credentials
@@ -4246,6 +5031,11 @@ module Google
4246
5031
  #
4247
5032
  attr_reader :bulk_mute_findings
4248
5033
  ##
5034
+ # RPC-specific configuration for `create_security_health_analytics_custom_module`
5035
+ # @return [::Gapic::Config::Method]
5036
+ #
5037
+ attr_reader :create_security_health_analytics_custom_module
5038
+ ##
4249
5039
  # RPC-specific configuration for `create_source`
4250
5040
  # @return [::Gapic::Config::Method]
4251
5041
  #
@@ -4276,6 +5066,11 @@ module Google
4276
5066
  #
4277
5067
  attr_reader :delete_notification_config
4278
5068
  ##
5069
+ # RPC-specific configuration for `delete_security_health_analytics_custom_module`
5070
+ # @return [::Gapic::Config::Method]
5071
+ #
5072
+ attr_reader :delete_security_health_analytics_custom_module
5073
+ ##
4279
5074
  # RPC-specific configuration for `get_big_query_export`
4280
5075
  # @return [::Gapic::Config::Method]
4281
5076
  #
@@ -4301,6 +5096,16 @@ module Google
4301
5096
  #
4302
5097
  attr_reader :get_organization_settings
4303
5098
  ##
5099
+ # RPC-specific configuration for `get_effective_security_health_analytics_custom_module`
5100
+ # @return [::Gapic::Config::Method]
5101
+ #
5102
+ attr_reader :get_effective_security_health_analytics_custom_module
5103
+ ##
5104
+ # RPC-specific configuration for `get_security_health_analytics_custom_module`
5105
+ # @return [::Gapic::Config::Method]
5106
+ #
5107
+ attr_reader :get_security_health_analytics_custom_module
5108
+ ##
4304
5109
  # RPC-specific configuration for `get_source`
4305
5110
  # @return [::Gapic::Config::Method]
4306
5111
  #
@@ -4321,6 +5126,11 @@ module Google
4321
5126
  #
4322
5127
  attr_reader :list_assets
4323
5128
  ##
5129
+ # RPC-specific configuration for `list_descendant_security_health_analytics_custom_modules`
5130
+ # @return [::Gapic::Config::Method]
5131
+ #
5132
+ attr_reader :list_descendant_security_health_analytics_custom_modules
5133
+ ##
4324
5134
  # RPC-specific configuration for `list_findings`
4325
5135
  # @return [::Gapic::Config::Method]
4326
5136
  #
@@ -4336,6 +5146,16 @@ module Google
4336
5146
  #
4337
5147
  attr_reader :list_notification_configs
4338
5148
  ##
5149
+ # RPC-specific configuration for `list_effective_security_health_analytics_custom_modules`
5150
+ # @return [::Gapic::Config::Method]
5151
+ #
5152
+ attr_reader :list_effective_security_health_analytics_custom_modules
5153
+ ##
5154
+ # RPC-specific configuration for `list_security_health_analytics_custom_modules`
5155
+ # @return [::Gapic::Config::Method]
5156
+ #
5157
+ attr_reader :list_security_health_analytics_custom_modules
5158
+ ##
4339
5159
  # RPC-specific configuration for `list_sources`
4340
5160
  # @return [::Gapic::Config::Method]
4341
5161
  #
@@ -4391,6 +5211,11 @@ module Google
4391
5211
  #
4392
5212
  attr_reader :update_organization_settings
4393
5213
  ##
5214
+ # RPC-specific configuration for `update_security_health_analytics_custom_module`
5215
+ # @return [::Gapic::Config::Method]
5216
+ #
5217
+ attr_reader :update_security_health_analytics_custom_module
5218
+ ##
4394
5219
  # RPC-specific configuration for `update_source`
4395
5220
  # @return [::Gapic::Config::Method]
4396
5221
  #
@@ -4425,6 +5250,8 @@ module Google
4425
5250
  def initialize parent_rpcs = nil
4426
5251
  bulk_mute_findings_config = parent_rpcs.bulk_mute_findings if parent_rpcs.respond_to? :bulk_mute_findings
4427
5252
  @bulk_mute_findings = ::Gapic::Config::Method.new bulk_mute_findings_config
5253
+ create_security_health_analytics_custom_module_config = parent_rpcs.create_security_health_analytics_custom_module if parent_rpcs.respond_to? :create_security_health_analytics_custom_module
5254
+ @create_security_health_analytics_custom_module = ::Gapic::Config::Method.new create_security_health_analytics_custom_module_config
4428
5255
  create_source_config = parent_rpcs.create_source if parent_rpcs.respond_to? :create_source
4429
5256
  @create_source = ::Gapic::Config::Method.new create_source_config
4430
5257
  create_finding_config = parent_rpcs.create_finding if parent_rpcs.respond_to? :create_finding
@@ -4437,6 +5264,8 @@ module Google
4437
5264
  @delete_mute_config = ::Gapic::Config::Method.new delete_mute_config_config
4438
5265
  delete_notification_config_config = parent_rpcs.delete_notification_config if parent_rpcs.respond_to? :delete_notification_config
4439
5266
  @delete_notification_config = ::Gapic::Config::Method.new delete_notification_config_config
5267
+ delete_security_health_analytics_custom_module_config = parent_rpcs.delete_security_health_analytics_custom_module if parent_rpcs.respond_to? :delete_security_health_analytics_custom_module
5268
+ @delete_security_health_analytics_custom_module = ::Gapic::Config::Method.new delete_security_health_analytics_custom_module_config
4440
5269
  get_big_query_export_config = parent_rpcs.get_big_query_export if parent_rpcs.respond_to? :get_big_query_export
4441
5270
  @get_big_query_export = ::Gapic::Config::Method.new get_big_query_export_config
4442
5271
  get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy
@@ -4447,6 +5276,10 @@ module Google
4447
5276
  @get_notification_config = ::Gapic::Config::Method.new get_notification_config_config
4448
5277
  get_organization_settings_config = parent_rpcs.get_organization_settings if parent_rpcs.respond_to? :get_organization_settings
4449
5278
  @get_organization_settings = ::Gapic::Config::Method.new get_organization_settings_config
5279
+ get_effective_security_health_analytics_custom_module_config = parent_rpcs.get_effective_security_health_analytics_custom_module if parent_rpcs.respond_to? :get_effective_security_health_analytics_custom_module
5280
+ @get_effective_security_health_analytics_custom_module = ::Gapic::Config::Method.new get_effective_security_health_analytics_custom_module_config
5281
+ get_security_health_analytics_custom_module_config = parent_rpcs.get_security_health_analytics_custom_module if parent_rpcs.respond_to? :get_security_health_analytics_custom_module
5282
+ @get_security_health_analytics_custom_module = ::Gapic::Config::Method.new get_security_health_analytics_custom_module_config
4450
5283
  get_source_config = parent_rpcs.get_source if parent_rpcs.respond_to? :get_source
4451
5284
  @get_source = ::Gapic::Config::Method.new get_source_config
4452
5285
  group_assets_config = parent_rpcs.group_assets if parent_rpcs.respond_to? :group_assets
@@ -4455,12 +5288,18 @@ module Google
4455
5288
  @group_findings = ::Gapic::Config::Method.new group_findings_config
4456
5289
  list_assets_config = parent_rpcs.list_assets if parent_rpcs.respond_to? :list_assets
4457
5290
  @list_assets = ::Gapic::Config::Method.new list_assets_config
5291
+ list_descendant_security_health_analytics_custom_modules_config = parent_rpcs.list_descendant_security_health_analytics_custom_modules if parent_rpcs.respond_to? :list_descendant_security_health_analytics_custom_modules
5292
+ @list_descendant_security_health_analytics_custom_modules = ::Gapic::Config::Method.new list_descendant_security_health_analytics_custom_modules_config
4458
5293
  list_findings_config = parent_rpcs.list_findings if parent_rpcs.respond_to? :list_findings
4459
5294
  @list_findings = ::Gapic::Config::Method.new list_findings_config
4460
5295
  list_mute_configs_config = parent_rpcs.list_mute_configs if parent_rpcs.respond_to? :list_mute_configs
4461
5296
  @list_mute_configs = ::Gapic::Config::Method.new list_mute_configs_config
4462
5297
  list_notification_configs_config = parent_rpcs.list_notification_configs if parent_rpcs.respond_to? :list_notification_configs
4463
5298
  @list_notification_configs = ::Gapic::Config::Method.new list_notification_configs_config
5299
+ list_effective_security_health_analytics_custom_modules_config = parent_rpcs.list_effective_security_health_analytics_custom_modules if parent_rpcs.respond_to? :list_effective_security_health_analytics_custom_modules
5300
+ @list_effective_security_health_analytics_custom_modules = ::Gapic::Config::Method.new list_effective_security_health_analytics_custom_modules_config
5301
+ list_security_health_analytics_custom_modules_config = parent_rpcs.list_security_health_analytics_custom_modules if parent_rpcs.respond_to? :list_security_health_analytics_custom_modules
5302
+ @list_security_health_analytics_custom_modules = ::Gapic::Config::Method.new list_security_health_analytics_custom_modules_config
4464
5303
  list_sources_config = parent_rpcs.list_sources if parent_rpcs.respond_to? :list_sources
4465
5304
  @list_sources = ::Gapic::Config::Method.new list_sources_config
4466
5305
  run_asset_discovery_config = parent_rpcs.run_asset_discovery if parent_rpcs.respond_to? :run_asset_discovery
@@ -4483,6 +5322,8 @@ module Google
4483
5322
  @update_notification_config = ::Gapic::Config::Method.new update_notification_config_config
4484
5323
  update_organization_settings_config = parent_rpcs.update_organization_settings if parent_rpcs.respond_to? :update_organization_settings
4485
5324
  @update_organization_settings = ::Gapic::Config::Method.new update_organization_settings_config
5325
+ update_security_health_analytics_custom_module_config = parent_rpcs.update_security_health_analytics_custom_module if parent_rpcs.respond_to? :update_security_health_analytics_custom_module
5326
+ @update_security_health_analytics_custom_module = ::Gapic::Config::Method.new update_security_health_analytics_custom_module_config
4486
5327
  update_source_config = parent_rpcs.update_source if parent_rpcs.respond_to? :update_source
4487
5328
  @update_source = ::Gapic::Config::Method.new update_source_config
4488
5329
  update_security_marks_config = parent_rpcs.update_security_marks if parent_rpcs.respond_to? :update_security_marks