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 hubas 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 CloudFrontmatches findings that have aTitlethat includes the string CloudFront.To search for values that exactly match the filter value, use
EQUALS. For example, the filterAwsAccountId EQUALS 123456789012only 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 usmatches findings that have aResourceRegionthat starts withus. AResourceRegionthat starts with a different value, such asaf,ap, orca, doesn’t match.
CONTAINS,EQUALS, andPREFIXfilters 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 CloudWatchmatch 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 CloudFrontmatches findings that have aTitlethat excludes the string CloudFront.To search for values other than the filter value, use
NOT_EQUALS. For example, the filterAwsAccountId NOT_EQUALS 123456789012only 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 usmatches findings with aResourceRegionthat starts with a value other thanus.
NOT_CONTAINS,NOT_EQUALS, andPREFIX_NOT_EQUALSfilters 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 CloudWatchmatch a finding that excludes bothCloudFrontandCloudWatchin the title.You can’t have both a
CONTAINSfilter and aNOT_CONTAINSfilter on the same field. Similarly, you can’t provide both anEQUALSfilter and aNOT_EQUALSorPREFIX_NOT_EQUALSfilter on the same field. Combining filters in this way returns an error.CONTAINSfilters can only be used with otherCONTAINSfilters.NOT_CONTAINSfilters can only be used with otherNOT_CONTAINSfilters.You can combine
PREFIXfilters withNOT_EQUALSorPREFIX_NOT_EQUALSfilters for the same field. Security Hub first processes thePREFIXfilters, and then theNOT_EQUALSorPREFIX_NOT_EQUALSfilters.For example, for the following filters, Security Hub first identifies findings that have resource types that start with either
AwsIamorAwsEc2. It then excludes findings that have a resource type ofAwsIamPolicyand findings that have a resource type ofAwsEc2NetworkInterface.ResourceType PREFIX AwsIamResourceType PREFIX AwsEc2ResourceType NOT_EQUALS AwsIamPolicyResourceType NOT_EQUALS AwsEc2NetworkInterface
CONTAINSandNOT_CONTAINSoperators can be used only with automation rules V1.CONTAINS_WORDoperator is only supported inGetFindingsV2,GetFindingStatisticsV2,GetResourcesV2, andGetResourceStatisticsV2APIs. 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,Keyidentifies the name of the tag. ForUserDefinedFields,Keyis 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
Departmentmight beSecurity. If you providesecurityas 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 theResourceTagsfield, the filterDepartment CONTAINS Securitymatches findings that include the valueSecurityfor theDepartmenttag. In the same example, a finding with a value ofSecurity teamfor theDepartmenttag is a match.To search for values that exactly match the filter value, use
EQUALS. For example, for theResourceTagsfield, the filterDepartment EQUALS Securitymatches findings that have the valueSecurityfor theDepartmenttag.
CONTAINSandEQUALSfilters 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 Financematch 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 theResourceTagsfield, the filterDepartment NOT_CONTAINS Financematches findings that exclude the valueFinancefor theDepartmenttag.To search for values other than the filter value, use
NOT_EQUALS. For example, for theResourceTagsfield, the filterDepartment NOT_EQUALS Financematches findings that don’t have the valueFinancefor theDepartmenttag.
NOT_CONTAINSandNOT_EQUALSfilters 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 Financematch a finding that excludes both theSecurityandFinancevalues.CONTAINSfilters can only be used with otherCONTAINSfilters.NOT_CONTAINSfilters can only be used with otherNOT_CONTAINSfilters.You can’t have both a
CONTAINSfilter and aNOT_CONTAINSfilter on the same field. Similarly, you can’t have both anEQUALSfilter and aNOT_EQUALSfilter on the same field. Combining filters in this way returns an error.CONTAINSandNOT_CONTAINSoperators 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
FieldValueandGroupByField.
Exceptions
SecurityHub.Client.exceptions.InternalServerExceptionSecurityHub.Client.exceptions.AccessDeniedExceptionSecurityHub.Client.exceptions.ThrottlingExceptionSecurityHub.Client.exceptions.ConflictExceptionSecurityHub.Client.exceptions.ValidationExceptionSecurityHub.Client.exceptions.ResourceNotFoundException