Cloud Security Command Center V1p1beta1 API - Class Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Client (v0.8.0)

Reference documentation and code samples for the Cloud Security Command Center V1p1beta1 API class Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Client.

Client for the SecurityCenter service.

V1p1Beta1 APIs for Security Center service.

Inherits

  • Object

Methods

.configure

def self.configure() { |config| ... } -> Client::Configuration

Configure the SecurityCenter Client class.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter
Example
# Modify the configuration for all SecurityCenter clients
::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Client.configure do |config|
  config.timeout = 10.0
end

#configure

def 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 Client.configure.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter

#create_finding

def create_finding(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Finding
def 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.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — Required. Resource name of the new finding's parent. Its format should be "organizations/[organization_id]/sources/[source_id]".
  • finding_id (::String) — Required. Unique identifier provided by the client within the parent scope.
  • finding (::Google::Cloud::SecurityCenter::V1p1beta1::Finding, ::Hash) — Required. The Finding being created. The name and security_marks will be ignored as they are both output only fields on this resource.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#create_notification_config

def create_notification_config(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig
def create_notification_config(parent: nil, config_id: nil, notification_config: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

Creates a notification config.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — Required. Resource name of the new notification config's parent. Its format is "organizations/[organization_id]".
  • config_id (::String) — 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) — 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
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#create_source

def create_source(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source
def create_source(parent: nil, source: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source

Creates a source.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — Required. Resource name of the new source's parent. Its format should be "organizations/[organization_id]".
  • source (::Google::Cloud::SecurityCenter::V1p1beta1::Source, ::Hash) — Required. The Source being created, only the display_name and description will be used. All other fields will be ignored.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#delete_notification_config

def delete_notification_config(request, options = nil) -> ::Google::Protobuf::Empty
def delete_notification_config(name: nil) -> ::Google::Protobuf::Empty

Deletes a notification config.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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).
Parameter
  • name (::String) — Required. Name of the notification config to delete. Its format is "organizations/[organization_id]/notificationConfigs/[config_id]".
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#get_iam_policy

def get_iam_policy(request, options = nil) -> ::Google::Iam::V1::Policy
def get_iam_policy(resource: nil, options: nil) -> ::Google::Iam::V1::Policy

Gets the access control policy on the specified Source.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — 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) — OPTIONAL: A GetPolicyOptions object for specifying options to GetIamPolicy.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#get_notification_config

def get_notification_config(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig
def get_notification_config(name: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig

Gets a notification config.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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).
Parameter
  • name (::String) — Required. Name of the notification config to get. Its format is "organizations/[organization_id]/notificationConfigs/[config_id]".
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#get_organization_settings

def get_organization_settings(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings
def get_organization_settings(name: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings

Gets the settings for an organization.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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).
Parameter
  • name (::String) — Required. Name of the organization to get organization settings for. Its format is "organizations/[organization_id]/organizationSettings".
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#get_source

def get_source(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source
def get_source(name: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source

Gets a source.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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).
Parameter
  • name (::String) — Required. Relative resource name of the source. Its format is "organizations/[organization_id]/source/[source_id]".
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#group_assets

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

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

Overloads
def group_assets(request, options = nil) -> ::Gapic::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def group_assets(parent: nil, filter: nil, group_by: nil, compare_duration: nil, read_time: nil, page_token: nil, page_size: nil) -> ::Gapic::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) — Required. Name of the organization to groupBy. Its format is "organizations/[organization_id], folders/[folder_id], or projects/[project_id]".
  • filter (::String) — 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) —

    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) — 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) — 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) — 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) — The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Returns
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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 all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult.
  p response
end

#group_findings

def group_findings(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult>
def group_findings(parent: nil, filter: nil, group_by: nil, read_time: nil, compare_duration: nil, page_token: nil, page_size: nil) -> ::Gapic::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

Overloads
def group_findings(request, options = nil) -> ::Gapic::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def group_findings(parent: nil, filter: nil, group_by: nil, read_time: nil, compare_duration: nil, page_token: nil, page_size: nil) -> ::Gapic::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) — 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) — 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) —

    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) — 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) — 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) — 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) — The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Returns
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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 all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::GroupResult.
  p response
end

#initialize

def initialize() { |config| ... } -> Client

Create a new SecurityCenter client object.

Yields
  • (config) — Configure the SecurityCenter client.
Yield Parameter
Returns
  • (Client) — a new instance of Client
Example
# Create a client using the default configuration
client = ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Client.new

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

#list_assets

def list_assets(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult>
def 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::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult>

Lists an organization's assets.

Overloads
def list_assets(request, options = nil) -> ::Gapic::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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::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) — Required. Name of the organization assets should belong to. Its format is "organizations/[organization_id], folders/[folder_id], or projects/[project_id]".
  • filter (::String) — 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) — 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) — 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) — 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) — 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) — 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) — The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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 all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::ListAssetsResponse::ListAssetsResult.
  p response
end

#list_findings

def list_findings(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsResponse::ListFindingsResult>
def 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::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

Overloads
def list_findings(request, options = nil) -> ::Gapic::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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::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) — 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) — 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) — 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) — 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) — 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) — 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) — 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) — The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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 all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::ListFindingsResponse::ListFindingsResult.
  p response
end

#list_notification_configs

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

Lists notification configs.

Overloads
def list_notification_configs(request, options = nil) -> ::Gapic::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def list_notification_configs(parent: nil, page_token: nil, page_size: nil) -> ::Gapic::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) — Required. Name of the organization to list notification configs. Its format is "organizations/[organization_id]".
  • page_token (::String) — 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) — The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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 all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig.
  p response
end

#list_sources

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

Lists all sources belonging to an organization.

Overloads
def list_sources(request, options = nil) -> ::Gapic::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def list_sources(parent: nil, page_token: nil, page_size: nil) -> ::Gapic::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) — 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) — 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) — The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Returns
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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 all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::SecurityCenter::V1p1beta1::Source.
  p response
end

#operations_client

def operations_client() -> ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityCenter::Operations

Get the associated client for long-running operations.

#run_asset_discovery

def run_asset_discovery(request, options = nil) -> ::Gapic::Operation
def 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.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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).
Parameter
  • parent (::String) — Required. Name of the organization to run asset discovery for. Its format is "organizations/[organization_id]".
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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 this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#set_finding_state

def set_finding_state(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Finding
def set_finding_state(name: nil, state: nil, start_time: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Finding

Updates the state of a finding.

Overloads
def set_finding_state(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Finding
Pass arguments to set_finding_state via a request object, either of type Google::Cloud::SecurityCenter::V1p1beta1::SetFindingStateRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::SecurityCenter::V1p1beta1::SetFindingStateRequest, ::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def set_finding_state(name: nil, state: nil, start_time: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Finding
Pass arguments to set_finding_state 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) — Required. The relative resource name of the finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id}/sources/{source_id}/finding/{finding_id}".
  • state (::Google::Cloud::SecurityCenter::V1p1beta1::Finding::State) — Required. The desired State of the finding.
  • start_time (::Google::Protobuf::Timestamp, ::Hash) — Required. The time at which the updated state takes effect.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#set_iam_policy

def set_iam_policy(request, options = nil) -> ::Google::Iam::V1::Policy
def set_iam_policy(resource: nil, policy: nil, update_mask: nil) -> ::Google::Iam::V1::Policy

Sets the access control policy on the specified Source.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — 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) — 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) — 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
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#test_iam_permissions

def test_iam_permissions(request, options = nil) -> ::Google::Iam::V1::TestIamPermissionsResponse
def test_iam_permissions(resource: nil, permissions: nil) -> ::Google::Iam::V1::TestIamPermissionsResponse

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

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — 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>) — 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
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#update_finding

def update_finding(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Finding
def 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.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — 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) — 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.

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#update_notification_config

def update_notification_config(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig
def 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

Overloads
def update_notification_config(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig
Pass arguments to update_notification_config via a request object, either of type UpdateNotificationConfigRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::SecurityCenter::V1p1beta1::UpdateNotificationConfigRequest, ::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def update_notification_config(notification_config: nil, update_mask: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::NotificationConfig
Pass arguments to update_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
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#update_organization_settings

def update_organization_settings(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings
def update_organization_settings(organization_settings: nil, update_mask: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings

Updates an organization's settings.

Overloads
def update_organization_settings(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings
Pass arguments to update_organization_settings via a request object, either of type UpdateOrganizationSettingsRequest or an equivalent Hash.
Parameters
def update_organization_settings(organization_settings: nil, update_mask: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::OrganizationSettings
Pass arguments to update_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
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#update_security_marks

def update_security_marks(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks
def update_security_marks(security_marks: nil, update_mask: nil, start_time: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::SecurityMarks

Updates security marks.

Overloads
def 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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def 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) — Required. The security marks resource to update.
  • update_mask (::Google::Protobuf::FieldMask, ::Hash) — 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) — 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
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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

#update_source

def update_source(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source
def update_source(source: nil, update_mask: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source

Updates a source.

Overloads
def update_source(request, options = nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source
Pass arguments to update_source via a request object, either of type UpdateSourceRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::SecurityCenter::V1p1beta1::UpdateSourceRequest, ::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) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def update_source(source: nil, update_mask: nil) -> ::Google::Cloud::SecurityCenter::V1p1beta1::Source
Pass arguments to update_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
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

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::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