/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Use event selectors to further specify the management and data event settings
* for your trail. By default, trails created without specific event selectors will
* be configured to log all read and write management events, and no data events.
* When an event occurs in your account, CloudTrail evaluates the event selector
* for all trails. For each trail, if the event matches any event selector, the
* trail processes and logs the event. If the event doesn't match any event
* selector, the trail doesn't log the event. You can configure up to five
* event selectors for a trail. You cannot apply both event selectors and
* advanced event selectors to a trail.See Also:
AWS
* API Reference
Specify if you want your trail to log read-only events, write-only events, or
* all. For example, the EC2 GetConsoleOutput
is a read-only API
* operation and RunInstances
is a write-only API operation.
* By default, the value is All
.
Specify if you want your trail to log read-only events, write-only events, or
* all. For example, the EC2 GetConsoleOutput
is a read-only API
* operation and RunInstances
is a write-only API operation.
* By default, the value is All
.
Specify if you want your trail to log read-only events, write-only events, or
* all. For example, the EC2 GetConsoleOutput
is a read-only API
* operation and RunInstances
is a write-only API operation.
* By default, the value is All
.
Specify if you want your trail to log read-only events, write-only events, or
* all. For example, the EC2 GetConsoleOutput
is a read-only API
* operation and RunInstances
is a write-only API operation.
* By default, the value is All
.
Specify if you want your trail to log read-only events, write-only events, or
* all. For example, the EC2 GetConsoleOutput
is a read-only API
* operation and RunInstances
is a write-only API operation.
* By default, the value is All
.
Specify if you want your trail to log read-only events, write-only events, or
* all. For example, the EC2 GetConsoleOutput
is a read-only API
* operation and RunInstances
is a write-only API operation.
* By default, the value is All
.
Specify if you want your event selector to include management events for your * trail.
For more information, see Management * Events in the CloudTrail User Guide.
By default, the value is
* true
.
The first copy of management events is free. You are * charged for additional copies of management events that you are logging on any * subsequent trail in the same Region. For more information about CloudTrail * pricing, see CloudTrail * Pricing.
*/ inline bool GetIncludeManagementEvents() const{ return m_includeManagementEvents; } /** *Specify if you want your event selector to include management events for your * trail.
For more information, see Management * Events in the CloudTrail User Guide.
By default, the value is
* true
.
The first copy of management events is free. You are * charged for additional copies of management events that you are logging on any * subsequent trail in the same Region. For more information about CloudTrail * pricing, see CloudTrail * Pricing.
*/ inline bool IncludeManagementEventsHasBeenSet() const { return m_includeManagementEventsHasBeenSet; } /** *Specify if you want your event selector to include management events for your * trail.
For more information, see Management * Events in the CloudTrail User Guide.
By default, the value is
* true
.
The first copy of management events is free. You are * charged for additional copies of management events that you are logging on any * subsequent trail in the same Region. For more information about CloudTrail * pricing, see CloudTrail * Pricing.
*/ inline void SetIncludeManagementEvents(bool value) { m_includeManagementEventsHasBeenSet = true; m_includeManagementEvents = value; } /** *Specify if you want your event selector to include management events for your * trail.
For more information, see Management * Events in the CloudTrail User Guide.
By default, the value is
* true
.
The first copy of management events is free. You are * charged for additional copies of management events that you are logging on any * subsequent trail in the same Region. For more information about CloudTrail * pricing, see CloudTrail * Pricing.
*/ inline EventSelector& WithIncludeManagementEvents(bool value) { SetIncludeManagementEvents(value); return *this;} /** *CloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline const Aws::VectorCloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline bool DataResourcesHasBeenSet() const { return m_dataResourcesHasBeenSet; } /** *CloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline void SetDataResources(const Aws::VectorCloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline void SetDataResources(Aws::VectorCloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline EventSelector& WithDataResources(const Aws::VectorCloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline EventSelector& WithDataResources(Aws::VectorCloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline EventSelector& AddDataResources(const DataResource& value) { m_dataResourcesHasBeenSet = true; m_dataResources.push_back(value); return *this; } /** *CloudTrail supports data event logging for Amazon S3 objects, Lambda * functions, and Amazon DynamoDB tables with basic event selectors. You can * specify up to 250 resources for an individual event selector, but the total * number of data resources cannot exceed 250 across all event selectors in a * trail. This limit does not apply if you configure resource logging for all data * events.
For more information, see Data * Events and Limits * in CloudTrail in the CloudTrail User Guide.
*/ inline EventSelector& AddDataResources(DataResource&& value) { m_dataResourcesHasBeenSet = true; m_dataResources.push_back(std::move(value)); return *this; } /** *An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.
An optional list of service event sources from which you do not want
* management events to be logged on your trail. In this release, the list can be
* empty (disables the filter), or it can filter out Key Management Service or
* Amazon RDS Data API events by containing kms.amazonaws.com
or
* rdsdata.amazonaws.com
. By default,
* ExcludeManagementEventSources
is empty, and KMS and Amazon RDS Data
* API events are logged to your trail. You can exclude management event sources
* only in Regions that support the event source.