Bird
Raised Fist0
AWScloud~10 mins

CloudTrail for API auditing in AWS - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to create a CloudTrail trail that logs API activity.

AWS
resource "aws_cloudtrail" "example" {
  name                          = "example-trail"
  s3_bucket_name                = [1]
  include_global_service_events = true
}
Drag options to blanks, or click blank then click option'
Amy-logs-bucket
Bexample-bucket
Capi-audit-bucket
Dcloudtrail-logs
Attempts:
3 left
💡 Hint
Common Mistakes
Using a bucket name that does not exist or is not configured for CloudTrail logs.
2fill in blank
medium

Complete the code to enable logging of management events in CloudTrail.

AWS
resource "aws_cloudtrail" "example" {
  name                          = "example-trail"
  s3_bucket_name                = "cloudtrail-logs"
  include_global_service_events = true
  [1] {
    read_write_type = "All"
  }
}
Drag options to blanks, or click blank then click option'
Amanagement_event_selector
Bmanagement_events
Cevent_selector
Devent_logging
Attempts:
3 left
💡 Hint
Common Mistakes
Using incorrect block names like management_event_selector which do not exist.
3fill in blank
hard

Fix the error in the CloudTrail resource to properly enable multi-region logging.

AWS
resource "aws_cloudtrail" "example" {
  name                          = "example-trail"
  s3_bucket_name                = "cloudtrail-logs"
  is_multi_region_trail         = [1]
  include_global_service_events = true
}
Drag options to blanks, or click blank then click option'
A"false"
Btrue
C"true"
Dfalse
Attempts:
3 left
💡 Hint
Common Mistakes
Using quoted strings for boolean values causes errors.
4fill in blank
hard

Fill both blanks to configure CloudTrail to log only write management events and exclude read events.

AWS
resource "aws_cloudtrail" "example" {
  name           = "example-trail"
  s3_bucket_name = "cloudtrail-logs"
  event_selector {
    read_write_type = [1]
    include_management_events = [2]
  }
}
Drag options to blanks, or click blank then click option'
A"WriteOnly"
Btrue
Cfalse
D"All"
Attempts:
3 left
💡 Hint
Common Mistakes
Setting include_management_events to false disables management event logging.
5fill in blank
hard

Fill all three blanks to create a CloudTrail trail with encryption enabled and SNS notifications for log file delivery.

AWS
resource "aws_cloudtrail" "example" {
  name                          = "example-trail"
  s3_bucket_name                = "cloudtrail-logs"
  enable_log_file_validation    = [1]
  kms_key_id                   = [2]
  sns_topic_name               = [3]
}
Drag options to blanks, or click blank then click option'
Atrue
B"arn:aws:kms:us-east-1:123456789012:key/abcd-1234-efgh-5678"
C"cloudtrail-notifications"
Dfalse
Attempts:
3 left
💡 Hint
Common Mistakes
Using false for enable_log_file_validation disables validation.
Providing incorrect formats for KMS key or SNS topic.

Practice

(1/5)
1. What is the primary purpose of AWS CloudTrail?
easy
A. To manage user permissions and roles
B. To store website files and images
C. To record API calls for auditing and security
D. To monitor server CPU usage

Solution

  1. Step 1: Understand CloudTrail's role

    CloudTrail is designed to record all API calls made in an AWS account for auditing and security purposes.
  2. Step 2: Compare other options

    The other options describe other AWS services or functions unrelated to CloudTrail's main purpose.
  3. Final Answer:

    To record API calls for auditing and security -> Option C
  4. Quick Check:

    CloudTrail = API call recording [OK]
Hint: CloudTrail tracks API calls, not files or CPU [OK]
Common Mistakes:
  • Confusing CloudTrail with S3 storage
  • Thinking CloudTrail manages permissions
  • Assuming CloudTrail monitors server health
2. Which AWS service is used to store CloudTrail logs?
easy
A. Amazon S3
B. Amazon EC2
C. Amazon RDS
D. AWS Lambda

Solution

  1. Step 1: Identify CloudTrail log storage

    CloudTrail stores its logs in an Amazon S3 bucket that you specify during setup.
  2. Step 2: Eliminate other services

    Amazon EC2 is for virtual servers, RDS is for databases, and Lambda runs code; none store CloudTrail logs.
  3. Final Answer:

    Amazon S3 -> Option A
  4. Quick Check:

    CloudTrail logs go to S3 buckets [OK]
Hint: CloudTrail logs always go to S3 buckets [OK]
Common Mistakes:
  • Choosing EC2 as storage
  • Confusing Lambda with log storage
  • Selecting RDS for logs
3. Given this CloudTrail event selector configuration:
{"ReadWriteType": "WriteOnly"}

Which API calls will CloudTrail log?
medium
A. Only read API calls
B. Only write API calls
C. Both read and write API calls
D. No API calls

Solution

  1. Step 1: Understand ReadWriteType setting

    The "WriteOnly" setting means CloudTrail logs only API calls that change resources (write operations).
  2. Step 2: Interpret options

    This logs only write API calls. Read-only and both read/write options include read calls, which are excluded. 'No API calls' means no logging, which is incorrect.
  3. Final Answer:

    Only write API calls -> Option B
  4. Quick Check:

    WriteOnly = write calls logged [OK]
Hint: WriteOnly logs only changes, not reads [OK]
Common Mistakes:
  • Confusing WriteOnly with ReadOnly
  • Assuming both read and write are logged
  • Thinking no calls are logged
4. You configured CloudTrail but notice no logs are delivered to your S3 bucket. What is a likely cause?
medium
A. CloudTrail only logs read API calls by default
B. CloudTrail does not support logging API calls
C. CloudTrail logs are stored in EC2 instances by default
D. The S3 bucket policy blocks CloudTrail from writing logs

Solution

  1. Step 1: Check S3 bucket permissions

    If the bucket policy blocks CloudTrail, logs cannot be delivered, causing no logs to appear.
  2. Step 2: Eliminate incorrect causes

    CloudTrail does support logging API calls, logs are not stored on EC2 instances by default, and it logs both read and write API calls by default (not only read).
  3. Final Answer:

    The S3 bucket policy blocks CloudTrail from writing logs -> Option D
  4. Quick Check:

    Bucket policy must allow CloudTrail writes [OK]
Hint: Check S3 bucket policy if logs don't appear [OK]
Common Mistakes:
  • Assuming CloudTrail logs to EC2
  • Thinking CloudTrail doesn't log API calls
  • Believing default logs are read-only
5. You want to audit only management events for your AWS account using CloudTrail. Which configuration should you use?
hard
A. Enable CloudTrail with event selectors set to log only management events
B. Enable CloudTrail with logging only data events on S3 buckets
C. Disable CloudTrail and use CloudWatch logs instead
D. Enable CloudTrail with event selectors set to log only read-only events

Solution

  1. Step 1: Understand management events

    Management events track control plane operations like creating or deleting resources.
  2. Step 2: Select correct event selector

    Setting event selectors to log only management events ensures auditing of these API calls.
  3. Step 3: Eliminate other options

    Enable CloudTrail with logging only data events on S3 buckets logs data events, not management events. Disable CloudTrail and use CloudWatch logs instead disables CloudTrail, losing audit logs. Enable CloudTrail with event selectors set to log only read-only events logs only read-only events, missing write management events.
  4. Final Answer:

    Enable CloudTrail with event selectors set to log only management events -> Option A
  5. Quick Check:

    Management events = control plane API logs [OK]
Hint: Use event selectors to log management events only [OK]
Common Mistakes:
  • Confusing data events with management events
  • Disabling CloudTrail thinking CloudWatch suffices
  • Logging only read-only events misses writes
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard