Google Cloud Security Command Center V1 Client - Class GroupFindingsRequest (2.0.2)

Reference documentation and code samples for the Google Cloud Security Command Center V1 Client class GroupFindingsRequest.

Request message for grouping by findings.

Generated from protobuf message google.cloud.securitycenter.v1.GroupFindingsRequest

Namespace

Google \ Cloud \ SecurityCenter \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ 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: =, >, <, >=, <= Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: event_time = "2019-06-10T16:07:18-07:00" event_time = 1560208038000 * * severity: =, : * * workflow_state: =, : * * 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 : "" * * resource: * * resource.name: =, : * * resource.parent_name: =, : * * resource.parent_display_name: =, : * * resource.project_name: =, : * * resource.project_display_name: =, : * * resource.type: =, :

↳ 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 when compare_duration is set: * * state_change

↳ read_time Google\Protobuf\Timestamp

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

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 int

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

getParent

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

Returns
Type Description
string

setParent

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

Parameter
Name Description
var string
Returns
Type Description
$this

getFilter

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: =, >, <, >=, <= Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: event_time = "2019-06-10T16:07:18-07:00" event_time = 1560208038000
    • severity: =, :
    • workflow_state: =, :
    • 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 : ""
    • resource:
    • resource.name: =, :
    • resource.parent_name: =, :
    • resource.parent_display_name: =, :
    • resource.project_name: =, :
    • resource.project_display_name: =, :
    • resource.type: =, :
Returns
Type Description
string

setFilter

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: =, >, <, >=, <= Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: event_time = "2019-06-10T16:07:18-07:00" event_time = 1560208038000
    • severity: =, :
    • workflow_state: =, :
    • 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 : ""
    • resource:
    • resource.name: =, :
    • resource.parent_name: =, :
    • resource.parent_display_name: =, :
    • resource.project_name: =, :
    • resource.project_display_name: =, :
    • resource.type: =, :
Parameter
Name Description
var string
Returns
Type Description
$this

getGroupBy

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 when compare_duration is set:

  • state_change
Returns
Type Description
string

setGroupBy

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 when compare_duration is set:

  • state_change
Parameter
Name Description
var string
Returns
Type Description
$this

getReadTime

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.

Returns
Type Description
Google\Protobuf\Timestamp|null

hasReadTime

clearReadTime

setReadTime

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.

Parameter
Name Description
var Google\Protobuf\Timestamp
Returns
Type Description
$this

getCompareDuration

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.
Returns
Type Description
Google\Protobuf\Duration|null

hasCompareDuration

clearCompareDuration

setCompareDuration

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.
Parameter
Name Description
var Google\Protobuf\Duration
Returns
Type Description
$this

getPageToken

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.

Returns
Type Description
string

setPageToken

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.

Parameter
Name Description
var string
Returns
Type Description
$this

getPageSize

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

Returns
Type Description
int

setPageSize

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

Parameter
Name Description
var int
Returns
Type Description
$this

static::build

Parameters
Name Description
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/- Please see SecurityCenterClient::sourceName() for help formatting this field.

groupBy 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 when compare_duration is set:

    • state_change
Returns
Type Description
GroupFindingsRequest