Google Cloud Security Command Center Settings v1beta1 API - Class SecurityCenterSettingsServiceClientImpl (2.0.0-beta03)

public sealed class SecurityCenterSettingsServiceClientImpl : SecurityCenterSettingsServiceClient

Reference documentation and code samples for the Google Cloud Security Command Center Settings v1beta1 API class SecurityCenterSettingsServiceClientImpl.

SecurityCenterSettingsService client wrapper implementation, for convenient use.

Inheritance

object > SecurityCenterSettingsServiceClient > SecurityCenterSettingsServiceClientImpl

Namespace

Google.Cloud.SecurityCenter.Settings.V1Beta1

Assembly

Google.Cloud.SecurityCenter.Settings.V1Beta1.dll

Remarks

API Overview

The SecurityCenterSettingsService is a sub-api of securitycenter.googleapis.com. The service provides methods to manage Security Center Settings, and Component Settings for GCP organizations, folders, projects, and clusters.

Constructors

SecurityCenterSettingsServiceClientImpl(SecurityCenterSettingsServiceClient, SecurityCenterSettingsServiceSettings, ILogger)

public SecurityCenterSettingsServiceClientImpl(SecurityCenterSettingsService.SecurityCenterSettingsServiceClient grpcClient, SecurityCenterSettingsServiceSettings settings, ILogger logger)

Constructs a client wrapper for the SecurityCenterSettingsService service, with the specified gRPC client and settings.

Parameters
Name Description
grpcClient SecurityCenterSettingsServiceSecurityCenterSettingsServiceClient

The underlying gRPC client.

settings SecurityCenterSettingsServiceSettings

The base SecurityCenterSettingsServiceSettings used within this client.

logger ILogger

Optional ILogger to use within this client.

Properties

GrpcClient

public override SecurityCenterSettingsService.SecurityCenterSettingsServiceClient GrpcClient { get; }

The underlying gRPC SecurityCenterSettingsService client

Property Value
Type Description
SecurityCenterSettingsServiceSecurityCenterSettingsServiceClient
Overrides

Methods

BatchCalculateEffectiveSettings(BatchCalculateEffectiveSettingsRequest, CallSettings)

public override BatchCalculateEffectiveSettingsResponse BatchCalculateEffectiveSettings(BatchCalculateEffectiveSettingsRequest request, CallSettings callSettings = null)

Gets a list of effective settings.

Parameters
Name Description
request BatchCalculateEffectiveSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
BatchCalculateEffectiveSettingsResponse

The RPC response.

Overrides

BatchCalculateEffectiveSettingsAsync(BatchCalculateEffectiveSettingsRequest, CallSettings)

public override Task<BatchCalculateEffectiveSettingsResponse> BatchCalculateEffectiveSettingsAsync(BatchCalculateEffectiveSettingsRequest request, CallSettings callSettings = null)

Gets a list of effective settings.

Parameters
Name Description
request BatchCalculateEffectiveSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskBatchCalculateEffectiveSettingsResponse

A Task containing the RPC response.

Overrides

BatchGetSettings(BatchGetSettingsRequest, CallSettings)

public override BatchGetSettingsResponse BatchGetSettings(BatchGetSettingsRequest request, CallSettings callSettings = null)

Gets a list of settings.

Parameters
Name Description
request BatchGetSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
BatchGetSettingsResponse

The RPC response.

Overrides

BatchGetSettingsAsync(BatchGetSettingsRequest, CallSettings)

public override Task<BatchGetSettingsResponse> BatchGetSettingsAsync(BatchGetSettingsRequest request, CallSettings callSettings = null)

Gets a list of settings.

Parameters
Name Description
request BatchGetSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskBatchGetSettingsResponse

A Task containing the RPC response.

Overrides

CalculateEffectiveComponentSettings(CalculateEffectiveComponentSettingsRequest, CallSettings)

public override ComponentSettings CalculateEffectiveComponentSettings(CalculateEffectiveComponentSettingsRequest request, CallSettings callSettings = null)

Gets the Effective Component Settings.

Parameters
Name Description
request CalculateEffectiveComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
ComponentSettings

The RPC response.

Overrides

CalculateEffectiveComponentSettingsAsync(CalculateEffectiveComponentSettingsRequest, CallSettings)

public override Task<ComponentSettings> CalculateEffectiveComponentSettingsAsync(CalculateEffectiveComponentSettingsRequest request, CallSettings callSettings = null)

Gets the Effective Component Settings.

Parameters
Name Description
request CalculateEffectiveComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskComponentSettings

A Task containing the RPC response.

Overrides

CalculateEffectiveSettings(CalculateEffectiveSettingsRequest, CallSettings)

public override Settings CalculateEffectiveSettings(CalculateEffectiveSettingsRequest request, CallSettings callSettings = null)

CalculateEffectiveSettings looks up all of the Security Center Settings resources in the GCP resource hierarchy, and calculates the effective settings on that resource by applying the following rules:

  • Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings).
  • Product defaults can be overridden at org, folder, project, and cluster levels.
  • Detectors will be filtered out if they belong to a billing tier the customer has not configured.
Parameters
Name Description
request CalculateEffectiveSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Settings

The RPC response.

Overrides

CalculateEffectiveSettingsAsync(CalculateEffectiveSettingsRequest, CallSettings)

public override Task<Settings> CalculateEffectiveSettingsAsync(CalculateEffectiveSettingsRequest request, CallSettings callSettings = null)

CalculateEffectiveSettings looks up all of the Security Center Settings resources in the GCP resource hierarchy, and calculates the effective settings on that resource by applying the following rules:

  • Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings).
  • Product defaults can be overridden at org, folder, project, and cluster levels.
  • Detectors will be filtered out if they belong to a billing tier the customer has not configured.
Parameters
Name Description
request CalculateEffectiveSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskSettings

A Task containing the RPC response.

Overrides

GetComponentSettings(GetComponentSettingsRequest, CallSettings)

public override ComponentSettings GetComponentSettings(GetComponentSettingsRequest request, CallSettings callSettings = null)

Gets the Component Settings.

Parameters
Name Description
request GetComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
ComponentSettings

The RPC response.

Overrides

GetComponentSettingsAsync(GetComponentSettingsRequest, CallSettings)

public override Task<ComponentSettings> GetComponentSettingsAsync(GetComponentSettingsRequest request, CallSettings callSettings = null)

Gets the Component Settings.

Parameters
Name Description
request GetComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskComponentSettings

A Task containing the RPC response.

Overrides

GetServiceAccount(GetServiceAccountRequest, CallSettings)

public override ServiceAccount GetServiceAccount(GetServiceAccountRequest request, CallSettings callSettings = null)

Retrieves the organizations service account, if it exists, otherwise it creates the organization service account. This API is idempotent and will only create a service account once. On subsequent calls it will return the previously created service account. SHA, SCC and CTD Infra Automation will use this SA. This SA will not have any permissions when created. The UI will provision this via IAM or the user will using their own internal process. This API only creates SAs on the organization. Folders are not supported and projects will use per-project SAs associated with APIs enabled on a project. This API will be called by the UX onboarding workflow.

Parameters
Name Description
request GetServiceAccountRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
ServiceAccount

The RPC response.

Overrides

GetServiceAccountAsync(GetServiceAccountRequest, CallSettings)

public override Task<ServiceAccount> GetServiceAccountAsync(GetServiceAccountRequest request, CallSettings callSettings = null)

Retrieves the organizations service account, if it exists, otherwise it creates the organization service account. This API is idempotent and will only create a service account once. On subsequent calls it will return the previously created service account. SHA, SCC and CTD Infra Automation will use this SA. This SA will not have any permissions when created. The UI will provision this via IAM or the user will using their own internal process. This API only creates SAs on the organization. Folders are not supported and projects will use per-project SAs associated with APIs enabled on a project. This API will be called by the UX onboarding workflow.

Parameters
Name Description
request GetServiceAccountRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskServiceAccount

A Task containing the RPC response.

Overrides

GetSettings(GetSettingsRequest, CallSettings)

public override Settings GetSettings(GetSettingsRequest request, CallSettings callSettings = null)

Gets the Settings.

Parameters
Name Description
request GetSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Settings

The RPC response.

Overrides

GetSettingsAsync(GetSettingsRequest, CallSettings)

public override Task<Settings> GetSettingsAsync(GetSettingsRequest request, CallSettings callSettings = null)

Gets the Settings.

Parameters
Name Description
request GetSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskSettings

A Task containing the RPC response.

Overrides

ListComponents(ListComponentsRequest, CallSettings)

public override PagedEnumerable<ListComponentsResponse, string> ListComponents(ListComponentsRequest request, CallSettings callSettings = null)

Retrieves an unordered list of available SCC components.

Parameters
Name Description
request ListComponentsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListComponentsResponsestring

A pageable sequence of string resources.

Overrides

ListComponentsAsync(ListComponentsRequest, CallSettings)

public override PagedAsyncEnumerable<ListComponentsResponse, string> ListComponentsAsync(ListComponentsRequest request, CallSettings callSettings = null)

Retrieves an unordered list of available SCC components.

Parameters
Name Description
request ListComponentsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListComponentsResponsestring

A pageable asynchronous sequence of string resources.

Overrides

ListDetectors(ListDetectorsRequest, CallSettings)

public override PagedEnumerable<ListDetectorsResponse, Detector> ListDetectors(ListDetectorsRequest request, CallSettings callSettings = null)

Retrieves an unordered list of available detectors.

Parameters
Name Description
request ListDetectorsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListDetectorsResponseDetector

A pageable sequence of Detector resources.

Overrides

ListDetectorsAsync(ListDetectorsRequest, CallSettings)

public override PagedAsyncEnumerable<ListDetectorsResponse, Detector> ListDetectorsAsync(ListDetectorsRequest request, CallSettings callSettings = null)

Retrieves an unordered list of available detectors.

Parameters
Name Description
request ListDetectorsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListDetectorsResponseDetector

A pageable asynchronous sequence of Detector resources.

Overrides

ResetComponentSettings(ResetComponentSettingsRequest, CallSettings)

public override void ResetComponentSettings(ResetComponentSettingsRequest request, CallSettings callSettings = null)

Reset the organization, folder or project's component settings and return the settings to the default. Settings are present at the organization, folder and project levels. Using Reset for a folder or project will remove the override that was set and result in the organization-level settings being used.

Parameters
Name Description
request ResetComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Overrides

ResetComponentSettingsAsync(ResetComponentSettingsRequest, CallSettings)

public override Task ResetComponentSettingsAsync(ResetComponentSettingsRequest request, CallSettings callSettings = null)

Reset the organization, folder or project's component settings and return the settings to the default. Settings are present at the organization, folder and project levels. Using Reset for a folder or project will remove the override that was set and result in the organization-level settings being used.

Parameters
Name Description
request ResetComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Overrides

ResetSettings(ResetSettingsRequest, CallSettings)

public override void ResetSettings(ResetSettingsRequest request, CallSettings callSettings = null)

Reset the organization, folder or project's settings and return the settings of just that resource to the default.

Settings are present at the organization, folder, project, and cluster levels. Using Reset on a sub-organization level will remove that resource's override and result in the parent's settings being used (eg: if Reset on a cluster, project settings will be used).

Using Reset on organization will remove the override that was set and result in default settings being used.

Parameters
Name Description
request ResetSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Overrides

ResetSettingsAsync(ResetSettingsRequest, CallSettings)

public override Task ResetSettingsAsync(ResetSettingsRequest request, CallSettings callSettings = null)

Reset the organization, folder or project's settings and return the settings of just that resource to the default.

Settings are present at the organization, folder, project, and cluster levels. Using Reset on a sub-organization level will remove that resource's override and result in the parent's settings being used (eg: if Reset on a cluster, project settings will be used).

Using Reset on organization will remove the override that was set and result in default settings being used.

Parameters
Name Description
request ResetSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Overrides

UpdateComponentSettings(UpdateComponentSettingsRequest, CallSettings)

public override ComponentSettings UpdateComponentSettings(UpdateComponentSettingsRequest request, CallSettings callSettings = null)

Updates the Component Settings.

Parameters
Name Description
request UpdateComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
ComponentSettings

The RPC response.

Overrides

UpdateComponentSettingsAsync(UpdateComponentSettingsRequest, CallSettings)

public override Task<ComponentSettings> UpdateComponentSettingsAsync(UpdateComponentSettingsRequest request, CallSettings callSettings = null)

Updates the Component Settings.

Parameters
Name Description
request UpdateComponentSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskComponentSettings

A Task containing the RPC response.

Overrides

UpdateSettings(UpdateSettingsRequest, CallSettings)

public override Settings UpdateSettings(UpdateSettingsRequest request, CallSettings callSettings = null)

Updates the Settings.

Parameters
Name Description
request UpdateSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Settings

The RPC response.

Overrides

UpdateSettingsAsync(UpdateSettingsRequest, CallSettings)

public override Task<Settings> UpdateSettingsAsync(UpdateSettingsRequest request, CallSettings callSettings = null)

Updates the Settings.

Parameters
Name Description
request UpdateSettingsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskSettings

A Task containing the RPC response.

Overrides