Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.

Checklist · Security

AWS Account Security Checklist

Opens with credits

An AWS account security checklist for teams that run real workloads on AWS without a dedicated security team. It covers the root user, human and workload access, multi-account guardrails, CloudTrail and threat detection, S3 and data protection, EC2 and network exposure, and readiness for a leaked key, with an AWS CLI command or console check for each item.

Written by Tauseef Fayyaz8 chapters, 38 checksAbout 22 minReviewed 13 October 2026

What you will learn

8 chapters · about 22 min

  1. 1The root userChecks that the one identity with unlimited power over the account is locked away, protected by MFA and watched.6 checks · 4 min
  2. 2Human accessChecks that people sign in through a central identity, get temporary credentials, use strong MFA and hold only the permissions they use.5 checks · 3 min
  3. Workload and pipeline accessChecks that applications and CI/CD get temporary credentials from roles, scoped to what they do, instead of stored access keys.4 checks · 2 minOpens with credits
  4. Accounts and guardrailsChecks that production is separated from everything else and that organization-wide guardrails stop the most dangerous changes.4 checks · 2 minOpens with credits
  5. Logging and threat detectionChecks that every API call is recorded somewhere it cannot be erased, and that suspicious activity reaches a person.6 checks · 3 minOpens with credits
  6. S3 and data protectionChecks that storage is private by default, encrypted, never exposed to the internet by accident, and backed up somewhere safe.5 checks · 3 minOpens with credits
  7. EC2, metadata and network exposureChecks that instances cannot leak their role credentials, and that nothing administrative is open to the whole internet.5 checks · 3 minOpens with credits
  8. Cost alerts and incident readinessChecks that you hear about abuse quickly, AWS can reach the right people, and the team knows what to do when a key leaks.3 checks · 2 minOpens with credits

About this checklist

This AWS account security checklist covers the settings that decide whether one leaked key or one public bucket becomes a bad week. Most AWS incidents that reach the news are not exotic: an access key committed to a repository, a root user without MFA, an S3 bucket opened "for a minute", or an instance whose metadata endpoint handed out its role credentials through an SSRF bug. Each of these has a specific setting that prevents it, and each can be checked in a few minutes.

The checks follow AWS's own guidance: the IAM security best practices, the root user best practices, the CloudTrail security best practices, the S3 Block Public Access and EC2 instance metadata documentation, and the security pillar of the AWS Well-Architected Framework. The first chapters deal with identity, because AWS recommends temporary credentials for people and workloads, phishing-resistant MFA and least privilege, and because a stolen credential is the most common way in. Later chapters cover logging and detection, data, compute and network exposure, and being ready when something does leak.

Each check has a severity (must, should or nice) and a concrete way to verify it, usually an AWS CLI command you can run with read-only permissions. If you use AWS Organizations, run the account-level checks in every account, not just the management account.

Common questions

What are the first things to secure in a new AWS account?

Add MFA to the root user and make sure it has no access keys, then stop using root. Set up IAM Identity Center for people, turn on a multi-Region CloudTrail trail and GuardDuty, enable S3 Block Public Access at the account level, set IMDSv2 as the default for EC2, and create a budget alert.

Should I use IAM users or IAM Identity Center?

AWS recommends that people use federation with an identity provider and temporary credentials, and it recommends IAM Identity Center for managing that across accounts. Keep IAM users only for specific cases that cannot use roles, such as some third-party tools, and protect them with MFA and key rotation.

What is IMDSv2 and why does it matter?

IMDSv2 is the session-based version of the EC2 instance metadata service. It requires a token obtained with a PUT request before metadata, including role credentials, can be read. That blocks the simple GET requests that SSRF bugs and misconfigured proxies can make. Instances accept both versions unless you require IMDSv2.

Is CloudTrail enabled by default?

CloudTrail Event history shows 90 days of management events without any setup, but AWS says it is not a permanent record and does not include every event type. For a lasting record, create a multi-Region trail, or an organization trail if you use AWS Organizations, that delivers logs to S3.

Are S3 buckets public by default?

No. New buckets, access points and objects do not allow public access by default. A bucket policy, access point policy or ACL can still grant it, which is why AWS recommends turning on all four Block Public Access settings at the account level as an override.

What should I do if my AWS access key is leaked?

Deactivate the key immediately, then check CloudTrail for what it did, including any new users, keys, roles or instances it created, and remove those. Replace the key with a role or temporary credentials where possible, and review your bill for unexpected resources.

Sources (8)

Checked against these, last on 13 October 2026.

  1. Security best practices in IAM, AWSdocs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html
  2. Root user best practices for your AWS account, AWSdocs.aws.amazon.com/IAM/latest/UserGuide/root-user-best-practices.html
  3. Security best practices in AWS CloudTrail, AWSdocs.aws.amazon.com/awscloudtrail/latest/userguide/best-practices-security.html
  4. Blocking public access to your Amazon S3 storage, AWSdocs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html
  5. Configure the Instance Metadata Service options, AWSdocs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html
  6. Use the Instance Metadata Service to access instance metadata, AWSdocs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html
  7. Security Pillar, AWS Well-Architected Framework, AWSdocs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html
  8. AWS Security Incident Response Guide, AWSdocs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html

Picked from the other libraries by shared topics.

Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.

  • 1:1 Mentorship
  • Fresh Graduate Mentorship
  • Career Guidance

Brand deals, promos and partnerships: tauseeffayyaz@gmail.com