CDK Constructs for AWS CloudTrail
Project description
AWS CloudTrail Construct Library
---All classes with the
Cfn
prefix in this module (CFN Resources) are always stable and safe to use.
The APIs of higher level constructs in this module are experimental and under active development. They are subject to non-backward compatible changes or removal in any future version. These are not subject to the Semantic Versioning model and breaking changes will be announced in the release notes. This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package.
Add a CloudTrail construct - for ease of setting up CloudTrail logging in your account
Example usage:
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
import aws_cdk.aws_cloudtrail as cloudtrail
trail = cloudtrail.Trail(self, "CloudTrail")
You can instantiate the CloudTrail construct with no arguments - this will by default:
-
Create a new S3 Bucket and associated Policy that allows CloudTrail to write to it
-
Create a CloudTrail with the following configuration:
- Logging Enabled
- Log file validation enabled
- Multi Region set to true
- Global Service Events set to true
- The created S3 bucket
- CloudWatch Logging Disabled
- No SNS configuartion
- No tags
- No fixed name
You can override any of these properties using the CloudTrailProps
configuraiton object.
For example, to log to CloudWatch Logs
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
import aws_cdk.aws_cloudtrail as cloudtrail
trail = cloudtrail.Trail(self, "CloudTrail",
send_to_cloud_watch_logs=True
)
This creates the same setup as above - but also logs events to a created CloudWatch Log stream. By default, the created log group has a retention period of 365 Days, but this is also configurable.
For using CloudTrail event selector to log specific S3 events,
you can use the CloudTrailProps
configuration object.
Example:
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
import aws_cdk.aws_cloudtrail as cloudtrail
trail = cloudtrail.Trail(self, "MyAmazingCloudTrail")
# Adds an event selector to the bucket magic-bucket.
# By default, this includes management events and all operations (Read + Write)
trail.add_s3_event_selector(["arn:aws:s3:::magic-bucket/"])
# Adds an event selector to the bucket foo, with a specific configuration
trail.add_s3_event_selector(["arn:aws:s3:::foo/"],
include_management_events=False,
read_write_type=ReadWriteType.ALL
)
For using CloudTrail event selector to log events about Lambda
functions, you can use addLambdaEventSelector
.
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
import aws_cdk.aws_cloudtrail as cloudtrail
import aws_cdk.aws_lambda as lambda
trail = cloudtrail.Trail(self, "MyAmazingCloudTrail")
lambda_function = lambda.Function(stack, "AnAmazingFunction",
runtime=lambda.Runtime.NODEJS_10_X,
handler="hello.handler",
code=lambda.Code.from_asset("lambda")
)
# Add an event selector to log data events for all functions in the account.
trail.add_lambda_event_selector(["arn:aws:lambda"])
# Add an event selector to log data events for the provided Lambda functions.
trail.add_lambda_event_selector([lambda_function.function_arn])
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for aws-cdk.aws-cloudtrail-1.36.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fdc002b7ef6bbcccef211f68686f577c08159a80918f3e8a2e05edb3136d6c4e |
|
MD5 | 92935c5196bfb958460334876ef5340c |
|
BLAKE2b-256 | 37d418e611000e9fd6ddd53b3a72b5400dff1942a2469d0ae8e3c5e83e6670d8 |
Hashes for aws_cdk.aws_cloudtrail-1.36.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15d6851165d3422420e45f3c42d93dc624f554decaab0aa24288ced232bd0b48 |
|
MD5 | 80e2ec7b401effe7e32e9b72dcbb0ab1 |
|
BLAKE2b-256 | b0471f833a494da482006e811fc628093126d0c03894dfc290e016fd4d0fe7c5 |