Class SecurityCenterClient (2.9.0)

public class SecurityCenterClient implements BackgroundResource

Service Description: V1 Beta APIs for Security Center service.

This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
   Source source = Source.newBuilder().build();
   Source response = securityCenterClient.createSource(parent, source);
 }
 

Note: close() needs to be called on the SecurityCenterClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

The surface of this class includes several types of Java methods for each of the API's methods:

  1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
  2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
  3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

See the individual methods for example code.

Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

This class can be customized by passing in a custom instance of SecurityCenterSettings to create(). For example:

To customize credentials:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 SecurityCenterSettings securityCenterSettings =
     SecurityCenterSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 SecurityCenterClient securityCenterClient = SecurityCenterClient.create(securityCenterSettings);
 

To customize the endpoint:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 SecurityCenterSettings securityCenterSettings =
     SecurityCenterSettings.newBuilder().setEndpoint(myEndpoint).build();
 SecurityCenterClient securityCenterClient = SecurityCenterClient.create(securityCenterSettings);
 

To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 SecurityCenterSettings securityCenterSettings =
     SecurityCenterSettings.newBuilder()
         .setTransportChannelProvider(
             SecurityCenterSettings.defaultHttpJsonTransportProviderBuilder().build())
         .build();
 SecurityCenterClient securityCenterClient = SecurityCenterClient.create(securityCenterSettings);
 

Please refer to the GitHub repository's samples for more quickstart code snippets.

Inheritance

java.lang.Object > SecurityCenterClient

Implements

BackgroundResource

Static Methods

create()

public static final SecurityCenterClient create()

Constructs an instance of SecurityCenterClient with default settings.

Returns
TypeDescription
SecurityCenterClient
Exceptions
TypeDescription
IOException

create(SecurityCenterSettings settings)

public static final SecurityCenterClient create(SecurityCenterSettings settings)

Constructs an instance of SecurityCenterClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.

Parameter
NameDescription
settingsSecurityCenterSettings
Returns
TypeDescription
SecurityCenterClient
Exceptions
TypeDescription
IOException

create(SecurityCenterStub stub)

public static final SecurityCenterClient create(SecurityCenterStub stub)

Constructs an instance of SecurityCenterClient, using the given stub for making calls. This is for advanced usage - prefer using create(SecurityCenterSettings).

Parameter
NameDescription
stubSecurityCenterStub
Returns
TypeDescription
SecurityCenterClient

Constructors

SecurityCenterClient(SecurityCenterSettings settings)

protected SecurityCenterClient(SecurityCenterSettings settings)

Constructs an instance of SecurityCenterClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.

Parameter
NameDescription
settingsSecurityCenterSettings

SecurityCenterClient(SecurityCenterStub stub)

protected SecurityCenterClient(SecurityCenterStub stub)
Parameter
NameDescription
stubSecurityCenterStub

Methods

awaitTermination(long duration, TimeUnit unit)

public boolean awaitTermination(long duration, TimeUnit unit)
Parameters
NameDescription
durationlong
unitTimeUnit
Returns
TypeDescription
boolean
Exceptions
TypeDescription
InterruptedException

close()

public final void close()

createFinding(CreateFindingRequest request)

public final Finding createFinding(CreateFindingRequest request)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   CreateFindingRequest request =
       CreateFindingRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFindingId("findingId439150212")
           .setFinding(Finding.newBuilder().build())
           .build();
   Finding response = securityCenterClient.createFinding(request);
 }
 
Parameter
NameDescription
requestCreateFindingRequest

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

Returns
TypeDescription
Finding

createFinding(SourceName parent, String findingId, Finding finding)

public final Finding createFinding(SourceName parent, String findingId, Finding finding)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   SourceName parent = SourceName.of("[ORGANIZATION]", "[SOURCE]");
   String findingId = "findingId439150212";
   Finding finding = Finding.newBuilder().build();
   Finding response = securityCenterClient.createFinding(parent, findingId, finding);
 }
 
Parameters
NameDescription
parentSourceName

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

findingIdString

Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length.

findingFinding

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

Returns
TypeDescription
Finding

createFinding(String parent, String findingId, Finding finding)

public final Finding createFinding(String parent, String findingId, Finding finding)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String parent = SourceName.of("[ORGANIZATION]", "[SOURCE]").toString();
   String findingId = "findingId439150212";
   Finding finding = Finding.newBuilder().build();
   Finding response = securityCenterClient.createFinding(parent, findingId, finding);
 }
 
Parameters
NameDescription
parentString

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

findingIdString

Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length.

findingFinding

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

Returns
TypeDescription
Finding

createFindingCallable()

public final UnaryCallable<CreateFindingRequest,Finding> createFindingCallable()

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   CreateFindingRequest request =
       CreateFindingRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFindingId("findingId439150212")
           .setFinding(Finding.newBuilder().build())
           .build();
   ApiFuture<Finding> future = securityCenterClient.createFindingCallable().futureCall(request);
   // Do something.
   Finding response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<CreateFindingRequest,Finding>

createSource(CreateSourceRequest request)

public final Source createSource(CreateSourceRequest request)

Creates a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   CreateSourceRequest request =
       CreateSourceRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setSource(Source.newBuilder().build())
           .build();
   Source response = securityCenterClient.createSource(request);
 }
 
Parameter
NameDescription
requestCreateSourceRequest

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

Returns
TypeDescription
Source

createSource(OrganizationName parent, Source source)

public final Source createSource(OrganizationName parent, Source source)

Creates a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
   Source source = Source.newBuilder().build();
   Source response = securityCenterClient.createSource(parent, source);
 }
 
Parameters
NameDescription
parentOrganizationName

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

sourceSource

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

Returns
TypeDescription
Source

createSource(String parent, Source source)

public final Source createSource(String parent, Source source)

Creates a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String parent = OrganizationName.of("[ORGANIZATION]").toString();
   Source source = Source.newBuilder().build();
   Source response = securityCenterClient.createSource(parent, source);
 }
 
Parameters
NameDescription
parentString

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

sourceSource

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

Returns
TypeDescription
Source

createSourceCallable()

public final UnaryCallable<CreateSourceRequest,Source> createSourceCallable()

Creates a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   CreateSourceRequest request =
       CreateSourceRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setSource(Source.newBuilder().build())
           .build();
   ApiFuture<Source> future = securityCenterClient.createSourceCallable().futureCall(request);
   // Do something.
   Source response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<CreateSourceRequest,Source>

getHttpJsonOperationsClient()

public final OperationsClient getHttpJsonOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
TypeDescription
OperationsClient

getIamPolicy(ResourceName resource)

public final Policy getIamPolicy(ResourceName resource)

Gets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ResourceName resource = SourceName.of("[ORGANIZATION]", "[SOURCE]");
   Policy response = securityCenterClient.getIamPolicy(resource);
 }
 
Parameter
NameDescription
resourcecom.google.api.resourcenames.ResourceName

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

Returns
TypeDescription
com.google.iam.v1.Policy

getIamPolicy(GetIamPolicyRequest request)

public final Policy getIamPolicy(GetIamPolicyRequest request)

Gets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GetIamPolicyRequest request =
       GetIamPolicyRequest.newBuilder()
           .setResource(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setOptions(GetPolicyOptions.newBuilder().build())
           .build();
   Policy response = securityCenterClient.getIamPolicy(request);
 }
 
Parameter
NameDescription
requestcom.google.iam.v1.GetIamPolicyRequest

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

Returns
TypeDescription
com.google.iam.v1.Policy

getIamPolicy(String resource)

public final Policy getIamPolicy(String resource)

Gets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String resource = OrganizationName.of("[ORGANIZATION]").toString();
   Policy response = securityCenterClient.getIamPolicy(resource);
 }
 
Parameter
NameDescription
resourceString

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

Returns
TypeDescription
com.google.iam.v1.Policy

getIamPolicyCallable()

public final UnaryCallable<GetIamPolicyRequest,Policy> getIamPolicyCallable()

Gets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GetIamPolicyRequest request =
       GetIamPolicyRequest.newBuilder()
           .setResource(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setOptions(GetPolicyOptions.newBuilder().build())
           .build();
   ApiFuture<Policy> future = securityCenterClient.getIamPolicyCallable().futureCall(request);
   // Do something.
   Policy response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.iam.v1.GetIamPolicyRequest,com.google.iam.v1.Policy>

getOperationsClient()

public final OperationsClient getOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
TypeDescription
OperationsClient

getOrganizationSettings(GetOrganizationSettingsRequest request)

public final OrganizationSettings getOrganizationSettings(GetOrganizationSettingsRequest request)

Gets the settings for an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GetOrganizationSettingsRequest request =
       GetOrganizationSettingsRequest.newBuilder()
           .setName(OrganizationSettingsName.of("[ORGANIZATION]").toString())
           .build();
   OrganizationSettings response = securityCenterClient.getOrganizationSettings(request);
 }
 
Parameter
NameDescription
requestGetOrganizationSettingsRequest

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

Returns
TypeDescription
OrganizationSettings

getOrganizationSettings(OrganizationSettingsName name)

public final OrganizationSettings getOrganizationSettings(OrganizationSettingsName name)

Gets the settings for an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   OrganizationSettingsName name = OrganizationSettingsName.of("[ORGANIZATION]");
   OrganizationSettings response = securityCenterClient.getOrganizationSettings(name);
 }
 
Parameter
NameDescription
nameOrganizationSettingsName

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

Returns
TypeDescription
OrganizationSettings

getOrganizationSettings(String name)

public final OrganizationSettings getOrganizationSettings(String name)

Gets the settings for an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String name = OrganizationSettingsName.of("[ORGANIZATION]").toString();
   OrganizationSettings response = securityCenterClient.getOrganizationSettings(name);
 }
 
Parameter
NameDescription
nameString

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

Returns
TypeDescription
OrganizationSettings

getOrganizationSettingsCallable()

public final UnaryCallable<GetOrganizationSettingsRequest,OrganizationSettings> getOrganizationSettingsCallable()

Gets the settings for an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GetOrganizationSettingsRequest request =
       GetOrganizationSettingsRequest.newBuilder()
           .setName(OrganizationSettingsName.of("[ORGANIZATION]").toString())
           .build();
   ApiFuture<OrganizationSettings> future =
       securityCenterClient.getOrganizationSettingsCallable().futureCall(request);
   // Do something.
   OrganizationSettings response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GetOrganizationSettingsRequest,OrganizationSettings>

getSettings()

public final SecurityCenterSettings getSettings()
Returns
TypeDescription
SecurityCenterSettings

getSource(GetSourceRequest request)

public final Source getSource(GetSourceRequest request)

Gets a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GetSourceRequest request =
       GetSourceRequest.newBuilder()
           .setName(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .build();
   Source response = securityCenterClient.getSource(request);
 }
 
Parameter
NameDescription
requestGetSourceRequest

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

Returns
TypeDescription
Source

getSource(SourceName name)

public final Source getSource(SourceName name)

Gets a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   SourceName name = SourceName.of("[ORGANIZATION]", "[SOURCE]");
   Source response = securityCenterClient.getSource(name);
 }
 
Parameter
NameDescription
nameSourceName

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

Returns
TypeDescription
Source

getSource(String name)

public final Source getSource(String name)

Gets a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String name = SourceName.of("[ORGANIZATION]", "[SOURCE]").toString();
   Source response = securityCenterClient.getSource(name);
 }
 
Parameter
NameDescription
nameString

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

Returns
TypeDescription
Source

getSourceCallable()

public final UnaryCallable<GetSourceRequest,Source> getSourceCallable()

Gets a source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GetSourceRequest request =
       GetSourceRequest.newBuilder()
           .setName(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .build();
   ApiFuture<Source> future = securityCenterClient.getSourceCallable().futureCall(request);
   // Do something.
   Source response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GetSourceRequest,Source>

getStub()

public SecurityCenterStub getStub()
Returns
TypeDescription
SecurityCenterStub

groupAssets(GroupAssetsRequest request)

public final SecurityCenterClient.GroupAssetsPagedResponse groupAssets(GroupAssetsRequest request)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GroupAssetsRequest request =
       GroupAssetsRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setFilter("filter-1274492040")
           .setGroupBy("groupBy293428022")
           .setCompareDuration(Duration.newBuilder().build())
           .setReadTime(Timestamp.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   for (GroupResult element : securityCenterClient.groupAssets(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestGroupAssetsRequest

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

Returns
TypeDescription
SecurityCenterClient.GroupAssetsPagedResponse

groupAssetsCallable()

public final UnaryCallable<GroupAssetsRequest,GroupAssetsResponse> groupAssetsCallable()

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GroupAssetsRequest request =
       GroupAssetsRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setFilter("filter-1274492040")
           .setGroupBy("groupBy293428022")
           .setCompareDuration(Duration.newBuilder().build())
           .setReadTime(Timestamp.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   while (true) {
     GroupAssetsResponse response = securityCenterClient.groupAssetsCallable().call(request);
     for (GroupResult element : response.getGroupByResultsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<GroupAssetsRequest,GroupAssetsResponse>

groupAssetsPagedCallable()

public final UnaryCallable<GroupAssetsRequest,SecurityCenterClient.GroupAssetsPagedResponse> groupAssetsPagedCallable()

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GroupAssetsRequest request =
       GroupAssetsRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setFilter("filter-1274492040")
           .setGroupBy("groupBy293428022")
           .setCompareDuration(Duration.newBuilder().build())
           .setReadTime(Timestamp.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   ApiFuture<GroupResult> future =
       securityCenterClient.groupAssetsPagedCallable().futureCall(request);
   // Do something.
   for (GroupResult element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<GroupAssetsRequest,GroupAssetsPagedResponse>

groupFindings(GroupFindingsRequest request)

public final SecurityCenterClient.GroupFindingsPagedResponse groupFindings(GroupFindingsRequest request)

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: /v1beta1/organizations/{organization_id}/sources/-/findings

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GroupFindingsRequest request =
       GroupFindingsRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFilter("filter-1274492040")
           .setGroupBy("groupBy293428022")
           .setReadTime(Timestamp.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   for (GroupResult element : securityCenterClient.groupFindings(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestGroupFindingsRequest

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

Returns
TypeDescription
SecurityCenterClient.GroupFindingsPagedResponse

groupFindings(SourceName parent, String groupBy)

public final SecurityCenterClient.GroupFindingsPagedResponse groupFindings(SourceName parent, String groupBy)

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: /v1beta1/organizations/{organization_id}/sources/-/findings

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   SourceName parent = SourceName.of("[ORGANIZATION]", "[SOURCE]");
   String groupBy = "groupBy293428022";
   for (GroupResult element : securityCenterClient.groupFindings(parent, groupBy).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameters
NameDescription
parentSourceName

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

groupByString

Required. Expression that defines what assets fields to use for grouping (including state). 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

Returns
TypeDescription
SecurityCenterClient.GroupFindingsPagedResponse

groupFindings(String parent, String groupBy)

public final SecurityCenterClient.GroupFindingsPagedResponse groupFindings(String parent, String groupBy)

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: /v1beta1/organizations/{organization_id}/sources/-/findings

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String parent = SourceName.of("[ORGANIZATION]", "[SOURCE]").toString();
   String groupBy = "groupBy293428022";
   for (GroupResult element : securityCenterClient.groupFindings(parent, groupBy).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameters
NameDescription
parentString

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

groupByString

Required. Expression that defines what assets fields to use for grouping (including state). 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

Returns
TypeDescription
SecurityCenterClient.GroupFindingsPagedResponse

groupFindingsCallable()

public final UnaryCallable<GroupFindingsRequest,GroupFindingsResponse> groupFindingsCallable()

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: /v1beta1/organizations/{organization_id}/sources/-/findings

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GroupFindingsRequest request =
       GroupFindingsRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFilter("filter-1274492040")
           .setGroupBy("groupBy293428022")
           .setReadTime(Timestamp.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   while (true) {
     GroupFindingsResponse response = securityCenterClient.groupFindingsCallable().call(request);
     for (GroupResult element : response.getGroupByResultsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<GroupFindingsRequest,GroupFindingsResponse>

groupFindingsPagedCallable()

public final UnaryCallable<GroupFindingsRequest,SecurityCenterClient.GroupFindingsPagedResponse> groupFindingsPagedCallable()

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: /v1beta1/organizations/{organization_id}/sources/-/findings

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   GroupFindingsRequest request =
       GroupFindingsRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFilter("filter-1274492040")
           .setGroupBy("groupBy293428022")
           .setReadTime(Timestamp.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   ApiFuture<GroupResult> future =
       securityCenterClient.groupFindingsPagedCallable().futureCall(request);
   // Do something.
   for (GroupResult element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<GroupFindingsRequest,GroupFindingsPagedResponse>

isShutdown()

public boolean isShutdown()
Returns
TypeDescription
boolean

isTerminated()

public boolean isTerminated()
Returns
TypeDescription
boolean

listAssets(ListAssetsRequest request)

public final SecurityCenterClient.ListAssetsPagedResponse listAssets(ListAssetsRequest request)

Lists an organization's assets.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListAssetsRequest request =
       ListAssetsRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .setReadTime(Timestamp.newBuilder().build())
           .setCompareDuration(Duration.newBuilder().build())
           .setFieldMask(FieldMask.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   for (ListAssetsResponse.ListAssetsResult element :
       securityCenterClient.listAssets(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestListAssetsRequest

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

Returns
TypeDescription
SecurityCenterClient.ListAssetsPagedResponse

listAssetsCallable()

public final UnaryCallable<ListAssetsRequest,ListAssetsResponse> listAssetsCallable()

Lists an organization's assets.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListAssetsRequest request =
       ListAssetsRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .setReadTime(Timestamp.newBuilder().build())
           .setCompareDuration(Duration.newBuilder().build())
           .setFieldMask(FieldMask.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   while (true) {
     ListAssetsResponse response = securityCenterClient.listAssetsCallable().call(request);
     for (ListAssetsResponse.ListAssetsResult element : response.getListAssetsResultsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListAssetsRequest,ListAssetsResponse>

listAssetsPagedCallable()

public final UnaryCallable<ListAssetsRequest,SecurityCenterClient.ListAssetsPagedResponse> listAssetsPagedCallable()

Lists an organization's assets.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListAssetsRequest request =
       ListAssetsRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .setReadTime(Timestamp.newBuilder().build())
           .setCompareDuration(Duration.newBuilder().build())
           .setFieldMask(FieldMask.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   ApiFuture<ListAssetsResponse.ListAssetsResult> future =
       securityCenterClient.listAssetsPagedCallable().futureCall(request);
   // Do something.
   for (ListAssetsResponse.ListAssetsResult element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListAssetsRequest,ListAssetsPagedResponse>

listFindings(ListFindingsRequest request)

public final SecurityCenterClient.ListFindingsPagedResponse listFindings(ListFindingsRequest request)

Lists an organization or source's findings.

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListFindingsRequest request =
       ListFindingsRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .setReadTime(Timestamp.newBuilder().build())
           .setFieldMask(FieldMask.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   for (Finding element : securityCenterClient.listFindings(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestListFindingsRequest

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

Returns
TypeDescription
SecurityCenterClient.ListFindingsPagedResponse

listFindingsCallable()

public final UnaryCallable<ListFindingsRequest,ListFindingsResponse> listFindingsCallable()

Lists an organization or source's findings.

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListFindingsRequest request =
       ListFindingsRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .setReadTime(Timestamp.newBuilder().build())
           .setFieldMask(FieldMask.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   while (true) {
     ListFindingsResponse response = securityCenterClient.listFindingsCallable().call(request);
     for (Finding element : response.getFindingsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListFindingsRequest,ListFindingsResponse>

listFindingsPagedCallable()

public final UnaryCallable<ListFindingsRequest,SecurityCenterClient.ListFindingsPagedResponse> listFindingsPagedCallable()

Lists an organization or source's findings.

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListFindingsRequest request =
       ListFindingsRequest.newBuilder()
           .setParent(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .setReadTime(Timestamp.newBuilder().build())
           .setFieldMask(FieldMask.newBuilder().build())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   ApiFuture<Finding> future =
       securityCenterClient.listFindingsPagedCallable().futureCall(request);
   // Do something.
   for (Finding element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListFindingsRequest,ListFindingsPagedResponse>

listSources(ListSourcesRequest request)

public final SecurityCenterClient.ListSourcesPagedResponse listSources(ListSourcesRequest request)

Lists all sources belonging to an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListSourcesRequest request =
       ListSourcesRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   for (Source element : securityCenterClient.listSources(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestListSourcesRequest

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

Returns
TypeDescription
SecurityCenterClient.ListSourcesPagedResponse

listSources(OrganizationName parent)

public final SecurityCenterClient.ListSourcesPagedResponse listSources(OrganizationName parent)

Lists all sources belonging to an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
   for (Source element : securityCenterClient.listSources(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentOrganizationName

Required. Resource name of the parent of sources to list. Its format should be "organizations/[organization_id]".

Returns
TypeDescription
SecurityCenterClient.ListSourcesPagedResponse

listSources(String parent)

public final SecurityCenterClient.ListSourcesPagedResponse listSources(String parent)

Lists all sources belonging to an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String parent = OrganizationName.of("[ORGANIZATION]").toString();
   for (Source element : securityCenterClient.listSources(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentString

Required. Resource name of the parent of sources to list. Its format should be "organizations/[organization_id]".

Returns
TypeDescription
SecurityCenterClient.ListSourcesPagedResponse

listSourcesCallable()

public final UnaryCallable<ListSourcesRequest,ListSourcesResponse> listSourcesCallable()

Lists all sources belonging to an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListSourcesRequest request =
       ListSourcesRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   while (true) {
     ListSourcesResponse response = securityCenterClient.listSourcesCallable().call(request);
     for (Source element : response.getSourcesList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListSourcesRequest,ListSourcesResponse>

listSourcesPagedCallable()

public final UnaryCallable<ListSourcesRequest,SecurityCenterClient.ListSourcesPagedResponse> listSourcesPagedCallable()

Lists all sources belonging to an organization.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ListSourcesRequest request =
       ListSourcesRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .setPageToken("pageToken873572522")
           .setPageSize(883849137)
           .build();
   ApiFuture<Source> future =
       securityCenterClient.listSourcesPagedCallable().futureCall(request);
   // Do something.
   for (Source element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListSourcesRequest,ListSourcesPagedResponse>

runAssetDiscoveryAsync(OrganizationName parent)

public final OperationFuture<Empty,Empty> runAssetDiscoveryAsync(OrganizationName parent)

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.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
   securityCenterClient.runAssetDiscoveryAsync(parent).get();
 }
 
Parameter
NameDescription
parentOrganizationName

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

Returns
TypeDescription
OperationFuture<Empty,Empty>

runAssetDiscoveryAsync(RunAssetDiscoveryRequest request)

public final OperationFuture<Empty,Empty> runAssetDiscoveryAsync(RunAssetDiscoveryRequest request)

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.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   RunAssetDiscoveryRequest request =
       RunAssetDiscoveryRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .build();
   securityCenterClient.runAssetDiscoveryAsync(request).get();
 }
 
Parameter
NameDescription
requestRunAssetDiscoveryRequest

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

Returns
TypeDescription
OperationFuture<Empty,Empty>

runAssetDiscoveryAsync(String parent)

public final OperationFuture<Empty,Empty> runAssetDiscoveryAsync(String parent)

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.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String parent = OrganizationName.of("[ORGANIZATION]").toString();
   securityCenterClient.runAssetDiscoveryAsync(parent).get();
 }
 
Parameter
NameDescription
parentString

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

Returns
TypeDescription
OperationFuture<Empty,Empty>

runAssetDiscoveryCallable()

public final UnaryCallable<RunAssetDiscoveryRequest,Operation> runAssetDiscoveryCallable()

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.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   RunAssetDiscoveryRequest request =
       RunAssetDiscoveryRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .build();
   ApiFuture<Operation> future =
       securityCenterClient.runAssetDiscoveryCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
UnaryCallable<RunAssetDiscoveryRequest,Operation>

runAssetDiscoveryOperationCallable()

public final OperationCallable<RunAssetDiscoveryRequest,Empty,Empty> runAssetDiscoveryOperationCallable()

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.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   RunAssetDiscoveryRequest request =
       RunAssetDiscoveryRequest.newBuilder()
           .setParent(OrganizationName.of("[ORGANIZATION]").toString())
           .build();
   OperationFuture<Empty, Empty> future =
       securityCenterClient.runAssetDiscoveryOperationCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
OperationCallable<RunAssetDiscoveryRequest,Empty,Empty>

setFindingState(FindingName name, Finding.State state, Timestamp startTime)

public final Finding setFindingState(FindingName name, Finding.State state, Timestamp startTime)

Updates the state of a finding.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   FindingName name = FindingName.of("[ORGANIZATION]", "[SOURCE]", "[FINDING]");
   Finding.State state = Finding.State.forNumber(0);
   Timestamp startTime = Timestamp.newBuilder().build();
   Finding response = securityCenterClient.setFindingState(name, state, startTime);
 }
 
Parameters
NameDescription
nameFindingName

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}".

stateFinding.State

Required. The desired State of the finding.

startTimeTimestamp

Required. The time at which the updated state takes effect.

Returns
TypeDescription
Finding

setFindingState(SetFindingStateRequest request)

public final Finding setFindingState(SetFindingStateRequest request)

Updates the state of a finding.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   SetFindingStateRequest request =
       SetFindingStateRequest.newBuilder()
           .setName(FindingName.of("[ORGANIZATION]", "[SOURCE]", "[FINDING]").toString())
           .setStartTime(Timestamp.newBuilder().build())
           .build();
   Finding response = securityCenterClient.setFindingState(request);
 }
 
Parameter
NameDescription
requestSetFindingStateRequest

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

Returns
TypeDescription
Finding

setFindingState(String name, Finding.State state, Timestamp startTime)

public final Finding setFindingState(String name, Finding.State state, Timestamp startTime)

Updates the state of a finding.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String name = FindingName.of("[ORGANIZATION]", "[SOURCE]", "[FINDING]").toString();
   Finding.State state = Finding.State.forNumber(0);
   Timestamp startTime = Timestamp.newBuilder().build();
   Finding response = securityCenterClient.setFindingState(name, state, startTime);
 }
 
Parameters
NameDescription
nameString

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}".

stateFinding.State

Required. The desired State of the finding.

startTimeTimestamp

Required. The time at which the updated state takes effect.

Returns
TypeDescription
Finding

setFindingStateCallable()

public final UnaryCallable<SetFindingStateRequest,Finding> setFindingStateCallable()

Updates the state of a finding.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   SetFindingStateRequest request =
       SetFindingStateRequest.newBuilder()
           .setName(FindingName.of("[ORGANIZATION]", "[SOURCE]", "[FINDING]").toString())
           .setStartTime(Timestamp.newBuilder().build())
           .build();
   ApiFuture<Finding> future =
       securityCenterClient.setFindingStateCallable().futureCall(request);
   // Do something.
   Finding response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<SetFindingStateRequest,Finding>

setIamPolicy(ResourceName resource, Policy policy)

public final Policy setIamPolicy(ResourceName resource, Policy policy)

Sets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ResourceName resource = SourceName.of("[ORGANIZATION]", "[SOURCE]");
   Policy policy = Policy.newBuilder().build();
   Policy response = securityCenterClient.setIamPolicy(resource, policy);
 }
 
Parameters
NameDescription
resourcecom.google.api.resourcenames.ResourceName

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

policycom.google.iam.v1.Policy

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.

Returns
TypeDescription
com.google.iam.v1.Policy

setIamPolicy(SetIamPolicyRequest request)

public final Policy setIamPolicy(SetIamPolicyRequest request)

Sets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   SetIamPolicyRequest request =
       SetIamPolicyRequest.newBuilder()
           .setResource(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setPolicy(Policy.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Policy response = securityCenterClient.setIamPolicy(request);
 }
 
Parameter
NameDescription
requestcom.google.iam.v1.SetIamPolicyRequest

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

Returns
TypeDescription
com.google.iam.v1.Policy

setIamPolicy(String resource, Policy policy)

public final Policy setIamPolicy(String resource, Policy policy)

Sets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String resource = OrganizationName.of("[ORGANIZATION]").toString();
   Policy policy = Policy.newBuilder().build();
   Policy response = securityCenterClient.setIamPolicy(resource, policy);
 }
 
Parameters
NameDescription
resourceString

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

policycom.google.iam.v1.Policy

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.

Returns
TypeDescription
com.google.iam.v1.Policy

setIamPolicyCallable()

public final UnaryCallable<SetIamPolicyRequest,Policy> setIamPolicyCallable()

Sets the access control policy on the specified Source.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   SetIamPolicyRequest request =
       SetIamPolicyRequest.newBuilder()
           .setResource(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .setPolicy(Policy.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Policy> future = securityCenterClient.setIamPolicyCallable().futureCall(request);
   // Do something.
   Policy response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.iam.v1.SetIamPolicyRequest,com.google.iam.v1.Policy>

shutdown()

public void shutdown()

shutdownNow()

public void shutdownNow()

testIamPermissions(ResourceName resource, List<String> permissions)

public final TestIamPermissionsResponse testIamPermissions(ResourceName resource, List<String> permissions)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   ResourceName resource = SourceName.of("[ORGANIZATION]", "[SOURCE]");
   List<String> permissions = new ArrayList<>();
   TestIamPermissionsResponse response =
       securityCenterClient.testIamPermissions(resource, permissions);
 }
 
Parameters
NameDescription
resourcecom.google.api.resourcenames.ResourceName

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

permissionsList<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.

Returns
TypeDescription
com.google.iam.v1.TestIamPermissionsResponse

testIamPermissions(TestIamPermissionsRequest request)

public final TestIamPermissionsResponse testIamPermissions(TestIamPermissionsRequest request)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   TestIamPermissionsRequest request =
       TestIamPermissionsRequest.newBuilder()
           .setResource(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .addAllPermissions(new ArrayList<String>())
           .build();
   TestIamPermissionsResponse response = securityCenterClient.testIamPermissions(request);
 }
 
Parameter
NameDescription
requestcom.google.iam.v1.TestIamPermissionsRequest

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

Returns
TypeDescription
com.google.iam.v1.TestIamPermissionsResponse

testIamPermissions(String resource, List<String> permissions)

public final TestIamPermissionsResponse testIamPermissions(String resource, List<String> permissions)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   String resource = OrganizationName.of("[ORGANIZATION]").toString();
   List<String> permissions = new ArrayList<>();
   TestIamPermissionsResponse response =
       securityCenterClient.testIamPermissions(resource, permissions);
 }
 
Parameters
NameDescription
resourceString

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

permissionsList<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.

Returns
TypeDescription
com.google.iam.v1.TestIamPermissionsResponse

testIamPermissionsCallable()

public final UnaryCallable<TestIamPermissionsRequest,TestIamPermissionsResponse> testIamPermissionsCallable()

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   TestIamPermissionsRequest request =
       TestIamPermissionsRequest.newBuilder()
           .setResource(SourceName.of("[ORGANIZATION]", "[SOURCE]").toString())
           .addAllPermissions(new ArrayList<String>())
           .build();
   ApiFuture<TestIamPermissionsResponse> future =
       securityCenterClient.testIamPermissionsCallable().futureCall(request);
   // Do something.
   TestIamPermissionsResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.iam.v1.TestIamPermissionsRequest,com.google.iam.v1.TestIamPermissionsResponse>

updateFinding(Finding finding)

public final Finding updateFinding(Finding finding)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   Finding finding = Finding.newBuilder().build();
   Finding response = securityCenterClient.updateFinding(finding);
 }
 
Parameter
NameDescription
findingFinding

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 alphanumeric and less than or equal to 32 characters and greater than 0 characters in length.

Returns
TypeDescription
Finding

updateFinding(UpdateFindingRequest request)

public final Finding updateFinding(UpdateFindingRequest request)

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   UpdateFindingRequest request =
       UpdateFindingRequest.newBuilder()
           .setFinding(Finding.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Finding response = securityCenterClient.updateFinding(request);
 }
 
Parameter
NameDescription
requestUpdateFindingRequest

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

Returns
TypeDescription
Finding

updateFindingCallable()

public final UnaryCallable<UpdateFindingRequest,Finding> updateFindingCallable()

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

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   UpdateFindingRequest request =
       UpdateFindingRequest.newBuilder()
           .setFinding(Finding.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Finding> future = securityCenterClient.updateFindingCallable().futureCall(request);
   // Do something.
   Finding response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<UpdateFindingRequest,Finding>

updateOrganizationSettings(OrganizationSettings organizationSettings)

public final OrganizationSettings updateOrganizationSettings(OrganizationSettings organizationSettings)

Updates an organization's settings.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   OrganizationSettings organizationSettings = OrganizationSettings.newBuilder().build();
   OrganizationSettings response =
       securityCenterClient.updateOrganizationSettings(organizationSettings);
 }
 
Parameter
NameDescription
organizationSettingsOrganizationSettings

Required. The organization settings resource to update.

Returns
TypeDescription
OrganizationSettings

updateOrganizationSettings(UpdateOrganizationSettingsRequest request)

public final OrganizationSettings updateOrganizationSettings(UpdateOrganizationSettingsRequest request)

Updates an organization's settings.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (SecurityCenterClient securityCenterClient = SecurityCenterClient.create()) {
   UpdateOrganizationSettingsRequest request =
       UpdateOrganizationSettingsRequest.newBuilder()
           .setOrganizationSettings(OrganizationSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   OrganizationSettings response = securityCenterClient.updateOrganizationSettings(request);
 }
 
Parameter
NameDescription
requestUpdateOrganizationSettingsRequest

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

Returns
TypeDescription
OrganizationSettings