Bird
Raised Fist0
AWScloud~30 mins

CloudTrail for API auditing in AWS - Mini Project: Build & Apply

Choose your learning style10 modes available
CloudTrail for API auditing
📖 Scenario: You are a cloud administrator for a company that wants to track all API calls made in their AWS account. This helps them audit who did what and when, improving security and compliance.
🎯 Goal: Create an AWS CloudTrail trail that records all API activity in the account and stores the logs in an S3 bucket for auditing purposes.
📋 What You'll Learn
Create an S3 bucket named exactly audit-logs-bucket-12345 to store CloudTrail logs.
Create a CloudTrail trail named exactly APIAuditTrail that logs all management events.
Enable logging for the trail and configure it to deliver logs to the S3 bucket.
Ensure the trail applies to all regions.
💡 Why This Matters
🌍 Real World
CloudTrail is used by companies to track and audit all API calls in their AWS accounts, helping detect unauthorized access and meet compliance requirements.
💼 Career
Cloud administrators and security engineers use CloudTrail to monitor AWS activity and investigate security incidents.
Progress0 / 4 steps
1
Create the S3 bucket for CloudTrail logs
Create an S3 bucket named audit-logs-bucket-12345 to store CloudTrail logs.
AWS
Hint

Use the aws_s3_bucket resource with the exact bucket name and set the ACL to private.

2
Create the CloudTrail trail resource
Create a CloudTrail trail resource named APIAuditTrail with is_multi_region_trail set to true and include_global_service_events set to true.
AWS
Hint

Use the aws_cloudtrail resource with the exact name and link the S3 bucket from step 1.

3
Enable logging for the CloudTrail trail
Add the enable_logging argument to the APIAuditTrail resource to start logging.
AWS
Hint

Set enable_logging to true inside the CloudTrail resource.

4
Add event selector to log management events
Add an event_selector block inside the APIAuditTrail resource to log all management events with read_write_type set to All.
AWS
Hint

Use the event_selector block with read_write_type = "All" and include_management_events = true.

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