SecurityHub / Client / get_resources_statistics_v2
get_resources_statistics_v2¶
- SecurityHub.Client.get_resources_statistics_v2(**kwargs)¶
Retrieves statistical information about Amazon Web Services resources and their associated security findings. This API is in private preview and subject to change.
See also: AWS API Documentation
Request Syntax
response = client.get_resources_statistics_v2( GroupByRules=[ { 'GroupByField': 'account_id'|'region'|'resource_category'|'resource_type'|'resource_name'|'findings_summary.finding_type', 'Filters': { 'CompositeFilters': [ { 'StringFilters': [ { 'FieldName': 'resource_arn'|'resource_id'|'account_id'|'region'|'resource_category'|'resource_type'|'resource_name'|'findings_summary.finding_type'|'findings_summary.product_name', 'Filter': { 'Value': 'string', 'Comparison': 'EQUALS'|'PREFIX'|'NOT_EQUALS'|'PREFIX_NOT_EQUALS'|'CONTAINS'|'NOT_CONTAINS'|'CONTAINS_WORD' } }, ], 'DateFilters': [ { 'FieldName': 'resource_detail_capture_time_dt'|'resource_creation_time_dt', 'Filter': { 'Start': 'string', 'End': 'string', 'DateRange': { 'Value': 123, 'Unit': 'DAYS' } } }, ], 'NumberFilters': [ { 'FieldName': 'findings_summary.total_findings'|'findings_summary.severities.other'|'findings_summary.severities.fatal'|'findings_summary.severities.critical'|'findings_summary.severities.high'|'findings_summary.severities.medium'|'findings_summary.severities.low'|'findings_summary.severities.informational'|'findings_summary.severities.unknown', 'Filter': { 'Gte': 123.0, 'Lte': 123.0, 'Eq': 123.0, 'Gt': 123.0, 'Lt': 123.0 } }, ], 'MapFilters': [ { 'FieldName': 'tags', 'Filter': { 'Key': 'string', 'Value': 'string', 'Comparison': 'EQUALS'|'NOT_EQUALS'|'CONTAINS'|'NOT_CONTAINS' } }, ], 'Operator': 'AND'|'OR' }, ], 'CompositeOperator': 'AND'|'OR' } }, ], SortOrder='asc'|'desc', MaxStatisticResults=123 )
- Parameters:
GroupByRules (list) –
[REQUIRED]
How resource statistics should be aggregated and organized in the response.
(dict) –
Defines the configuration for organizing and categorizing Amazon Web Services resources based on associated security findings.
GroupByField (string) – [REQUIRED]
Specifies the attribute that resources should be grouped by.
Filters (dict) –
The criteria used to select resources and associated security findings.
CompositeFilters (list) –
A collection of complex filtering conditions that can be applied to Amazon Web Services resources.
(dict) –
Enables the creation of criteria for Amazon Web Services resources in Security Hub.
StringFilters (list) –
Enables filtering based on string field values.
(dict) –
Enables filtering of Amazon Web Services resources based on string field values.
FieldName (string) –
The name of the field.
Filter (dict) –
A string filter for filtering Security Hub findings.
Value (string) –
The string filter value. Filter values are case sensitive. For example, the product name for control-based findings is
Security Hub
. If you providesecurity hub
as the filter value, there’s no match.Comparison (string) –
The condition to apply to a string value when filtering Security Hub findings.
To search for values that have the filter value, use one of the following comparison operators:
To search for values that include the filter value, use
CONTAINS
. For example, the filterTitle CONTAINS CloudFront
matches findings that have aTitle
that includes the string CloudFront.To search for values that exactly match the filter value, use
EQUALS
. For example, the filterAwsAccountId EQUALS 123456789012
only matches findings that have an account ID of123456789012
.To search for values that start with the filter value, use
PREFIX
. For example, the filterResourceRegion PREFIX us
matches findings that have aResourceRegion
that starts withus
. AResourceRegion
that starts with a different value, such asaf
,ap
, orca
, doesn’t match.
CONTAINS
,EQUALS
, andPREFIX
filters on the same field are joined byOR
. A finding matches if it matches any one of those filters. For example, the filtersTitle CONTAINS CloudFront OR Title CONTAINS CloudWatch
match a finding that includes eitherCloudFront
,CloudWatch
, or both strings in the title.To search for values that don’t have the filter value, use one of the following comparison operators:
To search for values that exclude the filter value, use
NOT_CONTAINS
. For example, the filterTitle NOT_CONTAINS CloudFront
matches findings that have aTitle
that excludes the string CloudFront.To search for values other than the filter value, use
NOT_EQUALS
. For example, the filterAwsAccountId NOT_EQUALS 123456789012
only matches findings that have an account ID other than123456789012
.To search for values that don’t start with the filter value, use
PREFIX_NOT_EQUALS
. For example, the filterResourceRegion PREFIX_NOT_EQUALS us
matches findings with aResourceRegion
that starts with a value other thanus
.
NOT_CONTAINS
,NOT_EQUALS
, andPREFIX_NOT_EQUALS
filters on the same field are joined byAND
. A finding matches only if it matches all of those filters. For example, the filtersTitle NOT_CONTAINS CloudFront AND Title NOT_CONTAINS CloudWatch
match a finding that excludes bothCloudFront
andCloudWatch
in the title.You can’t have both a
CONTAINS
filter and aNOT_CONTAINS
filter on the same field. Similarly, you can’t provide both anEQUALS
filter and aNOT_EQUALS
orPREFIX_NOT_EQUALS
filter on the same field. Combining filters in this way returns an error.CONTAINS
filters can only be used with otherCONTAINS
filters.NOT_CONTAINS
filters can only be used with otherNOT_CONTAINS
filters.You can combine
PREFIX
filters withNOT_EQUALS
orPREFIX_NOT_EQUALS
filters for the same field. Security Hub first processes thePREFIX
filters, and then theNOT_EQUALS
orPREFIX_NOT_EQUALS
filters.For example, for the following filters, Security Hub first identifies findings that have resource types that start with either
AwsIam
orAwsEc2
. It then excludes findings that have a resource type ofAwsIamPolicy
and findings that have a resource type ofAwsEc2NetworkInterface
.ResourceType PREFIX AwsIam
ResourceType PREFIX AwsEc2
ResourceType NOT_EQUALS AwsIamPolicy
ResourceType NOT_EQUALS AwsEc2NetworkInterface
CONTAINS
andNOT_CONTAINS
operators can be used only with automation rules V1.CONTAINS_WORD
operator is only supported inGetFindingsV2
,GetFindingStatisticsV2
,GetResourcesV2
, andGetResourceStatisticsV2
APIs. For more information, see Automation rules in the Security Hub User Guide.
DateFilters (list) –
Enables filtering based on date and timestamp field values.
(dict) –
Enables the filtering of Amazon Web Services resources based on date and timestamp attributes.
FieldName (string) –
The name of the field.
Filter (dict) –
A date filter for querying findings.
Start (string) –
A timestamp that provides the start date for the date filter.
For more information about the validation and formatting of timestamp fields in Security Hub, see Timestamps.
End (string) –
A timestamp that provides the end date for the date filter.
For more information about the validation and formatting of timestamp fields in Security Hub, see Timestamps.
DateRange (dict) –
A date range for the date filter.
Value (integer) –
A date range value for the date filter.
Unit (string) –
A date range unit for the date filter.
NumberFilters (list) –
Enables filtering based on numerical field values.
(dict) –
Enables filtering of Amazon Web Services resources based on numerical values.
FieldName (string) –
The name of the field.
Filter (dict) –
A number filter for querying findings.
Gte (float) –
The greater-than-equal condition to be applied to a single field when querying for findings.
Lte (float) –
The less-than-equal condition to be applied to a single field when querying for findings.
Eq (float) –
The equal-to condition to be applied to a single field when querying for findings.
Gt (float) –
The greater-than condition to be applied to a single field when querying for findings.
Lt (float) –
The less-than condition to be applied to a single field when querying for findings.
MapFilters (list) –
Enables filtering based on map-based field values.
(dict) –
Enables filtering of Amazon Web Services resources based on key-value map attributes.
FieldName (string) –
The name of the field.
Filter (dict) –
A map filter for filtering Security Hub findings. Each map filter provides the field to check for, the value to check for, and the comparison operator.
Key (string) –
The key of the map filter. For example, for
ResourceTags
,Key
identifies the name of the tag. ForUserDefinedFields
,Key
is the name of the field.Value (string) –
The value for the key in the map filter. Filter values are case sensitive. For example, one of the values for a tag called
Department
might beSecurity
. If you providesecurity
as the filter value, then there’s no match.Comparison (string) –
The condition to apply to the key value when filtering Security Hub findings with a map filter.
To search for values that have the filter value, use one of the following comparison operators:
To search for values that include the filter value, use
CONTAINS
. For example, for theResourceTags
field, the filterDepartment CONTAINS Security
matches findings that include the valueSecurity
for theDepartment
tag. In the same example, a finding with a value ofSecurity team
for theDepartment
tag is a match.To search for values that exactly match the filter value, use
EQUALS
. For example, for theResourceTags
field, the filterDepartment EQUALS Security
matches findings that have the valueSecurity
for theDepartment
tag.
CONTAINS
andEQUALS
filters on the same field are joined byOR
. A finding matches if it matches any one of those filters. For example, the filtersDepartment CONTAINS Security OR Department CONTAINS Finance
match a finding that includes eitherSecurity
,Finance
, or both values.To search for values that don’t have the filter value, use one of the following comparison operators:
To search for values that exclude the filter value, use
NOT_CONTAINS
. For example, for theResourceTags
field, the filterDepartment NOT_CONTAINS Finance
matches findings that exclude the valueFinance
for theDepartment
tag.To search for values other than the filter value, use
NOT_EQUALS
. For example, for theResourceTags
field, the filterDepartment NOT_EQUALS Finance
matches findings that don’t have the valueFinance
for theDepartment
tag.
NOT_CONTAINS
andNOT_EQUALS
filters on the same field are joined byAND
. A finding matches only if it matches all of those filters. For example, the filtersDepartment NOT_CONTAINS Security AND Department NOT_CONTAINS Finance
match a finding that excludes both theSecurity
andFinance
values.CONTAINS
filters can only be used with otherCONTAINS
filters.NOT_CONTAINS
filters can only be used with otherNOT_CONTAINS
filters.You can’t have both a
CONTAINS
filter and aNOT_CONTAINS
filter on the same field. Similarly, you can’t have both anEQUALS
filter and aNOT_EQUALS
filter on the same field. Combining filters in this way returns an error.CONTAINS
andNOT_CONTAINS
operators can be used only with automation rules. For more information, see Automation rules in the Security Hub User Guide.
Operator (string) –
The logical operator used to combine multiple filter conditions.
CompositeOperator (string) –
The logical operator used to combine multiple filter conditions in the structure.
SortOrder (string) – Sorts aggregated statistics.
MaxStatisticResults (integer) – The maximum number of results to be returned.
- Return type:
dict
- Returns:
Response Syntax
{ 'GroupByResults': [ { 'GroupByField': 'string', 'GroupByValues': [ { 'FieldValue': 'string', 'Count': 123 }, ] }, ] }
Response Structure
(dict) –
GroupByResults (list) –
The aggregated statistics about resources based on the specified grouping rule.
(dict) –
Represents finding statistics grouped by
GroupedByField
.GroupByField (string) –
The attribute by which filtered security findings should be grouped.
GroupByValues (list) –
An array of grouped values and their respective counts for each
GroupByField
.(dict) –
Represents individual aggregated results when grouping security findings for each
GroupByField
.FieldValue (string) –
The value of the field by which findings are grouped.
Count (integer) –
The number of findings for a specific
FieldValue
andGroupByField
.
Exceptions