Class: Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client

Inherits:
Object
  • Object
show all
Includes:
Paths
Defined in:
lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb

Overview

REST client for the SecurityCenter service.

V1p1Beta1 APIs for Security Center service.

Defined Under Namespace

Classes: Configuration

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Paths

#finding_path, #folder_path, #notification_config_path, #organization_path, #organization_settings_path, #project_path, #security_marks_path, #source_path, #topic_path

Constructor Details

#initialize {|config| ... } ⇒ Client

Create a new SecurityCenter REST client object.

Examples:


# Create a client using the default configuration
client = ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a client using a custom configuration
client = ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the SecurityCenter client.

Yield Parameters:



190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 190

def initialize
  # Create the configuration object
  @config = Configuration.new Client.configure

  # Yield the configuration if needed
  yield @config if block_given?

  # Create credentials
  credentials = @config.credentials
  # Use self-signed JWT if the endpoint is unchanged from default,
  # but only if the default endpoint does not have a region prefix.
  enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
                           !@config.endpoint.split(".").first.include?("-")
  credentials ||= Credentials.default scope: @config.scope,
                                      enable_self_signed_jwt: enable_self_signed_jwt
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
    credentials = Credentials.new credentials, scope: @config.scope
  end

  @quota_project_id = @config.quota_project
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id

  @operations_client = ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Operations.new do |config|
    config.credentials = credentials
    config.quota_project = @quota_project_id
    config.endpoint = @config.endpoint
  end

  @security_center_stub = ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
end

Instance Attribute Details

#operations_client::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Operations (readonly)

Get the associated client for long-running operations.



226
227
228
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 226

def operations_client
  @operations_client
end

Class Method Details

.configure {|config| ... } ⇒ Client::Configuration

Configure the SecurityCenter Client class.

See Configuration for a description of the configuration fields.

Examples:


# Modify the configuration for all SecurityCenter clients
::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.configure do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:

Returns:



58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 58

def self.configure
  @configure ||= begin
    namespace = ["Google", "Cloud", "SecurityCenter", "V1p1beta1"]
    parent_config = while namespace.any?
                      parent_name = namespace.join "::"
                      parent_const = const_get parent_name
                      break parent_const.configure if parent_const.respond_to? :configure
                      namespace.pop
                    end
    default_config = Client::Configuration.new parent_config

    default_config.rpcs.create_source.timeout = 60.0

    default_config.rpcs.create_finding.timeout = 60.0

    default_config.rpcs.create_notification_config.timeout = 60.0

    default_config.rpcs.delete_notification_config.timeout = 60.0

    default_config.rpcs.get_iam_policy.timeout = 60.0
    default_config.rpcs.get_iam_policy.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.get_notification_config.timeout = 60.0
    default_config.rpcs.get_notification_config.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.get_organization_settings.timeout = 60.0
    default_config.rpcs.get_organization_settings.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.get_source.timeout = 60.0
    default_config.rpcs.get_source.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.group_assets.timeout = 480.0
    default_config.rpcs.group_assets.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.group_findings.timeout = 480.0
    default_config.rpcs.group_findings.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.list_assets.timeout = 480.0
    default_config.rpcs.list_assets.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.list_findings.timeout = 480.0
    default_config.rpcs.list_findings.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.list_notification_configs.timeout = 60.0
    default_config.rpcs.list_notification_configs.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.list_sources.timeout = 60.0
    default_config.rpcs.list_sources.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.run_asset_discovery.timeout = 60.0

    default_config.rpcs.set_finding_state.timeout = 60.0

    default_config.rpcs.set_iam_policy.timeout = 60.0

    default_config.rpcs.test_iam_permissions.timeout = 60.0
    default_config.rpcs.test_iam_permissions.retry_policy = {
      initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
    }

    default_config.rpcs.update_finding.timeout = 60.0

    default_config.rpcs.update_notification_config.timeout = 60.0

    default_config.rpcs.update_organization_settings.timeout = 60.0

    default_config.rpcs.update_source.timeout = 60.0

    default_config.rpcs.update_security_marks.timeout = 480.0

    default_config
  end
  yield @configure if block_given?
  @configure
end

Instance Method Details

#configure {|config| ... } ⇒ Client::Configuration

Configure the SecurityCenter Client instance.

The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on configure.

See Configuration for a description of the configuration fields.

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:

Returns:



169
170
171
172
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 169

def configure
  yield @config if block_given?
  @config
end

#create_finding(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding #create_finding(parent: nil, finding_id: nil, finding: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

Creates a finding. The corresponding source must exist for finding creation to succeed.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::CreateFindingRequest.new

# Call the create_finding method.
result = client.create_finding request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::Finding.
p result

Overloads:

  • #create_finding(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

    Pass arguments to create_finding via a request object, either of type CreateFindingRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::CreateFindingRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #create_finding(parent: nil, finding_id: nil, finding: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

    Pass arguments to create_finding via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Resource name of the new finding's parent. Its format should be "organizations/[organization_id]/sources/[source_id]".

    • finding_id (::String) (defaults to: nil)

      Required. Unique identifier provided by the client within the parent scope.

    • finding (::Google::Cloud::SecurityCenter::V1p1beta1::Finding, ::Hash) (defaults to: nil)

      Required. The Finding being created. The name and security_marks will be ignored as they are both output only fields on this resource.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 362

def create_finding request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::CreateFindingRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.create_finding..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.create_finding.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.create_finding.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.create_finding request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#create_notification_config(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig #create_notification_config(parent: nil, config_id: nil, notification_config: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

Creates a notification config.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::CreateNotificationConfigRequest.new

# Call the create_notification_config method.
result = client.create_notification_config request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig.
p result

Overloads:

  • #create_notification_config(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

    Pass arguments to create_notification_config via a request object, either of type CreateNotificationConfigRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::CreateNotificationConfigRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #create_notification_config(parent: nil, config_id: nil, notification_config: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

    Pass arguments to create_notification_config via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Resource name of the new notification config's parent. Its format is "organizations/[organization_id]".

    • config_id (::String) (defaults to: nil)

      Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters, and contains alphanumeric characters, underscores or hyphens only.

    • notification_config (::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig, ::Hash) (defaults to: nil)

      Required. The notification config being created. The name and the service account will be ignored as they are both output only fields on this resource.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 448

def create_notification_config request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::CreateNotificationConfigRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.create_notification_config..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.create_notification_config.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.create_notification_config.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.create_notification_config request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#create_source(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source #create_source(parent: nil, source: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source

Creates a source.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::CreateSourceRequest.new

# Call the create_source method.
result = client.create_source request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::Source.
p result

Overloads:

  • #create_source(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source

    Pass arguments to create_source via a request object, either of type CreateSourceRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::CreateSourceRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #create_source(parent: nil, source: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source

    Pass arguments to create_source via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Resource name of the new source's parent. Its format should be "organizations/[organization_id]".

    • source (::Google::Cloud::SecurityCenter::V1p1beta1::Source, ::Hash) (defaults to: nil)

      Required. The Source being created, only the display_name and description will be used. All other fields will be ignored.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 277

def create_source request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::CreateSourceRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.create_source..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.create_source.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.create_source.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.create_source request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#delete_notification_config(request, options = nil) ⇒ ::Google::Protobuf::Empty #delete_notification_config(name: nil) ⇒ ::Google::Protobuf::Empty

Deletes a notification config.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::DeleteNotificationConfigRequest.new

# Call the delete_notification_config method.
result = client.delete_notification_config request

# The returned object is of type Google::Protobuf::Empty.
p result

Overloads:

  • #delete_notification_config(request, options = nil) ⇒ ::Google::Protobuf::Empty

    Pass arguments to delete_notification_config via a request object, either of type DeleteNotificationConfigRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::DeleteNotificationConfigRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #delete_notification_config(name: nil) ⇒ ::Google::Protobuf::Empty

    Pass arguments to delete_notification_config via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • name (::String) (defaults to: nil)

      Required. Name of the notification config to delete. Its format is "organizations/[organization_id]/notificationConfigs/[config_id]".

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 527

def delete_notification_config request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::DeleteNotificationConfigRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.delete_notification_config..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.delete_notification_config.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.delete_notification_config.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.delete_notification_config request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#get_iam_policy(request, options = nil) ⇒ ::Google::Iam::V1::Policy #get_iam_policy(resource: nil, options: nil) ⇒ ::Google::Iam::V1::Policy

Gets the access control policy on the specified Source.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Iam::V1::GetIamPolicyRequest.new

# Call the get_iam_policy method.
result = client.get_iam_policy request

# The returned object is of type Google::Iam::V1::Policy.
p result

Overloads:

  • #get_iam_policy(request, options = nil) ⇒ ::Google::Iam::V1::Policy

    Pass arguments to get_iam_policy via a request object, either of type Iam::V1::GetIamPolicyRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Iam::V1::GetIamPolicyRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #get_iam_policy(resource: nil, options: nil) ⇒ ::Google::Iam::V1::Policy

    Pass arguments to get_iam_policy via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • resource (::String) (defaults to: nil)

      REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.

    • options (::Google::Iam::V1::GetPolicyOptions, ::Hash) (defaults to: nil)

      OPTIONAL: A GetPolicyOptions object for specifying options to GetIamPolicy.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 609

def get_iam_policy request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::GetIamPolicyRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_iam_policy..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.get_iam_policy.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_iam_policy.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.get_iam_policy request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#get_notification_config(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig #get_notification_config(name: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

Gets a notification config.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::GetNotificationConfigRequest.new

# Call the get_notification_config method.
result = client.get_notification_config request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig.
p result

Overloads:

  • #get_notification_config(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

    Pass arguments to get_notification_config via a request object, either of type GetNotificationConfigRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::GetNotificationConfigRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #get_notification_config(name: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

    Pass arguments to get_notification_config via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • name (::String) (defaults to: nil)

      Required. Name of the notification config to get. Its format is "organizations/[organization_id]/notificationConfigs/[config_id]".

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 688

def get_notification_config request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::GetNotificationConfigRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_notification_config..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.get_notification_config.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_notification_config.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.get_notification_config request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#get_organization_settings(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings #get_organization_settings(name: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings

Gets the settings for an organization.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::GetOrganizationSettingsRequest.new

# Call the get_organization_settings method.
result = client.get_organization_settings request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings.
p result

Overloads:

  • #get_organization_settings(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings

    Pass arguments to get_organization_settings via a request object, either of type GetOrganizationSettingsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::GetOrganizationSettingsRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #get_organization_settings(name: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings

    Pass arguments to get_organization_settings via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • name (::String) (defaults to: nil)

      Required. Name of the organization to get organization settings for. Its format is "organizations/[organization_id]/organizationSettings".

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 767

def get_organization_settings request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::GetOrganizationSettingsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_organization_settings..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.get_organization_settings.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_organization_settings.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.get_organization_settings request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#get_source(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source #get_source(name: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source

Gets a source.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::GetSourceRequest.new

# Call the get_source method.
result = client.get_source request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::Source.
p result

Overloads:

  • #get_source(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source

    Pass arguments to get_source via a request object, either of type GetSourceRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::GetSourceRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #get_source(name: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source

    Pass arguments to get_source via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • name (::String) (defaults to: nil)

      Required. Relative resource name of the source. Its format is "organizations/[organization_id]/source/[source_id]".

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 846

def get_source request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::GetSourceRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_source..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.get_source.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_source.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.get_source request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#group_assets(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult> #group_assets(parent: nil, filter: nil, group_by: nil, compare_duration: nil, read_time: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult>

Filters an organization's assets and groups them by their specified properties.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::GroupAssetsRequest.new

# Call the group_assets method.
result = client.group_assets request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult.
  p item
end

Overloads:

  • #group_assets(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult>

    Pass arguments to group_assets via a request object, either of type GroupAssetsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::GroupAssetsRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #group_assets(parent: nil, filter: nil, group_by: nil, compare_duration: nil, read_time: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult>

    Pass arguments to group_assets via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Name of the organization to groupBy. Its format is "organizations/[organization_id], folders/[folder_id], or projects/[project_id]".

    • filter (::String) (defaults to: nil)

      Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators AND and OR. Parentheses are supported, and OR has higher precedence than AND.

      Restrictions have the form <field> <operator> <value> and may have a - character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include:

      • name
      • security_center_properties.resource_name
      • resource_properties.a_property
      • security_marks.marks.marka

      The supported operators are:

      • = for all value types.
      • >, <, >=, <= for integer values.
      • :, meaning substring matching, for strings.

      The supported value types are:

      • string literals in quotes.
      • integer literals without quotes.
      • boolean literals true and false without quotes.

      The following field and operator combinations are supported:

      • name: =
      • update_time: =, >, <, >=, <=

      Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: update_time = "2019-06-10T16:07:18-07:00" update_time = 1560208038000

      • create_time: =, >, <, >=, <=

      Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: create_time = "2019-06-10T16:07:18-07:00" create_time = 1560208038000

      • iam_policy.policy_blob: =, :
      • resource_properties: =, :, >, <, >=, <=
      • security_marks.marks: =, :
      • security_center_properties.resource_name: =, :
      • security_center_properties.resource_name_display_name: =, :
      • security_center_properties.resource_type: =, :
      • security_center_properties.resource_parent: =, :
      • security_center_properties.resource_parent_display_name: =, :
      • security_center_properties.resource_project: =, :
      • security_center_properties.resource_project_display_name: =, :
      • security_center_properties.resource_owners: =, :

      For example, resource_properties.size = 100 is a valid filter string.

      Use a partial match on the empty string to filter based on a property existing: resource_properties.my_property : ""

      Use a negated partial match on the empty string to filter based on a property not existing: -resource_properties.my_property : ""

    • group_by (::String) (defaults to: nil)

      Required. Expression that defines what assets fields to use for grouping. The string value should follow SQL syntax: comma separated list of fields. For example: "security_center_properties.resource_project,security_center_properties.project".

      The following fields are supported when compare_duration is not set:

      • security_center_properties.resource_project
      • security_center_properties.resource_project_display_name
      • security_center_properties.resource_type
      • security_center_properties.resource_parent
      • security_center_properties.resource_parent_display_name

      The following fields are supported when compare_duration is set:

      • security_center_properties.resource_type
      • security_center_properties.resource_project_display_name
      • security_center_properties.resource_parent_display_name
    • compare_duration (::Google::Protobuf::Duration, ::Hash) (defaults to: nil)

      When compare_duration is set, the GroupResult's "state_change" property is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time.

      The state change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again.

      Possible "state_change" values when compare_duration is specified:

      • "ADDED": indicates that the asset was not present at the start of compare_duration, but present at reference_time.
      • "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at reference_time.
      • "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and reference_time.

      If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time.

      If this field is set then state_change must be a specified field in group_by.

    • read_time (::Google::Protobuf::Timestamp, ::Hash) (defaults to: nil)

      Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.

    • page_token (::String) (defaults to: nil)

      The value returned by the last GroupAssetsResponse; indicates that this is a continuation of a prior GroupAssets call, and that the system should return the next page of data.

    • page_size (::Integer) (defaults to: nil)

      The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 1053

def group_assets request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::GroupAssetsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.group_assets..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.group_assets.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.group_assets.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.group_assets request, options do |result, operation|
    result = ::Gapic::Rest::PagedEnumerable.new @security_center_stub, :group_assets, "group_by_results", request, result, options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#group_findings(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult> #group_findings(parent: nil, filter: nil, group_by: nil, read_time: nil, compare_duration: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult>

Filters an organization or source's findings and groups them by their specified properties.

To group across all sources provide a - as the source id. Example: /v1/organizations/{organization_id}/sources/-/findings, /v1/folders/{folder_id}/sources/-/findings, /v1/projects/{project_id}/sources/-/findings

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::GroupFindingsRequest.new

# Call the group_findings method.
result = client.group_findings request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult.
  p item
end

Overloads:

  • #group_findings(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult>

    Pass arguments to group_findings via a request object, either of type GroupFindingsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::GroupFindingsRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #group_findings(parent: nil, filter: nil, group_by: nil, read_time: nil, compare_duration: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult>

    Pass arguments to group_findings via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Name of the source to groupBy. Its format is "organizations/[organization_id]/sources/[source_id]", folders/[folder_id]/sources/[source_id], or projects/[project_id]/sources/[source_id]. To groupBy across all sources provide a source_id of -. For example: organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-, or projects/{project_id}/sources/-

    • filter (::String) (defaults to: nil)

      Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators AND and OR. Parentheses are supported, and OR has higher precedence than AND.

      Restrictions have the form <field> <operator> <value> and may have a - character in front of them to indicate negation. Examples include:

      • name
      • source_properties.a_property
      • security_marks.marks.marka

      The supported operators are:

      • = for all value types.
      • >, <, >=, <= for integer values.
      • :, meaning substring matching, for strings.

      The supported value types are:

      • string literals in quotes.
      • integer literals without quotes.
      • boolean literals true and false without quotes.

      The following field and operator combinations are supported:

      • name: =
      • parent: =, :
      • resource_name: =, :
      • state: =, :
      • category: =, :
      • external_uri: =, :
      • event_time: =, >, <, >=, <=
      • severity: =, :

      Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: event_time = "2019-06-10T16:07:18-07:00" event_time = 1560208038000

      • security_marks.marks: =, :
      • source_properties: =, :, >, <, >=, <=

      For example, source_properties.size = 100 is a valid filter string.

      Use a partial match on the empty string to filter based on a property existing: source_properties.my_property : ""

      Use a negated partial match on the empty string to filter based on a property not existing: -source_properties.my_property : ""

    • group_by (::String) (defaults to: nil)

      Required. Expression that defines what assets fields to use for grouping (including state_change). The string value should follow SQL syntax: comma separated list of fields. For example: "parent,resource_name".

      The following fields are supported:

      • resource_name
      • category
      • state
      • parent
      • severity

      The following fields are supported when compare_duration is set:

      • state_change
    • read_time (::Google::Protobuf::Timestamp, ::Hash) (defaults to: nil)

      Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.

    • compare_duration (::Google::Protobuf::Duration, ::Hash) (defaults to: nil)

      When compare_duration is set, the GroupResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time.

      The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again.

      Possible "state_change" values when compare_duration is specified:

      • "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time.
      • "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time.
      • "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time.
      • "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time.

      If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time.

      If this field is set then state_change must be a specified field in group_by.

    • page_token (::String) (defaults to: nil)

      The value returned by the last GroupFindingsResponse; indicates that this is a continuation of a prior GroupFindings call, and that the system should return the next page of data.

    • page_size (::Integer) (defaults to: nil)

      The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 1260

def group_findings request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::GroupFindingsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.group_findings..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.group_findings.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.group_findings.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.group_findings request, options do |result, operation|
    result = ::Gapic::Rest::PagedEnumerable.new @security_center_stub, :group_findings, "group_by_results", request, result, options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_assets(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult> #list_assets(parent: nil, filter: nil, order_by: nil, read_time: nil, compare_duration: nil, field_mask: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult>

Lists an organization's assets.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsRequest.new

# Call the list_assets method.
result = client.list_assets request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult.
  p item
end

Overloads:

  • #list_assets(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult>

    Pass arguments to list_assets via a request object, either of type ListAssetsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #list_assets(parent: nil, filter: nil, order_by: nil, read_time: nil, compare_duration: nil, field_mask: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult>

    Pass arguments to list_assets via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Name of the organization assets should belong to. Its format is "organizations/[organization_id], folders/[folder_id], or projects/[project_id]".

    • filter (::String) (defaults to: nil)

      Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators AND and OR. Parentheses are supported, and OR has higher precedence than AND.

      Restrictions have the form <field> <operator> <value> and may have a - character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include:

      • name
      • security_center_properties.resource_name
      • resource_properties.a_property
      • security_marks.marks.marka

      The supported operators are:

      • = for all value types.
      • >, <, >=, <= for integer values.
      • :, meaning substring matching, for strings.

      The supported value types are:

      • string literals in quotes.
      • integer literals without quotes.
      • boolean literals true and false without quotes.

      The following are the allowed field and operator combinations:

      • name: =
      • update_time: =, >, <, >=, <=

      Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: update_time = "2019-06-10T16:07:18-07:00" update_time = 1560208038000

      • create_time: =, >, <, >=, <=

      Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: create_time = "2019-06-10T16:07:18-07:00" create_time = 1560208038000

      • iam_policy.policy_blob: =, :
      • resource_properties: =, :, >, <, >=, <=
      • security_marks.marks: =, :
      • security_center_properties.resource_name: =, :
      • security_center_properties.resource_display_name: =, :
      • security_center_properties.resource_type: =, :
      • security_center_properties.resource_parent: =, :
      • security_center_properties.resource_parent_display_name: =, :
      • security_center_properties.resource_project: =, :
      • security_center_properties.resource_project_display_name: =, :
      • security_center_properties.resource_owners: =, :

      For example, resource_properties.size = 100 is a valid filter string.

      Use a partial match on the empty string to filter based on a property existing: resource_properties.my_property : ""

      Use a negated partial match on the empty string to filter based on a property not existing: -resource_properties.my_property : ""

    • order_by (::String) (defaults to: nil)

      Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent.

      The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type

    • read_time (::Google::Protobuf::Timestamp, ::Hash) (defaults to: nil)

      Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.

    • compare_duration (::Google::Protobuf::Duration, ::Hash) (defaults to: nil)

      When compare_duration is set, the ListAssetsResult's "state_change" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time.

      The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again.

      Possible "state_change" values when compare_duration is specified:

      • "ADDED": indicates that the asset was not present at the start of compare_duration, but present at read_time.
      • "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time.
      • "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time.

      If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time.

    • field_mask (::Google::Protobuf::FieldMask, ::Hash) (defaults to: nil)

      A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields.

    • page_token (::String) (defaults to: nil)

      The value returned by the last ListAssetsResponse; indicates that this is a continuation of a prior ListAssets call, and that the system should return the next page of data.

    • page_size (::Integer) (defaults to: nil)

      The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 1471

def list_assets request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_assets..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.list_assets.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_assets.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.list_assets request, options do |result, operation|
    result = ::Gapic::Rest::PagedEnumerable.new @security_center_stub, :list_assets, "list_assets_results", request, result, options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_findings(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsResponse::ListFindingsResult> #list_findings(parent: nil, filter: nil, order_by: nil, read_time: nil, compare_duration: nil, field_mask: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsResponse::ListFindingsResult>

Lists an organization or source's findings.

To list across all sources provide a - as the source id. Example: /v1p1beta1/organizations/{organization_id}/sources/-/findings

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsRequest.new

# Call the list_findings method.
result = client.list_findings request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsResponse::ListFindingsResult.
  p item
end

Overloads:

  • #list_findings(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsResponse::ListFindingsResult>

    Pass arguments to list_findings via a request object, either of type ListFindingsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #list_findings(parent: nil, filter: nil, order_by: nil, read_time: nil, compare_duration: nil, field_mask: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsResponse::ListFindingsResult>

    Pass arguments to list_findings via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Name of the source the findings belong to. Its format is "organizations/[organization_id]/sources/[source_id], folders/[folder_id]/sources/[source_id], or projects/[project_id]/sources/[source_id]". To list across all sources provide a source_id of -. For example: organizations/{organization_id}/sources/-, folders/{folder_id}/sources/- or projects/{projects_id}/sources/-

    • filter (::String) (defaults to: nil)

      Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators AND and OR. Parentheses are supported, and OR has higher precedence than AND.

      Restrictions have the form <field> <operator> <value> and may have a - character in front of them to indicate negation. Examples include:

      • name
      • source_properties.a_property
      • security_marks.marks.marka

      The supported operators are:

      • = for all value types.
      • >, <, >=, <= for integer values.
      • :, meaning substring matching, for strings.

      The supported value types are:

      • string literals in quotes.
      • integer literals without quotes.
      • boolean literals true and false without quotes.

      The following field and operator combinations are supported:

      • name: =
      • parent: =, :
      • resource_name: =, :
      • state: =, :
      • category: =, :
      • external_uri: =, :
      • event_time: =, >, <, >=, <=
      • severity: =, :

      Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: event_time = "2019-06-10T16:07:18-07:00" event_time = 1560208038000

      security_marks.marks: =, : source_properties: =, :, >, <, >=, <=

      For example, source_properties.size = 100 is a valid filter string.

      Use a partial match on the empty string to filter based on a property existing: source_properties.my_property : ""

      Use a negated partial match on the empty string to filter based on a property not existing: -source_properties.my_property : ""

    • order_by (::String) (defaults to: nil)

      Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent.

      The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks

    • read_time (::Google::Protobuf::Timestamp, ::Hash) (defaults to: nil)

      Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.

    • compare_duration (::Google::Protobuf::Duration, ::Hash) (defaults to: nil)

      When compare_duration is set, the ListFindingsResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time.

      The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again.

      Possible "state_change" values when compare_duration is specified:

      • "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time.
      • "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time.
      • "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time.
      • "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time.

      If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time.

    • field_mask (::Google::Protobuf::FieldMask, ::Hash) (defaults to: nil)

      A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields.

    • page_token (::String) (defaults to: nil)

      The value returned by the last ListFindingsResponse; indicates that this is a continuation of a prior ListFindings call, and that the system should return the next page of data.

    • page_size (::Integer) (defaults to: nil)

      The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 1679

def list_findings request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_findings..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.list_findings.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_findings.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.list_findings request, options do |result, operation|
    result = ::Gapic::Rest::PagedEnumerable.new @security_center_stub, :list_findings, "list_findings_results", request, result, options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_notification_configs(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig> #list_notification_configs(parent: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig>

Lists notification configs.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::ListNotificationConfigsRequest.new

# Call the list_notification_configs method.
result = client.list_notification_configs request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig.
  p item
end

Overloads:

  • #list_notification_configs(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig>

    Pass arguments to list_notification_configs via a request object, either of type ListNotificationConfigsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::ListNotificationConfigsRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #list_notification_configs(parent: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig>

    Pass arguments to list_notification_configs via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Name of the organization to list notification configs. Its format is "organizations/[organization_id]".

    • page_token (::String) (defaults to: nil)

      The value returned by the last ListNotificationConfigsResponse; indicates that this is a continuation of a prior ListNotificationConfigs call, and that the system should return the next page of data.

    • page_size (::Integer) (defaults to: nil)

      The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 1770

def list_notification_configs request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::ListNotificationConfigsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_notification_configs..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.list_notification_configs.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_notification_configs.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.list_notification_configs request, options do |result, operation|
    result = ::Gapic::Rest::PagedEnumerable.new @security_center_stub, :list_notification_configs, "notification_configs", request, result, options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_sources(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::Source> #list_sources(parent: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::Source>

Lists all sources belonging to an organization.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::ListSourcesRequest.new

# Call the list_sources method.
result = client.list_sources request

# The returned object is of type Gapic::PagedEnumerable. You can iterate
# over elements, and API calls will be issued to fetch pages as needed.
result.each do |item|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::Source.
  p item
end

Overloads:

  • #list_sources(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::Source>

    Pass arguments to list_sources via a request object, either of type ListSourcesRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::ListSourcesRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #list_sources(parent: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::Source>

    Pass arguments to list_sources via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Resource name of the parent of sources to list. Its format should be "organizations/[organization_id], folders/[folder_id], or projects/[project_id]".

    • page_token (::String) (defaults to: nil)

      The value returned by the last ListSourcesResponse; indicates that this is a continuation of a prior ListSources call, and that the system should return the next page of data.

    • page_size (::Integer) (defaults to: nil)

      The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 1862

def list_sources request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::ListSourcesRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_sources..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.list_sources.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_sources.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.list_sources request, options do |result, operation|
    result = ::Gapic::Rest::PagedEnumerable.new @security_center_stub, :list_sources, "sources", request, result, options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#run_asset_discovery(request, options = nil) ⇒ ::Gapic::Operation #run_asset_discovery(parent: nil) ⇒ ::Gapic::Operation

Runs asset discovery. The discovery is tracked with a long-running operation.

This API can only be called with limited frequency for an organization. If it is called too frequently the caller will receive a TOO_MANY_REQUESTS error.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::RunAssetDiscoveryRequest.new

# Call the run_asset_discovery method.
result = client.run_asset_discovery request

# The returned object is of type Gapic::Operation. You can use it to
# check the status of an operation, cancel it, or wait for results.
# Here is how to wait for a response.
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "No response received."
end

Overloads:

  • #run_asset_discovery(request, options = nil) ⇒ ::Gapic::Operation

    Pass arguments to run_asset_discovery via a request object, either of type RunAssetDiscoveryRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::RunAssetDiscoveryRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #run_asset_discovery(parent: nil) ⇒ ::Gapic::Operation

    Pass arguments to run_asset_discovery via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • parent (::String) (defaults to: nil)

      Required. Name of the organization to run asset discovery for. Its format is "organizations/[organization_id]".

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

  • result (::Gapic::Operation)
  • operation (::Gapic::Rest::TransportOperation)

Returns:

  • (::Gapic::Operation)

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 1954

def run_asset_discovery request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::RunAssetDiscoveryRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.run_asset_discovery..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.run_asset_discovery.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.run_asset_discovery.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.run_asset_discovery request, options do |result, operation|
    result = ::Gapic::Operation.new result, @operations_client, options: options
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#set_finding_state(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding #set_finding_state(name: nil, state: nil, start_time: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

Updates the state of a finding.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::SetFindingStateRequest.new

# Call the set_finding_state method.
result = client.set_finding_state request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::Finding.
p result

Overloads:

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2040

def set_finding_state request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::SetFindingStateRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.set_finding_state..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.set_finding_state.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.set_finding_state.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.set_finding_state request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#set_iam_policy(request, options = nil) ⇒ ::Google::Iam::V1::Policy #set_iam_policy(resource: nil, policy: nil, update_mask: nil) ⇒ ::Google::Iam::V1::Policy

Sets the access control policy on the specified Source.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Iam::V1::SetIamPolicyRequest.new

# Call the set_iam_policy method.
result = client.set_iam_policy request

# The returned object is of type Google::Iam::V1::Policy.
p result

Overloads:

  • #set_iam_policy(request, options = nil) ⇒ ::Google::Iam::V1::Policy

    Pass arguments to set_iam_policy via a request object, either of type Iam::V1::SetIamPolicyRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Iam::V1::SetIamPolicyRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #set_iam_policy(resource: nil, policy: nil, update_mask: nil) ⇒ ::Google::Iam::V1::Policy

    Pass arguments to set_iam_policy via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • resource (::String) (defaults to: nil)

      REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.

    • policy (::Google::Iam::V1::Policy, ::Hash) (defaults to: nil)

      REQUIRED: The complete policy to be applied to the resource. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them.

    • update_mask (::Google::Protobuf::FieldMask, ::Hash) (defaults to: nil)

      OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only the fields in the mask will be modified. If no mask is provided, the following default mask is used:

      paths: "bindings, etag"

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2130

def set_iam_policy request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::SetIamPolicyRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.set_iam_policy..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.set_iam_policy.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.set_iam_policy.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.set_iam_policy request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#test_iam_permissions(request, options = nil) ⇒ ::Google::Iam::V1::TestIamPermissionsResponse #test_iam_permissions(resource: nil, permissions: nil) ⇒ ::Google::Iam::V1::TestIamPermissionsResponse

Returns the permissions that a caller has on the specified source.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Iam::V1::TestIamPermissionsRequest.new

# Call the test_iam_permissions method.
result = client.test_iam_permissions request

# The returned object is of type Google::Iam::V1::TestIamPermissionsResponse.
p result

Overloads:

  • #test_iam_permissions(request, options = nil) ⇒ ::Google::Iam::V1::TestIamPermissionsResponse

    Pass arguments to test_iam_permissions via a request object, either of type Iam::V1::TestIamPermissionsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Iam::V1::TestIamPermissionsRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #test_iam_permissions(resource: nil, permissions: nil) ⇒ ::Google::Iam::V1::TestIamPermissionsResponse

    Pass arguments to test_iam_permissions via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • resource (::String) (defaults to: nil)

      REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.

    • permissions (::Array<::String>) (defaults to: nil)

      The set of permissions to check for the resource. Permissions with wildcards (such as '' or 'storage.') are not allowed. For more information see IAM Overview.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2214

def test_iam_permissions request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::TestIamPermissionsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.test_iam_permissions..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.test_iam_permissions.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.test_iam_permissions.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.test_iam_permissions request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#update_finding(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding #update_finding(finding: nil, update_mask: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

Creates or updates a finding. The corresponding source must exist for a finding creation to succeed.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::UpdateFindingRequest.new

# Call the update_finding method.
result = client.update_finding request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::Finding.
p result

Overloads:

  • #update_finding(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

    Pass arguments to update_finding via a request object, either of type UpdateFindingRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::UpdateFindingRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #update_finding(finding: nil, update_mask: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

    Pass arguments to update_finding via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • finding (::Google::Cloud::SecurityCenter::V1p1beta1::Finding, ::Hash) (defaults to: nil)

      Required. The finding resource to update or create if it does not already exist. parent, security_marks, and update_time will be ignored.

      In the case of creation, the finding id portion of the name must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length.

    • update_mask (::Google::Protobuf::FieldMask, ::Hash) (defaults to: nil)

      The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding.

      When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using "source_properties." in the field mask.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2306

def update_finding request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::UpdateFindingRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_finding..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.update_finding.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_finding.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.update_finding request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#update_notification_config(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig #update_notification_config(notification_config: nil, update_mask: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

Updates a notification config. The following update fields are allowed: description, pubsub_topic, streaming_config.filter

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::UpdateNotificationConfigRequest.new

# Call the update_notification_config method.
result = client.update_notification_config request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig.
p result

Overloads:

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2389

def update_notification_config request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::UpdateNotificationConfigRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_notification_config..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.update_notification_config.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_notification_config.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.update_notification_config request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#update_organization_settings(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings #update_organization_settings(organization_settings: nil, update_mask: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings

Updates an organization's settings.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::UpdateOrganizationSettingsRequest.new

# Call the update_organization_settings method.
result = client.update_organization_settings request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings.
p result

Overloads:

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2471

def update_organization_settings request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::UpdateOrganizationSettingsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_organization_settings..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.update_organization_settings.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_organization_settings.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.update_organization_settings request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#update_security_marks(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks #update_security_marks(security_marks: nil, update_mask: nil, start_time: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks

Updates security marks.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::UpdateSecurityMarksRequest.new

# Call the update_security_marks method.
result = client.update_security_marks request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks.
p result

Overloads:

  • #update_security_marks(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks

    Pass arguments to update_security_marks via a request object, either of type UpdateSecurityMarksRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::SecurityCenter::V1p1beta1::UpdateSecurityMarksRequest, ::Hash)

      A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.

    • options (::Gapic::CallOptions, ::Hash) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries etc. Optional.

  • #update_security_marks(security_marks: nil, update_mask: nil, start_time: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks

    Pass arguments to update_security_marks via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).

    Parameters:

    • security_marks (::Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks, ::Hash) (defaults to: nil)

      Required. The security marks resource to update.

    • update_mask (::Google::Protobuf::FieldMask, ::Hash) (defaults to: nil)

      The FieldMask to use when updating the security marks resource.

      The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.".

    • start_time (::Google::Protobuf::Timestamp, ::Hash) (defaults to: nil)

      The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time.

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2641

def update_security_marks request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::UpdateSecurityMarksRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_security_marks..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.update_security_marks.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_security_marks.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.update_security_marks request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end

#update_source(request, options = nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source #update_source(source: nil, update_mask: nil) ⇒ ::Google::Cloud::SecurityCenter::V1p1beta1::Source

Updates a source.

Examples:

Basic example

require "google/cloud/security_center/v1p1beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Rest::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::SecurityCenter::V1p1beta1::UpdateSourceRequest.new

# Call the update_source method.
result = client.update_source request

# The returned object is of type Google::Cloud::SecurityCenter::V1p1beta1::Source.
p result

Overloads:

Yields:

  • (result, operation)

    Access the result along with the TransportOperation object

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the REST call is aborted.



2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
# File 'lib/google/cloud/security_center/v1p1beta1/security_center/rest/client.rb', line 2553

def update_source request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1p1beta1::UpdateSourceRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_source..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::SecurityCenter::V1p1beta1::VERSION,
    transports_version_send: [:rest]

  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.update_source.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_source.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @security_center_stub.update_source request, options do |result, operation|
    yield result, operation if block_given?
    return result
  end
rescue ::Gapic::Rest::Error => e
  raise ::Google::Cloud::Error.from_error(e)
end